You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@paimon.apache.org by lz...@apache.org on 2023/03/18 04:42:41 UTC

[incubator-paimon] branch master updated (1638fccc0 -> 340bf0010)

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

lzljs3620320 pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git


    from 1638fccc0 [docs] Move document pages from content/docs to content/ (#627)
     new d7662df2d [core] Rename paimon benchmark
     new a09f73798 [core] Rename paimon test utils
     new 5df46e752 [core] Rename paimon spark
     new 642bc704b [core] Rename paimon hive
     new cf039270e [core] Rename paimon flink
     new e41980ab1 [core] Rename paimon filesystems
     new 91c3c5cc0 [core] Rename paimon format
     new 233865848 [core] Rename paimon e2e and docs
     new 1ac776494 [core] Rename paimon codegen
     new 698cc3538 [core] Rename paimon data, annotation and data
     new b436317cf [core] Rename paimon options, memory and fs
     new f7a58eb15 [core] Rename paimon types, table and utils
     new 04e023b00 [core] Rename paimon datagen in tests
     new 866e8ca48 [core] Rename paimon file
     new c3bc8a7ba [core] Rename paimon CoreOptions
     new f53ec0947 [core] Rename paimon core
     new 202709698 [core] Rename paimon checkstyle
     new 9cb13f509 [core] Rename paimon to move CodeGeneratorImpl
     new 63db4d8ae [core] Rename paimon to move CodeGeneratorContext
     new 34c378a00 [core] Rename paimon to compile works
     new 93fdb6fd9 [core] Rename paimon to change workflows
     new d0d8faddd [core] Rename paimon to test pass
     new 268a4f28f [core] Rename paimon from flink-table-store
     new 309fd5db0 [core] Rename paimon half file packages
     new 427c584ef [core] Rename paimon all file packages
     new 3eb0df56b [core] Rename paimon: table-store to paimon
     new 19ec6f203 [core] Rename paimon: tablestore to paimon
     new 0524726d6 [core] Rename paimon: connector to flink
     new 8856b617e [core] Rename paimon: Table Store to Paimon
     new bd360c62d [core] Rename paimon: TableStore to Paimon 1
     new 7fdfc4539 [core] Rename paimon: TableStore to Paimon 2
     new 340bf0010 [core] Rename paimon: hive meta should be compatible

The 32 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .github/workflows/e2e-tests.yml                    |    6 +-
 .github/workflows/publish_snapshot.yml             |    2 +-
 .github/workflows/utcase-itcase.yml                |    2 +-
 NOTICE                                             |    2 +-
 README.md                                          |   12 +-
 docs/README.md                                     |    6 +-
 docs/content/_index.md                             |   16 +-
 docs/content/concepts/basic-concepts.md            |    4 +-
 docs/content/concepts/external-log-systems.md      |    4 +-
 docs/content/concepts/file-layouts.md              |    8 +-
 docs/content/concepts/overview.md                  |   10 +-
 docs/content/concepts/primary-key-table.md         |   18 +-
 docs/content/engines/flink.md                      |   28 +-
 docs/content/engines/hive.md                       |   48 +-
 docs/content/engines/overview.md                   |    2 +-
 docs/content/engines/spark2.md                     |   26 +-
 docs/content/engines/spark3.md                     |   44 +-
 docs/content/engines/trino.md                      |    4 +-
 docs/content/filesystems/oss.md                    |   34 +-
 docs/content/filesystems/overview.md               |    4 +-
 docs/content/filesystems/s3.md                     |   34 +-
 docs/content/how-to/creating-catalogs.md           |   52 +-
 docs/content/how-to/creating-tables.md             |   22 +-
 docs/content/how-to/lookup-joins.md                |   12 +-
 docs/content/how-to/querying-tables.md             |    4 +-
 docs/content/how-to/writing-tables.md              |   62 +-
 docs/content/maintenance/configurations.md         |    6 +-
 docs/content/maintenance/expiring-snapshots.md     |    4 +-
 docs/content/maintenance/manage-partition.md       |    2 +-
 docs/content/maintenance/rescale-bucket.md         |    2 +-
 docs/content/maintenance/write-performance.md      |   22 +-
 docs/content/versions.md                           |    2 +-
 .../partials/docs/inject/content-before.html       |    4 +-
 .../generated/catalog_configuration.html           |    4 +-
 .../shortcodes/generated/core_configuration.html   |    4 +-
 .../generated/flink_connector_configuration.html   |    2 +-
 .../flink-table-store-cluster-benchmark/README.md  |   66 -
 .../flink-table-store-cluster-benchmark/pom.xml    |  127 --
 .../src/main/assemblies/bin.xml                    |   77 --
 .../flink/table/store/benchmark/Benchmark.java     |  217 ---
 .../table/store/benchmark/BenchmarkOptions.java    |   71 -
 .../apache/flink/table/store/benchmark/Query.java  |  142 --
 .../flink/table/store/benchmark/QueryRunner.java   |  189 ---
 .../apache/flink/table/store/benchmark/Sink.java   |   84 --
 .../store/benchmark/metric/BenchmarkMetric.java    |   75 --
 .../store/benchmark/metric/FlinkRestClient.java    |  307 -----
 .../store/benchmark/metric/JobBenchmarkMetric.java |   83 --
 .../store/benchmark/metric/MetricReporter.java     |  199 ---
 .../store/benchmark/metric/cpu/CpuMetric.java      |  120 --
 .../benchmark/metric/cpu/CpuMetricReceiver.java    |  165 ---
 .../benchmark/metric/cpu/CpuMetricSender.java      |  188 ---
 .../store/benchmark/metric/cpu/CpuTimeTracker.java |  112 --
 .../benchmark/metric/cpu/OperatingSystem.java      |  151 ---
 .../metric/cpu/ProcfsBasedProcessTree.java         | 1009 --------------
 .../benchmark/metric/cpu/ShellCommandExecutor.java |   82 --
 .../store/benchmark/metric/cpu/SysInfoLinux.java   |  664 ---------
 .../store/benchmark/metric/cpu/clock/Clock.java    |   40 -
 .../benchmark/metric/cpu/clock/SystemClock.java    |   57 -
 .../store/benchmark/utils/AutoClosableProcess.java |  240 ----
 .../utils/BenchmarkGlobalConfiguration.java        |  145 --
 .../store/benchmark/utils/BenchmarkUtils.java      |   90 --
 .../src/main/resources/bin/metric_client.sh        |   45 -
 .../src/main/resources/bin/run_benchmark.sh        |   30 -
 .../src/main/resources/sinks/table_store.yaml      |   26 -
 .../flink-table-store-micro-benchmarks/pom.xml     |  179 ---
 .../flink/table/store/benchmark/Benchmark.java     |  237 ----
 .../table/store/benchmark/TableBenchmark.java      |   88 --
 .../store/benchmark/TableWriterBenchmark.java      |  126 --
 flink-table-store-benchmark/pom.xml                |   50 -
 flink-table-store-codegen-loader/pom.xml           |   91 --
 .../flink/table/store/codegen/CodeGenLoader.java   |   43 -
 flink-table-store-codegen/pom.xml                  |  133 --
 .../table/store/codegen/CodeGeneratorImpl.java     |   64 -
 .../apache/flink/table/store/codegen/SortSpec.java |  156 ---
 ....apache.flink.table.store.codegen.CodeGenerator |   16 -
 .../CodeGenException.scala                         |   21 -
 .../CodeGeneratorContext.scala                     |  171 ---
 .../ComparatorCodeGenerator.scala                  |   73 -
 .../ExprCodeGenerator.scala                        |  165 ---
 .../GenerateUtils.scala                            |  758 -----------
 .../GeneratedExpression.scala                      |   45 -
 .../ProjectionCodeGenerator.scala                  |  138 --
 .../SortCodeGenerator.scala                        |  439 ------
 flink-table-store-common/pom.xml                   |  275 ----
 .../src/main/antlr4/JavaLexer.g4                   |  207 ---
 .../src/main/antlr4/JavaParser.g4                  |  635 ---------
 .../flink/table/store/annotation/ConfigGroup.java  |   29 -
 .../flink/table/store/annotation/ConfigGroups.java |   37 -
 .../table/store/annotation/Documentation.java      |   86 --
 .../flink/table/store/annotation/Experimental.java |   43 -
 .../table/store/annotation/VisibleForTesting.java  |   35 -
 .../flink/table/store/catalog/CatalogContext.java  |   90 --
 .../flink/table/store/codegen/CodeGenerator.java   |   51 -
 .../flink/table/store/codegen/CompileUtils.java    |  137 --
 .../flink/table/store/codegen/GeneratedClass.java  |  118 --
 .../table/store/codegen/NormalizedKeyComputer.java |   47 -
 .../flink/table/store/codegen/Projection.java      |   31 -
 .../table/store/codegen/RecordComparator.java      |   34 -
 .../codesplit/AddBoolBeforeReturnRewriter.java     |  183 ---
 .../codegen/codesplit/BlockStatementGrouper.java   |  476 -------
 .../codegen/codesplit/BlockStatementRewriter.java  |  251 ----
 .../codegen/codesplit/BlockStatementSplitter.java  |  276 ----
 .../store/codegen/codesplit/CodeRewriter.java      |   24 -
 .../store/codegen/codesplit/CodeSplitUtil.java     |   51 -
 .../codegen/codesplit/DeclarationRewriter.java     |  269 ----
 .../store/codegen/codesplit/FunctionSplitter.java  |  270 ----
 .../store/codegen/codesplit/JavaCodeSplitter.java  |   57 -
 .../codegen/codesplit/MemberFieldRewriter.java     |  349 -----
 .../codegen/codesplit/ReturnAndJumpCounter.java    |   38 -
 .../codegen/codesplit/ReturnValueRewriter.java     |  194 ---
 .../table/store/data/AbstractBinaryWriter.java     |  297 -----
 .../table/store/data/AbstractPagedInputView.java   |  552 --------
 .../table/store/data/AbstractPagedOutputView.java  |  417 ------
 .../apache/flink/table/store/data/BinaryArray.java |  570 --------
 .../flink/table/store/data/BinaryArrayWriter.java  |  267 ----
 .../apache/flink/table/store/data/BinaryMap.java   |  130 --
 .../apache/flink/table/store/data/BinaryRow.java   |  448 -------
 .../flink/table/store/data/BinaryRowWriter.java    |  125 --
 .../flink/table/store/data/BinarySection.java      |  135 --
 .../flink/table/store/data/BinaryString.java       | 1015 --------------
 .../flink/table/store/data/BinaryWriter.java       |  215 ---
 .../apache/flink/table/store/data/DataGetters.java |   89 --
 .../apache/flink/table/store/data/DataSetters.java |   60 -
 .../org/apache/flink/table/store/data/Decimal.java |  238 ----
 .../flink/table/store/data/GenericArray.java       |  322 -----
 .../apache/flink/table/store/data/GenericMap.java  |  130 --
 .../apache/flink/table/store/data/GenericRow.java  |  277 ----
 .../flink/table/store/data/InternalArray.java      |  156 ---
 .../apache/flink/table/store/data/InternalMap.java |   55 -
 .../apache/flink/table/store/data/InternalRow.java |  239 ----
 .../apache/flink/table/store/data/JoinedRow.java   |  261 ----
 .../flink/table/store/data/LazyGenericRow.java     |  171 ---
 .../apache/flink/table/store/data/NestedRow.java   |  333 -----
 .../table/store/data/RandomAccessInputView.java    |   89 --
 .../table/store/data/RandomAccessOutputView.java   |   51 -
 .../store/data/SimpleCollectingOutputView.java     |   82 --
 .../apache/flink/table/store/data/Timestamp.java   |  231 ----
 .../store/data/columnar/ArrayColumnVector.java     |   26 -
 .../store/data/columnar/BooleanColumnVector.java   |   24 -
 .../store/data/columnar/ByteColumnVector.java      |   24 -
 .../store/data/columnar/BytesColumnVector.java     |   49 -
 .../table/store/data/columnar/ColumnVector.java    |   24 -
 .../table/store/data/columnar/ColumnarArray.java   |  249 ----
 .../table/store/data/columnar/ColumnarMap.java     |   78 --
 .../table/store/data/columnar/ColumnarRow.java     |  224 ----
 .../store/data/columnar/ColumnarRowIterator.java   |   58 -
 .../store/data/columnar/DecimalColumnVector.java   |   26 -
 .../table/store/data/columnar/Dictionary.java      |   36 -
 .../store/data/columnar/DoubleColumnVector.java    |   24 -
 .../store/data/columnar/FloatColumnVector.java     |   24 -
 .../table/store/data/columnar/IntColumnVector.java |   24 -
 .../store/data/columnar/LongColumnVector.java      |   24 -
 .../table/store/data/columnar/MapColumnVector.java |   26 -
 .../table/store/data/columnar/RowColumnVector.java |   24 -
 .../store/data/columnar/ShortColumnVector.java     |   24 -
 .../store/data/columnar/TimestampColumnVector.java |   26 -
 .../store/data/columnar/VectorizedColumnBatch.java |  134 --
 .../data/columnar/heap/AbstractHeapVector.java     |  122 --
 .../store/data/columnar/heap/HeapArrayVector.java  |   87 --
 .../data/columnar/heap/HeapBooleanVector.java      |   61 -
 .../store/data/columnar/heap/HeapByteVector.java   |   60 -
 .../store/data/columnar/heap/HeapBytesVector.java  |  120 --
 .../store/data/columnar/heap/HeapDoubleVector.java |   90 --
 .../store/data/columnar/heap/HeapFloatVector.java  |   89 --
 .../store/data/columnar/heap/HeapIntVector.java    |   96 --
 .../store/data/columnar/heap/HeapLongVector.java   |   84 --
 .../store/data/columnar/heap/HeapMapVector.java    |   75 --
 .../store/data/columnar/heap/HeapRowVector.java    |   55 -
 .../store/data/columnar/heap/HeapShortVector.java  |   60 -
 .../data/columnar/heap/HeapTimestampVector.java    |   60 -
 .../columnar/writable/AbstractWritableVector.java  |   53 -
 .../columnar/writable/WritableBooleanVector.java   |   31 -
 .../data/columnar/writable/WritableByteVector.java |   31 -
 .../columnar/writable/WritableBytesVector.java     |   34 -
 .../columnar/writable/WritableColumnVector.java    |   54 -
 .../columnar/writable/WritableDoubleVector.java    |   41 -
 .../columnar/writable/WritableFloatVector.java     |   41 -
 .../data/columnar/writable/WritableIntVector.java  |   49 -
 .../data/columnar/writable/WritableLongVector.java |   41 -
 .../columnar/writable/WritableShortVector.java     |   31 -
 .../columnar/writable/WritableTimestampVector.java |   32 -
 .../data/serializer/AbstractRowDataSerializer.java |   37 -
 .../store/data/serializer/BinaryRowSerializer.java |  296 -----
 .../store/data/serializer/BinarySerializer.java    |   54 -
 .../data/serializer/BinaryStringSerializer.java    |   61 -
 .../store/data/serializer/BooleanSerializer.java   |   48 -
 .../store/data/serializer/ByteSerializer.java      |   48 -
 .../store/data/serializer/DecimalSerializer.java   |   95 --
 .../store/data/serializer/DoubleSerializer.java    |   48 -
 .../store/data/serializer/FloatSerializer.java     |   48 -
 .../table/store/data/serializer/IntSerializer.java |   48 -
 .../data/serializer/InternalArraySerializer.java   |  182 ---
 .../data/serializer/InternalMapSerializer.java     |  210 ---
 .../data/serializer/InternalRowSerializer.java     |  209 ---
 .../store/data/serializer/InternalSerializers.java |   95 --
 .../store/data/serializer/ListSerializer.java      |  132 --
 .../store/data/serializer/LongSerializer.java      |   48 -
 .../store/data/serializer/NullableSerializer.java  |  150 ---
 .../store/data/serializer/PagedTypeSerializer.java |   80 --
 .../data/serializer/RowCompactedSerializer.java    |  627 ---------
 .../table/store/data/serializer/Serializer.java    |   68 -
 .../store/data/serializer/SerializerSingleton.java |   40 -
 .../store/data/serializer/ShortSerializer.java     |   48 -
 .../store/data/serializer/TimestampSerializer.java |   94 --
 .../store/data/serializer/VersionedSerializer.java |   53 -
 .../flink/table/store/file/predicate/And.java      |   74 --
 .../table/store/file/predicate/CompareUtils.java   |   48 -
 .../store/file/predicate/CompoundPredicate.java    |  104 --
 .../flink/table/store/file/predicate/Equal.java    |   56 -
 .../flink/table/store/file/predicate/FieldRef.java |   76 --
 .../store/file/predicate/FunctionVisitor.java      |   76 --
 .../table/store/file/predicate/GreaterOrEqual.java |   55 -
 .../table/store/file/predicate/GreaterThan.java    |   55 -
 .../flink/table/store/file/predicate/In.java       |   77 --
 .../table/store/file/predicate/IsNotNull.java      |   54 -
 .../flink/table/store/file/predicate/IsNull.java   |   54 -
 .../table/store/file/predicate/LeafFunction.java   |   53 -
 .../table/store/file/predicate/LeafPredicate.java  |  151 ---
 .../store/file/predicate/LeafUnaryFunction.java    |   45 -
 .../table/store/file/predicate/LessOrEqual.java    |   55 -
 .../flink/table/store/file/predicate/LessThan.java |   55 -
 .../flink/table/store/file/predicate/NotEqual.java |   56 -
 .../flink/table/store/file/predicate/NotIn.java    |   77 --
 .../predicate/NullFalseLeafBinaryFunction.java     |   55 -
 .../flink/table/store/file/predicate/Or.java       |   74 --
 .../table/store/file/predicate/Predicate.java      |   55 -
 .../store/file/predicate/PredicateBuilder.java     |  347 -----
 .../store/file/predicate/PredicateFilter.java      |   48 -
 .../file/predicate/PredicateReplaceVisitor.java    |   41 -
 .../store/file/predicate/PredicateVisitor.java     |   27 -
 .../table/store/file/predicate/StartsWith.java     |   63 -
 .../flink/table/store/format/FieldStats.java       |   74 --
 .../table/store/format/FieldStatsCollector.java    |   84 --
 .../flink/table/store/format/FileFormat.java       |  113 --
 .../table/store/format/FileFormatFactory.java      |   29 -
 .../table/store/format/FileStatsExtractor.java     |   30 -
 .../table/store/format/FormatReaderFactory.java    |   33 -
 .../flink/table/store/format/FormatWriter.java     |   63 -
 .../table/store/format/FormatWriterFactory.java    |   43 -
 .../org/apache/flink/table/store/fs/FileIO.java    |  284 ----
 .../apache/flink/table/store/fs/FileIOLoader.java  |   34 -
 .../apache/flink/table/store/fs/FileStatus.java    |   51 -
 .../java/org/apache/flink/table/store/fs/Path.java |  366 -----
 .../apache/flink/table/store/fs/PluginFileIO.java  |  115 --
 .../flink/table/store/fs/PositionOutputStream.java |   98 --
 .../store/fs/PositionOutputStreamWrapper.java      |   61 -
 .../flink/table/store/fs/SeekableInputStream.java  |   67 -
 .../table/store/fs/SeekableInputStreamWrapper.java |   56 -
 .../table/store/fs/UnsupportedSchemeException.java |   53 -
 .../flink/table/store/fs/hadoop/HadoopFileIO.java  |  288 ----
 .../table/store/fs/hadoop/HadoopFileIOLoader.java  |   36 -
 .../flink/table/store/fs/local/LocalFileIO.java    |  341 -----
 .../table/store/fs/local/LocalFileIOLoader.java    |   38 -
 .../store/hadoop/SerializableConfiguration.java    |   54 -
 .../table/store/io/DataInputDeserializer.java      |  414 ------
 .../apache/flink/table/store/io/DataInputView.java |   64 -
 .../flink/table/store/io/DataInputViewStream.java  |   66 -
 .../table/store/io/DataInputViewStreamWrapper.java |   42 -
 .../flink/table/store/io/DataOutputSerializer.java |  376 ------
 .../flink/table/store/io/DataOutputView.java       |   51 -
 .../flink/table/store/io/DataOutputViewStream.java |   41 -
 .../store/io/DataOutputViewStreamWrapper.java      |   60 -
 .../table/store/io/SeekableDataInputView.java      |   33 -
 .../flink/table/store/io/cache/CacheManager.java   |  137 --
 .../store/io/cache/CachedRandomInputView.java      |  108 --
 .../table/store/lookup/LookupStoreFactory.java     |   38 -
 .../table/store/lookup/LookupStoreReader.java      |   29 -
 .../table/store/lookup/LookupStoreWriter.java      |   29 -
 .../store/lookup/hash/HashLookupStoreFactory.java  |   47 -
 .../store/lookup/hash/HashLookupStoreReader.java   |  327 -----
 .../store/lookup/hash/HashLookupStoreWriter.java   |  486 -------
 .../flink/table/store/memory/MemorySegment.java    |  609 ---------
 .../table/store/memory/MemorySegmentSource.java    |   37 -
 .../table/store/memory/MemorySegmentUtils.java     | 1153 ----------------
 .../table/store/memory/MemorySegmentWritable.java  |   36 -
 .../flink/table/store/memory/MemoryUtils.java      |  128 --
 .../flink/table/store/options/CatalogOptions.java  |   79 --
 .../flink/table/store/options/ConfigOption.java    |  299 -----
 .../flink/table/store/options/ConfigOptions.java   |  283 ----
 .../flink/table/store/options/FallbackKey.java     |   78 --
 .../flink/table/store/options/MemorySize.java      |  428 ------
 .../apache/flink/table/store/options/Options.java  |  273 ----
 .../flink/table/store/options/OptionsUtils.java    |  358 -----
 .../store/options/StructuredOptionsSplitter.java   |  211 ---
 .../store/options/description/BlockElement.java    |   22 -
 .../store/options/description/DescribedEnum.java   |   42 -
 .../store/options/description/Description.java     |  120 --
 .../options/description/DescriptionElement.java    |   29 -
 .../table/store/options/description/Formatter.java |  109 --
 .../store/options/description/HtmlFormatter.java   |   72 -
 .../store/options/description/InlineElement.java   |   22 -
 .../options/description/LineBreakElement.java      |   35 -
 .../store/options/description/LinkElement.java     |   64 -
 .../store/options/description/ListElement.java     |   58 -
 .../store/options/description/TextElement.java     |  101 --
 .../table/store/plugin/ComponentClassLoader.java   |  268 ----
 .../flink/table/store/plugin/PluginLoader.java     |  139 --
 .../flink/table/store/reader/RecordReader.java     |  143 --
 .../table/store/reader/RecordReaderIterator.java   |   97 --
 .../apache/flink/table/store/table/TableType.java  |   52 -
 .../apache/flink/table/store/types/ArrayType.java  |  108 --
 .../apache/flink/table/store/types/BigIntType.java |   58 -
 .../apache/flink/table/store/types/BinaryType.java |  102 --
 .../flink/table/store/types/BooleanType.java       |   57 -
 .../apache/flink/table/store/types/CharType.java   |  104 --
 .../apache/flink/table/store/types/DataField.java  |  148 ---
 .../apache/flink/table/store/types/DataType.java   |  179 ---
 .../flink/table/store/types/DataTypeCasts.java     |  333 -----
 .../flink/table/store/types/DataTypeChecks.java    |  272 ----
 .../table/store/types/DataTypeDefaultVisitor.java  |  133 --
 .../flink/table/store/types/DataTypeFamily.java    |   59 -
 .../table/store/types/DataTypeJsonParser.java      |  640 ---------
 .../flink/table/store/types/DataTypeRoot.java      |  120 --
 .../flink/table/store/types/DataTypeVisitor.java   |   72 -
 .../apache/flink/table/store/types/DataTypes.java  |  136 --
 .../apache/flink/table/store/types/DateType.java   |   61 -
 .../flink/table/store/types/DecimalType.java       |  123 --
 .../apache/flink/table/store/types/DoubleType.java |   57 -
 .../apache/flink/table/store/types/FloatType.java  |   58 -
 .../apache/flink/table/store/types/IntType.java    |   57 -
 .../table/store/types/LocalZonedTimestampType.java |  112 --
 .../apache/flink/table/store/types/MapType.java    |  118 --
 .../flink/table/store/types/MultisetType.java      |  112 --
 .../flink/table/store/types/ReassignFieldId.java   |   66 -
 .../apache/flink/table/store/types/RowKind.java    |  121 --
 .../apache/flink/table/store/types/RowType.java    |  255 ----
 .../flink/table/store/types/SmallIntType.java      |   57 -
 .../apache/flink/table/store/types/TimeType.java   |  109 --
 .../flink/table/store/types/TimestampType.java     |  107 --
 .../flink/table/store/types/TinyIntType.java       |   57 -
 .../flink/table/store/types/VarBinaryType.java     |  107 --
 .../flink/table/store/types/VarCharType.java       |  115 --
 .../apache/flink/table/store/utils/ArrayUtils.java |  357 -----
 .../flink/table/store/utils/BinaryRowDataUtil.java |   65 -
 .../flink/table/store/utils/CloseableIterator.java |  195 ---
 .../flink/table/store/utils/DateTimeUtils.java     |  457 -------
 .../flink/table/store/utils/DecimalUtils.java      |  124 --
 .../flink/table/store/utils/EncodingUtils.java     |   39 -
 .../flink/table/store/utils/ExceptionUtils.java    |  576 --------
 .../flink/table/store/utils/FileIOUtils.java       |  345 -----
 .../org/apache/flink/table/store/utils/Filter.java |   37 -
 .../table/store/utils/FunctionWithException.java   |   39 -
 .../flink/table/store/utils/HadoopUtils.java       |  179 ---
 .../apache/flink/table/store/utils/IOFunction.java |   31 -
 .../apache/flink/table/store/utils/IOUtils.java    |  192 ---
 .../flink/table/store/utils/InstantiationUtil.java |  208 ---
 .../table/store/utils/IteratorResultIterator.java  |   46 -
 .../flink/table/store/utils/KeyProjectedRow.java   |  157 ---
 .../flink/table/store/utils/LocalFileUtils.java    |   50 -
 .../flink/table/store/utils/LongCounter.java       |   63 -
 .../apache/flink/table/store/utils/MapBuilder.java |   38 -
 .../apache/flink/table/store/utils/MathUtils.java  |   54 -
 .../flink/table/store/utils/MurmurHashUtils.java   |  189 ---
 .../flink/table/store/utils/OperatingSystem.java   |  151 ---
 .../flink/table/store/utils/OrderedPacking.java    |   53 -
 .../org/apache/flink/table/store/utils/Pair.java   |   98 --
 .../org/apache/flink/table/store/utils/Pool.java   |  106 --
 .../flink/table/store/utils/Preconditions.java     |  307 -----
 .../flink/table/store/utils/ProjectedRow.java      |  232 ----
 .../apache/flink/table/store/utils/Projection.java |  421 ------
 .../table/store/utils/RecyclableIterator.java      |   45 -
 .../apache/flink/table/store/utils/Reference.java  |   61 -
 .../flink/table/store/utils/ReflectionUtils.java   |   50 -
 .../store/utils/RowDataToObjectArrayConverter.java |   58 -
 .../flink/table/store/utils/RowDataUtils.java      |  329 -----
 .../table/store/utils/SerializableFunction.java    |   26 -
 .../apache/flink/table/store/utils/SortUtil.java   |  285 ----
 .../flink/table/store/utils/StringUtils.java       |  525 --------
 .../flink/table/store/utils/ThreadUtils.java       |   32 -
 .../flink/table/store/utils/ThrowingConsumer.java  |   38 -
 .../apache/flink/table/store/utils/TimeUtils.java  |  255 ----
 .../apache/flink/table/store/utils/TypeUtils.java  |  206 ---
 .../flink/table/store/utils/VarLengthIntUtils.java |  128 --
 .../org.apache.flink.table.store.fs.FileIOLoader   |   17 -
 .../AddBooleanBeforeReturnRewriterTest.java        |   74 --
 .../codesplit/BlockStatementGrouperTest.java       |  165 ---
 .../codesplit/BlockStatementRewriterTest.java      |   94 --
 .../codesplit/BlockStatementSplitterTest.java      |   77 --
 .../codegen/codesplit/CodeRewriterTestBase.java    |   83 --
 .../store/codegen/codesplit/CodeSplitTestUtil.java |  124 --
 .../codegen/codesplit/DeclarationRewriterTest.java |   59 -
 .../codegen/codesplit/FunctionSplitterTest.java    |   48 -
 .../codegen/codesplit/JavaCodeSplitterTest.java    |  121 --
 .../store/codegen/codesplit/JavaParserTest.java    |   66 -
 .../codegen/codesplit/MemberFieldRewriterTest.java |   58 -
 .../codegen/codesplit/ReturnValueRewriterTest.java |   48 -
 .../flink/table/store/data/BinaryRowTest.java      |  918 -------------
 .../flink/table/store/data/BinaryStringTest.java   |  506 -------
 .../flink/table/store/data/DataFormatTestUtil.java |  151 ---
 .../apache/flink/table/store/data/DecimalTest.java |  115 --
 .../apache/flink/table/store/data/MapDataUtil.java |   47 -
 .../flink/table/store/data/NestedRowTest.java      |  124 --
 .../apache/flink/table/store/data/RowDataTest.java |  243 ----
 .../flink/table/store/data/TimestampTest.java      |  142 --
 .../data/serializer/BinarySerializerTest.java      |   64 -
 .../serializer/BinaryStringSerializerTest.java     |   47 -
 .../data/serializer/BooleanSerializerTest.java     |   44 -
 .../store/data/serializer/ByteSerializerTest.java  |   43 -
 .../data/serializer/DecimalSerializerTest.java     |   45 -
 .../data/serializer/DoubleSerializerTest.java      |   54 -
 .../store/data/serializer/FloatSerializerTest.java |   54 -
 .../store/data/serializer/IntSerializerTest.java   |   43 -
 .../serializer/InternalArraySerializerTest.java    |  121 --
 .../data/serializer/InternalMapSerializerTest.java |  145 --
 .../data/serializer/InternalRowSerializerTest.java |  322 -----
 .../store/data/serializer/ListSerializerTest.java  |   70 -
 .../store/data/serializer/LongSerializerTest.java  |   43 -
 .../data/serializer/NullableSerializerTest.java    |   58 -
 .../serializer/RowCompactedSerializerTest.java     |  222 ----
 .../store/data/serializer/SerializerTestBase.java  |  376 ------
 .../data/serializer/SerializerTestInstance.java    |   43 -
 .../store/data/serializer/ShortSerializerTest.java |   45 -
 .../data/serializer/TimestampSerializerTest.java   |   75 --
 .../table/store/datagen/DataGenVisitorBase.java    |   83 --
 .../flink/table/store/datagen/DataGenerator.java   |   28 -
 .../store/datagen/DataGeneratorContainer.java      |   51 -
 .../table/store/datagen/DataGeneratorMapper.java   |   49 -
 .../flink/table/store/datagen/RandomGenerator.java |  156 ---
 .../store/datagen/RandomGeneratorVisitor.java      |  387 ------
 .../table/store/datagen/RowDataGenerator.java      |   58 -
 .../store/format/FileStatsExtractorTestBase.java   |  253 ----
 .../table/store/fs/FileIOBehaviorTestBase.java     |  247 ----
 .../apache/flink/table/store/fs/FileIOFinder.java  |   37 -
 .../table/store/fs/HadoopConfigLoadingTest.java    |  331 -----
 .../store/fs/HadoopLocalFileIOBehaviorTest.java    |   65 -
 .../flink/table/store/fs/HdfsBehaviorTest.java     |   87 --
 .../table/store/fs/LocalFileIOBehaviorTest.java    |   39 -
 .../store/io/cache/CachedRandomInputViewTest.java  |  106 --
 .../lookup/hash/HashLookupStoreFactoryTest.java    |  440 ------
 .../table/store/memory/MemorySegmentTestBase.java  | 1069 ---------------
 .../memory/OffHeapDirectMemorySegmentTest.java     |   71 -
 .../store/memory/OnHeapMemorySegmentTest.java      |   97 --
 .../flink/table/store/types/DataTypeAssert.java    |   76 --
 .../table/store/types/DataTypeChecksTest.java      |   65 -
 .../flink/table/store/types/DataTypesTest.java     |  253 ----
 .../flink/table/store/utils/CommonTestUtils.java   |  231 ----
 .../table/store/utils/LocalFileUtilsTest.java      |   80 --
 .../flink/table/store/utils/RowDataUtilsTest.java  |  133 --
 .../flink/table/store/utils/TempDirUtils.java      |  100 --
 flink-table-store-core/pom.xml                     |  165 ---
 .../org/apache/flink/table/store/CoreOptions.java  |  982 --------------
 .../flink/table/store/codegen/CodeGenUtils.java    |   58 -
 .../flink/table/store/file/AbstractFileStore.java  |  153 ---
 .../table/store/file/AppendOnlyFileStore.java      |  100 --
 .../apache/flink/table/store/file/FileStore.java   |   60 -
 .../apache/flink/table/store/file/KeyValue.java    |  225 ----
 .../flink/table/store/file/KeyValueFileStore.java  |  126 --
 .../flink/table/store/file/KeyValueSerializer.java |   88 --
 .../apache/flink/table/store/file/Snapshot.java    |  404 ------
 .../apache/flink/table/store/file/WriteMode.java   |   51 -
 .../file/append/AppendOnlyCompactManager.java      |  303 -----
 .../table/store/file/append/AppendOnlyWriter.java  |  206 ---
 .../table/store/file/casting/CastExecutor.java     |   32 -
 .../table/store/file/casting/CastExecutors.java    |  261 ----
 .../table/store/file/casting/CastFieldGetter.java  |   39 -
 .../flink/table/store/file/casting/CastedRow.java  |  160 ---
 .../table/store/file/catalog/AbstractCatalog.java  |  107 --
 .../flink/table/store/file/catalog/Catalog.java    |  272 ----
 .../table/store/file/catalog/CatalogFactory.java   |  116 --
 .../table/store/file/catalog/CatalogLock.java      |   42 -
 .../table/store/file/catalog/CatalogUtils.java     |   57 -
 .../store/file/catalog/FileSystemCatalog.java      |  219 ---
 .../file/catalog/FileSystemCatalogFactory.java     |   46 -
 .../flink/table/store/file/catalog/Identifier.java |  129 --
 .../store/file/compact/CompactFutureManager.java   |   63 -
 .../table/store/file/compact/CompactManager.java   |   52 -
 .../table/store/file/compact/CompactResult.java    |   70 -
 .../table/store/file/compact/CompactTask.java      |   75 --
 .../table/store/file/compact/CompactUnit.java      |   55 -
 .../store/file/compact/NoopCompactManager.java     |   70 -
 .../file/compression/BlockCompressionFactory.java  |   30 -
 .../store/file/compression/BlockCompressor.java    |   43 -
 .../store/file/compression/BlockDecompressor.java  |   37 -
 .../compression/BufferCompressionException.java    |   42 -
 .../compression/BufferDecompressionException.java  |   42 -
 .../store/file/compression/CompressorUtils.java    |   52 -
 .../compression/Lz4BlockCompressionFactory.java    |   32 -
 .../store/file/compression/Lz4BlockCompressor.java |   59 -
 .../file/compression/Lz4BlockDecompressor.java     |   71 -
 .../store/file/disk/AbstractFileIOChannel.java     |  120 --
 .../store/file/disk/BufferFileChannelReader.java   |   67 -
 .../table/store/file/disk/BufferFileReader.java    |   37 -
 .../store/file/disk/BufferFileReaderImpl.java      |   46 -
 .../table/store/file/disk/BufferFileWriter.java    |   42 -
 .../store/file/disk/BufferFileWriterImpl.java      |   44 -
 .../store/file/disk/ChannelReaderInputView.java    |  102 --
 .../file/disk/ChannelReaderInputViewIterator.java  |   72 -
 .../table/store/file/disk/ChannelWithMeta.java     |   45 -
 .../store/file/disk/ChannelWriterOutputView.java   |   98 --
 .../table/store/file/disk/FileChannelManager.java  |   34 -
 .../store/file/disk/FileChannelManagerImpl.java    |  128 --
 .../table/store/file/disk/FileChannelUtil.java     |   57 -
 .../flink/table/store/file/disk/FileIOChannel.java |  165 ---
 .../flink/table/store/file/disk/IOManager.java     |   50 -
 .../flink/table/store/file/disk/IOManagerImpl.java |  125 --
 .../store/file/io/AbstractFileRecordIterator.java  |   57 -
 .../table/store/file/io/CompactIncrement.java      |   91 --
 .../flink/table/store/file/io/DataFileMeta.java    |  332 -----
 .../store/file/io/DataFileMetaSerializer.java      |   76 --
 .../table/store/file/io/DataFilePathFactory.java   |   85 --
 .../flink/table/store/file/io/FileWriter.java      |  120 --
 .../file/io/KeyValueDataFileRecordReader.java      |  104 --
 .../store/file/io/KeyValueDataFileWriter.java      |  162 ---
 .../store/file/io/KeyValueFileReaderFactory.java   |  200 ---
 .../store/file/io/KeyValueFileWriterFactory.java   |  176 ---
 .../table/store/file/io/NewFilesIncrement.java     |   81 --
 .../table/store/file/io/RollingFileWriter.java     |  162 ---
 .../store/file/io/RowDataFileRecordReader.java     |   90 --
 .../table/store/file/io/RowDataFileWriter.java     |   79 --
 .../store/file/io/RowDataRollingFileWriter.java    |   51 -
 .../table/store/file/io/SingleFileWriter.java      |  157 ---
 .../file/io/StatsCollectingSingleFileWriter.java   |   79 --
 .../flink/table/store/file/manifest/FileKind.java  |   48 -
 .../store/file/manifest/ManifestCommittable.java   |  121 --
 .../manifest/ManifestCommittableSerializer.java    |  106 --
 .../table/store/file/manifest/ManifestEntry.java   |  210 ---
 .../file/manifest/ManifestEntrySerializer.java     |   75 --
 .../table/store/file/manifest/ManifestFile.java    |  198 ---
 .../store/file/manifest/ManifestFileMeta.java      |  188 ---
 .../file/manifest/ManifestFileMetaSerializer.java  |   71 -
 .../table/store/file/manifest/ManifestList.java    |  135 --
 .../flink/table/store/file/memory/Buffer.java      |   70 -
 .../store/file/memory/HeapMemorySegmentPool.java   |   68 -
 .../flink/table/store/file/memory/MemoryOwner.java |   32 -
 .../table/store/file/memory/MemoryPoolFactory.java |  109 --
 .../table/store/file/memory/MemorySegmentPool.java |   58 -
 .../table/store/file/mergetree/DataFileReader.java |   68 -
 .../store/file/mergetree/DropDeleteReader.java     |   77 --
 .../table/store/file/mergetree/LevelSortedRun.java |   64 -
 .../flink/table/store/file/mergetree/Levels.java   |  196 ---
 .../table/store/file/mergetree/LookupLevels.java   |  266 ----
 .../store/file/mergetree/MergeTreeReaders.java     |   94 --
 .../store/file/mergetree/MergeTreeWriter.java      |  319 -----
 .../file/mergetree/SortBufferWriteBuffer.java      |  296 -----
 .../table/store/file/mergetree/SortedRun.java      |  112 --
 .../table/store/file/mergetree/WriteBuffer.java    |   76 --
 .../mergetree/compact/AbstractCompactRewriter.java |   48 -
 .../compact/ChangelogMergeTreeRewriter.java        |  128 --
 .../file/mergetree/compact/ChangelogResult.java    |   68 -
 .../file/mergetree/compact/CompactRewriter.java    |   35 -
 .../file/mergetree/compact/CompactStrategy.java    |   51 -
 .../file/mergetree/compact/ConcatRecordReader.java |   84 --
 .../compact/DeduplicateMergeFunction.java          |   64 -
 .../mergetree/compact/ForceUpLevel0Compaction.java |   57 -
 .../compact/FullChangelogMergeFunctionWrapper.java |  130 --
 .../FullChangelogMergeTreeCompactRewriter.java     |   72 -
 .../file/mergetree/compact/IntervalPartition.java  |  126 --
 .../LookupChangelogMergeFunctionWrapper.java       |  142 --
 .../file/mergetree/compact/LookupCompaction.java   |   59 -
 .../mergetree/compact/LookupMergeFunction.java     |   99 --
 .../compact/LookupMergeTreeCompactRewriter.java    |   93 --
 .../file/mergetree/compact/MergeFunction.java      |   41 -
 .../mergetree/compact/MergeFunctionFactory.java    |   34 -
 .../mergetree/compact/MergeFunctionWrapper.java    |   38 -
 .../mergetree/compact/MergeTreeCompactManager.java |  199 ---
 .../compact/MergeTreeCompactRewriter.java          |   72 -
 .../mergetree/compact/MergeTreeCompactTask.java    |  133 --
 .../compact/PartialUpdateMergeFunction.java        |  127 --
 .../compact/ReducerMergeFunctionWrapper.java       |   74 --
 .../file/mergetree/compact/SortMergeReader.java    |  205 ---
 .../mergetree/compact/UniversalCompaction.java     |  183 ---
 .../mergetree/compact/ValueCountMergeFunction.java |   89 --
 .../compact/aggregate/AggregateMergeFunction.java  |  160 ---
 .../compact/aggregate/FieldAggregator.java         |   94 --
 .../compact/aggregate/FieldBoolAndAgg.java         |   54 -
 .../compact/aggregate/FieldBoolOrAgg.java          |   54 -
 .../compact/aggregate/FieldIgnoreRetractAgg.java   |   45 -
 .../aggregate/FieldLastNonNullValueAgg.java        |   41 -
 .../compact/aggregate/FieldLastValueAgg.java       |   41 -
 .../compact/aggregate/FieldListaggAgg.java         |   65 -
 .../mergetree/compact/aggregate/FieldMaxAgg.java   |   55 -
 .../mergetree/compact/aggregate/FieldMinAgg.java   |   55 -
 .../compact/aggregate/FieldPrimaryKeyAgg.java      |   46 -
 .../mergetree/compact/aggregate/FieldSumAgg.java   |  159 ---
 .../file/operation/AbstractFileStoreScan.java      |  338 -----
 .../file/operation/AbstractFileStoreWrite.java     |  403 ------
 .../file/operation/AppendOnlyFileStoreRead.java    |  147 --
 .../file/operation/AppendOnlyFileStoreScan.java    |   96 --
 .../file/operation/AppendOnlyFileStoreWrite.java   |  154 ---
 .../store/file/operation/FileStoreCommit.java      |   75 --
 .../store/file/operation/FileStoreCommitImpl.java  |  800 -----------
 .../store/file/operation/FileStoreExpire.java      |   29 -
 .../store/file/operation/FileStoreExpireImpl.java  |  331 -----
 .../table/store/file/operation/FileStoreRead.java  |   38 -
 .../table/store/file/operation/FileStoreScan.java  |   87 --
 .../table/store/file/operation/FileStoreWrite.java |   99 --
 .../file/operation/KeyValueFileStoreRead.java      |  225 ----
 .../file/operation/KeyValueFileStoreScan.java      |   99 --
 .../file/operation/KeyValueFileStoreWrite.java     |  236 ----
 .../flink/table/store/file/operation/Lock.java     |  126 --
 .../store/file/operation/MemoryFileStoreWrite.java |   93 --
 .../store/file/operation/PartitionExpire.java      |  125 --
 .../table/store/file/operation/ReverseReader.java  |   76 --
 .../flink/table/store/file/operation/ScanKind.java |   29 -
 .../file/partition/PartitionTimeExtractor.java     |  125 --
 .../table/store/file/predicate/BucketSelector.java |  163 ---
 .../table/store/file/schema/IndexCastMapping.java  |   32 -
 .../store/file/schema/KeyValueFieldsExtractor.java |   43 -
 .../flink/table/store/file/schema/Schema.java      |  276 ----
 .../table/store/file/schema/SchemaChange.java      |  426 ------
 .../store/file/schema/SchemaEvolutionUtil.java     |  464 -------
 .../table/store/file/schema/SchemaManager.java     |  469 -------
 .../table/store/file/schema/SchemaSerializer.java  |  123 --
 .../table/store/file/schema/SchemaValidation.java  |  192 ---
 .../table/store/file/schema/SystemColumns.java     |   35 -
 .../flink/table/store/file/schema/TableSchema.java |  249 ----
 .../file/sort/AbstractBinaryExternalMerger.java    |  224 ----
 .../store/file/sort/BinaryExternalMerger.java      |   92 --
 .../store/file/sort/BinaryExternalSortBuffer.java  |  207 ---
 .../store/file/sort/BinaryInMemorySortBuffer.java  |  259 ----
 .../store/file/sort/BinaryIndexedSortable.java     |  253 ----
 .../table/store/file/sort/BinaryMergeIterator.java |   96 --
 .../flink/table/store/file/sort/HeapSort.java      |   66 -
 .../table/store/file/sort/IndexedSortable.java     |   76 --
 .../flink/table/store/file/sort/IndexedSorter.java |   35 -
 .../store/file/sort/PartialOrderPriorityQueue.java |  195 ---
 .../flink/table/store/file/sort/QuickSort.java     |  330 -----
 .../flink/table/store/file/sort/SortBuffer.java    |   44 -
 .../table/store/file/sort/SpillChannelManager.java |   95 --
 .../table/store/file/stats/BinaryTableStats.java   |  138 --
 .../file/stats/FieldStatsArraySerializer.java      |  137 --
 .../store/file/stats/FieldStatsConverters.java     |   75 --
 .../table/store/file/utils/BulkFormatMapping.java  |  165 ---
 .../table/store/file/utils/CommitIncrement.java    |   47 -
 .../store/file/utils/ExecutorThreadFactory.java    |  150 ---
 .../file/utils/FatalExitExceptionHandler.java      |   50 -
 .../store/file/utils/FileStorePathFactory.java     |  132 --
 .../flink/table/store/file/utils/FileUtils.java    |  110 --
 .../store/file/utils/IteratorRecordReader.java     |   68 -
 .../table/store/file/utils/JsonDeserializer.java   |   27 -
 .../table/store/file/utils/JsonSerdeUtil.java      |  118 --
 .../table/store/file/utils/JsonSerializer.java     |   29 -
 .../store/file/utils/KeyComparatorSupplier.java    |   46 -
 .../store/file/utils/MutableObjectIterator.java    |   57 -
 .../table/store/file/utils/ObjectSerializer.java   |  115 --
 .../flink/table/store/file/utils/OffsetRow.java    |  137 --
 .../table/store/file/utils/PartitionPathUtils.java |  123 --
 .../flink/table/store/file/utils/RecordWriter.java |   71 -
 .../flink/table/store/file/utils/Restorable.java   |   34 -
 .../store/file/utils/RowDataPartitionComputer.java |   65 -
 .../store/file/utils/SerializableSupplier.java     |   30 -
 .../table/store/file/utils/SerializationUtils.java |  106 --
 .../table/store/file/utils/SnapshotManager.java    |  257 ----
 .../flink/table/store/file/utils/ThreadUtils.java  |   38 -
 .../file/utils/VersionedObjectSerializer.java      |   67 -
 .../table/store/format/FileFormatDiscover.java     |   45 -
 .../apache/flink/table/store/format/FormatKey.java |   50 -
 .../table/store/table/AbstractFileStoreTable.java  |  182 ---
 .../store/table/AppendOnlyFileStoreTable.java      |  137 --
 .../table/ChangelogValueCountFileStoreTable.java   |  192 ---
 .../table/ChangelogWithKeyFileStoreTable.java      |  257 ----
 .../apache/flink/table/store/table/DataTable.java  |   47 -
 .../flink/table/store/table/FileStoreTable.java    |   69 -
 .../table/store/table/FileStoreTableFactory.java   |   88 --
 .../apache/flink/table/store/table/InnerTable.java |   60 -
 .../flink/table/store/table/ReadonlyTable.java     |   69 -
 .../flink/table/store/table/SupportsPartition.java |   27 -
 .../org/apache/flink/table/store/table/Table.java  |   55 -
 .../apache/flink/table/store/table/TableUtils.java |   69 -
 .../table/store/table/sink/BatchTableCommit.java   |   53 -
 .../table/store/table/sink/BatchTableWrite.java    |   39 -
 .../table/store/table/sink/BatchWriteBuilder.java  |   83 --
 .../store/table/sink/BatchWriteBuilderImpl.java    |   71 -
 .../table/store/table/sink/BucketComputer.java     |  110 --
 .../table/store/table/sink/CommitMessage.java      |   39 -
 .../table/store/table/sink/CommitMessageImpl.java  |  130 --
 .../store/table/sink/CommitMessageSerializer.java  |  121 --
 .../table/store/table/sink/InnerTableCommit.java   |   56 -
 .../table/store/table/sink/InnerTableWrite.java    |   25 -
 .../table/store/table/sink/PartitionComputer.java  |   43 -
 .../table/store/table/sink/SequenceGenerator.java  |  138 --
 .../flink/table/store/table/sink/SinkRecord.java   |   62 -
 .../store/table/sink/SinkRecordConverter.java      |   98 --
 .../table/store/table/sink/StreamTableCommit.java  |   64 -
 .../table/store/table/sink/StreamTableWrite.java   |   44 -
 .../table/store/table/sink/StreamWriteBuilder.java |   61 -
 .../store/table/sink/StreamWriteBuilderImpl.java   |   69 -
 .../flink/table/store/table/sink/TableCommit.java  |   34 -
 .../table/store/table/sink/TableCommitImpl.java    |  160 ---
 .../flink/table/store/table/sink/TableWrite.java   |   57 -
 .../table/store/table/sink/TableWriteImpl.java     |  142 --
 .../flink/table/store/table/sink/WriteBuilder.java |   46 -
 .../store/table/source/AbstractDataTableScan.java  |  123 --
 .../table/source/AppendOnlySplitGenerator.java     |   43 -
 .../store/table/source/BatchDataTableScan.java     |   39 -
 .../store/table/source/BatchDataTableScanImpl.java |   66 -
 .../flink/table/store/table/source/DataSplit.java  |  181 ---
 .../table/store/table/source/DataTableScan.java    |   61 -
 .../store/table/source/EndOfScanException.java     |   36 -
 .../store/table/source/InnerStreamTableScan.java   |   22 -
 .../table/store/table/source/InnerTableRead.java   |   49 -
 .../table/store/table/source/InnerTableScan.java   |   37 -
 .../store/table/source/KeyValueTableRead.java      |   70 -
 .../table/source/MergeTreeSplitGenerator.java      |  106 --
 .../table/store/table/source/ReadBuilder.java      |  126 --
 .../table/store/table/source/ReadBuilderImpl.java  |  108 --
 .../store/table/source/ReadOnceTableScan.java      |   37 -
 .../table/source/ResetRowKindRecordIterator.java   |   58 -
 .../flink/table/store/table/source/Split.java      |   34 -
 .../table/store/table/source/SplitGenerator.java   |   29 -
 .../store/table/source/StreamDataTableScan.java    |   86 --
 .../table/source/StreamDataTableScanImpl.java      |  192 ---
 .../table/store/table/source/StreamTableScan.java  |   30 -
 .../flink/table/store/table/source/TableRead.java  |   52 -
 .../flink/table/store/table/source/TableScan.java  |   46 -
 .../store/table/source/TableStreamingReader.java   |  118 --
 .../source/ValueContentRowDataRecordIterator.java  |   45 -
 .../source/ValueCountRowDataRecordIterator.java    |   65 -
 .../snapshot/BoundedWatermarkFollowUpScanner.java  |   58 -
 .../source/snapshot/CompactedStartingScanner.java  |   49 -
 .../CompactionChangelogFollowUpScanner.java        |   58 -
 .../ContinuousCompactorFollowUpScanner.java        |   54 -
 .../ContinuousCompactorStartingScanner.java        |   59 -
 .../ContinuousFromSnapshotStartingScanner.java     |   52 -
 .../ContinuousFromTimestampStartingScanner.java    |   55 -
 .../snapshot/ContinuousLatestStartingScanner.java  |   49 -
 .../source/snapshot/DeltaFollowUpScanner.java      |   54 -
 .../table/source/snapshot/FollowUpScanner.java     |   45 -
 .../table/source/snapshot/FullStartingScanner.java |   49 -
 .../snapshot/InputChangelogFollowUpScanner.java    |   54 -
 .../table/source/snapshot/SnapshotSplitReader.java |   93 --
 .../source/snapshot/SnapshotSplitReaderImpl.java   |  197 ---
 .../table/source/snapshot/StartingScanner.java     |   34 -
 .../StaticFromSnapshotStartingScanner.java         |   48 -
 .../StaticFromTimestampStartingScanner.java        |   61 -
 .../table/store/table/system/AuditLogTable.java    |  423 ------
 .../table/store/table/system/BucketsTable.java     |  184 ---
 .../flink/table/store/table/system/FilesTable.java |  401 ------
 .../table/store/table/system/OptionsTable.java     |  196 ---
 .../table/store/table/system/SchemasTable.java     |  209 ---
 .../table/store/table/system/SnapshotsTable.java   |  222 ----
 .../store/table/system/SystemTableLoader.java      |   55 -
 ...e.flink.table.store.file.catalog.CatalogFactory |   16 -
 .../apache/flink/table/store/CoreOptionsTest.java  |   62 -
 .../flink/table/store/file/FileFormatTest.java     |   95 --
 .../table/store/file/KeyValueSerializerTest.java   |   70 -
 .../flink/table/store/file/TestFileStore.java      |  555 --------
 .../table/store/file/TestKeyValueGenerator.java    |  371 ------
 .../file/append/AppendOnlyCompactManagerTest.java  |  222 ----
 .../store/file/append/AppendOnlyWriterTest.java    |  367 -----
 .../file/append/IterativeCompactTaskTest.java      |  306 -----
 .../table/store/file/casting/CastExecutorTest.java |  268 ----
 .../store/file/catalog/CatalogFactoryTest.java     |   88 --
 .../file/disk/BufferFileWriterReaderTest.java      |  175 ---
 .../flink/table/store/file/disk/IOManagerTest.java |   74 --
 .../store/file/format/FileFormatSuffixTest.java    |   92 --
 .../file/format/FileStatsExtractingAvroFormat.java |   60 -
 .../FileStatsExtractingAvroFormatFactory.java      |   37 -
 .../store/file/format/FlushingFileFormat.java      |   74 --
 .../store/file/io/DataFileMetaSerializerTest.java  |   39 -
 .../store/file/io/DataFilePathFactoryTest.java     |   86 --
 .../store/file/io/DataFileTestDataGenerator.java   |  188 ---
 .../table/store/file/io/DataFileTestUtils.java     |  104 --
 .../store/file/io/KeyValueFileReadWriteTest.java   |  375 ------
 .../table/store/file/io/RollingFileWriterTest.java |   99 --
 .../ManifestCommittableSerializerTest.java         |  118 --
 .../file/manifest/ManifestEntrySerializerTest.java |   38 -
 .../manifest/ManifestFileMetaSerializerTest.java   |   47 -
 .../store/file/manifest/ManifestFileMetaTest.java  |  256 ----
 .../store/file/manifest/ManifestFileTest.java      |  135 --
 .../store/file/manifest/ManifestListTest.java      |  105 --
 .../file/manifest/ManifestTestDataGenerator.java   |  181 ---
 .../store/file/memory/MemoryPoolFactoryTest.java   |   57 -
 .../table/store/file/mergetree/LevelsTest.java     |   74 --
 .../store/file/mergetree/LookupLevelsTest.java     |  279 ----
 .../table/store/file/mergetree/MergeTreeTest.java  |  511 -------
 .../mergetree/SortBufferWriteBufferTestBase.java   |  180 ---
 .../compact/CombiningRecordReaderTestBase.java     |  107 --
 .../mergetree/compact/ConcatRecordReaderTest.java  |   68 -
 .../compact/ForceUpLevel0CompactionTest.java       |   65 -
 .../FullChangelogMergeFunctionWrapperTestBase.java |  171 ---
 .../mergetree/compact/IntervalPartitionTest.java   |  198 ---
 .../LookupChangelogMergeFunctionWrapperTest.java   |  207 ---
 .../mergetree/compact/MergeFunctionTestUtils.java  |   89 --
 .../compact/MergeTreeCompactManagerTest.java       |  306 -----
 .../ReducerMergeFunctionWrapperTestBase.java       |  130 --
 .../mergetree/compact/SortMergeReaderTestBase.java |  127 --
 .../mergetree/compact/UniversalCompactionTest.java |  299 -----
 .../compact/aggregate/FieldAggregatorTest.java     |  183 ---
 .../file/operation/CleanedFileStoreExpireTest.java |  215 ---
 .../store/file/operation/FileStoreCommitTest.java  |  659 ---------
 .../file/operation/FileStoreExpireTestBase.java    |  122 --
 .../file/operation/KeyValueFileStoreReadTest.java  |  291 ----
 .../file/operation/KeyValueFileStoreScanTest.java  |  258 ----
 .../store/file/operation/PartitionExpireTest.java  |  148 ---
 .../store/file/operation/TestCommitThread.java     |  283 ----
 .../operation/UncleanedFileStoreExpireTest.java    |   83 --
 .../file/partition/PartitionTimeExtractorTest.java |   90 --
 .../store/file/predicate/BucketSelectorTest.java   |  153 ---
 .../store/file/predicate/PredicateBuilderTest.java |  100 --
 .../table/store/file/predicate/PredicateTest.java  |  525 --------
 .../store/file/schema/DataTypeJsonParserTest.java  |  243 ----
 .../store/file/schema/SchemaEvolutionUtilTest.java |  313 -----
 .../table/store/file/schema/SchemaManagerTest.java |  316 -----
 .../flink/table/store/file/schema/SchemaUtils.java |   94 --
 .../file/schema/TableSchemaSerializationTest.java  |   67 -
 .../table/store/file/schema/TableSchemaTest.java   |   79 --
 .../file/sort/BinaryExternalSortBufferTest.java    |  319 -----
 .../store/file/sort/IntNormalizedKeyComputer.java  |   87 --
 .../table/store/file/sort/IntRecordComparator.java |   50 -
 .../store/file/stats/BinaryTableStatsTest.java     |   93 --
 .../file/stats/FieldStatsArraySerializerTest.java  |   97 --
 .../store/file/stats/FieldStatsCollectorTest.java  |   98 --
 .../table/store/file/stats/StatsTestUtils.java     |   89 --
 .../store/file/stats/TestFileStatsExtractor.java   |   79 --
 .../table/store/file/utils/BlockingIterator.java   |  118 --
 .../table/store/file/utils/FailingFileIO.java      |  215 ---
 .../store/file/utils/FileStorePathFactoryTest.java |  116 --
 .../store/file/utils/ObjectSerializerTestBase.java |   64 -
 .../table/store/file/utils/OffsetRowTest.java      |  147 --
 .../table/store/file/utils/ReusingKeyValue.java    |   52 -
 .../table/store/file/utils/ReusingTestData.java    |  152 ---
 .../store/file/utils/SnapshotManagerTest.java      |   43 -
 .../store/file/utils/TestReusingRecordReader.java  |  118 --
 .../table/store/file/utils/TraceableFileIO.java    |  278 ----
 .../store/table/AppendOnlyFileDataTableTest.java   |   41 -
 .../store/table/AppendOnlyFileStoreTableTest.java  |  306 -----
 .../AppendOnlyTableColumnTypeFileDataTest.java     |   48 -
 .../AppendOnlyTableColumnTypeFileMetaTest.java     |   56 -
 .../table/AppendOnlyTableFileMetaFilterTest.java   |   56 -
 .../ChangelogValueCountColumnTypeFileDataTest.java |   57 -
 .../ChangelogValueCountColumnTypeFileMetaTest.java |   64 -
 .../ChangelogValueCountFileDataTableTest.java      |   57 -
 .../ChangelogValueCountFileMetaFilterTest.java     |   64 -
 .../ChangelogValueCountFileStoreTableTest.java     |  228 ----
 .../ChangelogWithKeyColumnTypeFileDataTest.java    |  109 --
 .../table/ChangelogWithKeyFileDataTableTest.java   |  255 ----
 .../table/ChangelogWithKeyFileMetaFilterTest.java  |  163 ---
 .../table/ChangelogWithKeyFileStoreTableTest.java  |  841 ------------
 ...hangelogWithKeyTableColumnTypeFileMetaTest.java |  157 ---
 .../store/table/ColumnTypeFileDataTestBase.java    |  193 ---
 .../store/table/ColumnTypeFileMetaTestBase.java    |  342 -----
 .../table/store/table/FileDataFilterTestBase.java  |  458 -------
 .../table/store/table/FileMetaFilterTestBase.java  |  323 -----
 .../table/store/table/FileStoreTableTestBase.java  |  499 -------
 .../store/table/SchemaEvolutionTableTestBase.java  |  529 --------
 .../table/store/table/SchemaEvolutionTest.java     |  363 -----
 .../table/store/table/WritePreemptMemoryTest.java  |  111 --
 .../table/sink/CommitMessageSerializerTest.java    |   46 -
 .../store/table/sink/SinkRecordConverterTest.java  |  103 --
 .../table/store/table/sink/TableWriteTest.java     |  187 ---
 .../store/table/source/BatchDataTableScanTest.java |   70 -
 .../source/RowDataRecordIteratorTestBase.java      |   92 --
 .../store/table/source/SplitGeneratorTest.java     |   94 --
 .../flink/table/store/table/source/SplitTest.java  |   61 -
 .../table/source/StreamDataTableScanTest.java      |  170 ---
 .../ValueContentRowDataRecordIteratorTest.java     |   51 -
 .../ValueCountRowDataRecordIteratorTest.java       |   95 --
 .../BoundedWatermarkFollowUpScannerTest.java       |   54 -
 .../snapshot/CompactedStartingScannerTest.java     |   95 --
 .../CompactionChangelogFollowUpScannerTest.java    |  110 --
 .../ContinuousCompactorFollowUpScannerTest.java    |  126 --
 .../ContinuousCompactorStartingScannerTest.java    |   77 --
 ...ContinuousFromTimestampStartingScannerTest.java |  103 --
 .../ContinuousLatestStartingScannerTest.java       |   67 -
 .../source/snapshot/DeltaFollowUpScannerTest.java  |   84 --
 .../source/snapshot/FullStartingScannerTest.java   |   70 -
 .../InputChangelogFollowUpScannerTest.java         |   95 --
 .../table/source/snapshot/ScannerTestBase.java     |  140 --
 .../table/store/utils/CompatibilityTestUtils.java  |   62 -
 ...ache.flink.table.store.format.FileFormatFactory |   16 -
 .../org.apache.flink.table.store.fs.FileIOLoader   |   17 -
 flink-table-store-docs/README.md                   |   36 -
 flink-table-store-docs/pom.xml                     |  151 ---
 .../configuration/ConfigOptionsDocGenerator.java   |  635 ---------
 .../docs/configuration/OptionsClassLocation.java   |   46 -
 .../apache/flink/table/store/docs/util/Utils.java  |   36 -
 .../src/main/resources/log4j.properties            |   24 -
 .../ConfigOptionsDocGeneratorTest.java             |  612 ---------
 .../ConfigOptionsDocsCompletenessITCase.java       |  377 ------
 .../docs/configuration/data/TestCommonOptions.java |   51 -
 flink-table-store-e2e-tests/pom.xml                |  200 ---
 .../flink/table/store/tests/E2eQueryExecutor.java  |   24 -
 .../flink/table/store/tests/E2eReaderTestBase.java |  109 --
 .../flink/table/store/tests/E2eTestBase.java       |  327 -----
 .../table/store/tests/FileStoreBatchE2eTest.java   |  187 ---
 .../store/tests/FileStoreBuiltInFormatE2eTest.java |  128 --
 .../table/store/tests/FileStoreStreamE2eTest.java  |  125 --
 .../table/store/tests/FlinkActionsE2eTest.java     |  332 -----
 .../flink/table/store/tests/HiveE2eTest.java       |  132 --
 .../flink/table/store/tests/LogStoreE2eTest.java   |  135 --
 .../flink/table/store/tests/SparkE2eTest.java      |   84 --
 .../flink/table/store/tests/TypeE2eTest.java       |  218 ---
 .../table/store/tests/utils/ParameterProperty.java |   43 -
 .../flink/table/store/tests/utils/TestUtils.java   |   82 --
 .../test/resources-filtered/docker-compose.yaml    |  208 ---
 .../flink-table-store-hadoop-shaded/pom.xml        |  268 ----
 .../src/main/resources/META-INF/NOTICE             |   54 -
 .../flink-table-store-oss-impl/pom.xml             |  151 ---
 .../table/store/oss/HadoopCompliantFileIO.java     |  271 ----
 .../apache/flink/table/store/oss/OSSFileIO.java    |  161 ---
 .../src/main/resources/META-INF/NOTICE             |   32 -
 .../flink-table-store-oss/pom.xml                  |   88 --
 .../apache/flink/table/store/oss/OSSLoader.java    |   78 --
 .../org.apache.flink.table.store.fs.FileIOLoader   |   16 -
 .../flink-table-store-s3-impl/pom.xml              |  392 ------
 .../table/store/s3/HadoopCompliantFileIO.java      |  271 ----
 .../org/apache/flink/table/store/s3/S3FileIO.java  |  164 ---
 .../src/main/resources/META-INF/NOTICE             |   82 --
 .../flink-table-store-s3/pom.xml                   |   88 --
 .../org/apache/flink/table/store/s3/S3Loader.java  |   78 --
 .../org.apache.flink.table.store.fs.FileIOLoader   |   16 -
 flink-table-store-filesystems/pom.xml              |   47 -
 .../flink-table-store-flink-1.14/pom.xml           |  159 ---
 .../table/store/connector/TableConfigUtils.java    |   30 -
 .../TableStoreDataStreamScanProvider.java          |   49 -
 .../TableStoreDataStreamSinkProvider.java          |   42 -
 .../lookup/LookupRuntimeProviderFactory.java       |   30 -
 .../store/connector/lookup/OldLookupFunction.java  |   52 -
 .../utils/StreamExecutionEnvironmentUtils.java     |   48 -
 .../connector/utils/TableEnvironmentUtils.java     |   66 -
 .../store/connector/BatchFileStoreITCase.java      |  148 ---
 .../table/store/connector/CatalogITCaseBase.java   |  150 ---
 .../store/connector/ContinuousFileStoreITCase.java |  500 -------
 .../table/store/connector/FlinkActionITCase.java   |   63 -
 .../table/store/connector/LookupJoinITCase.java    |   76 --
 .../flink-table-store-flink-1.15/pom.xml           |  165 ---
 .../lookup/LookupRuntimeProviderFactory.java       |   30 -
 .../store/connector/lookup/OldLookupFunction.java  |   52 -
 .../store/connector/BatchFileStoreITCase.java      |  148 ---
 .../table/store/connector/CatalogITCaseBase.java   |  150 ---
 .../store/connector/ContinuousFileStoreITCase.java |  500 -------
 .../table/store/connector/FlinkActionITCase.java   |   63 -
 .../table/store/connector/LookupJoinITCase.java    |   76 --
 .../flink-table-store-flink-1.16/pom.xml           |   72 -
 .../flink-table-store-flink-common/pom.xml         |  278 ----
 .../store/connector/AbstractTableStoreFactory.java |  199 ---
 .../store/connector/BinaryRowTypeSerializer.java   |  175 ---
 .../table/store/connector/DataCatalogTable.java    |   65 -
 .../store/connector/DataTypeToLogicalType.java     |  174 ---
 .../flink/table/store/connector/FlinkCatalog.java  |  570 --------
 .../table/store/connector/FlinkCatalogFactory.java |   70 -
 .../store/connector/FlinkConnectorOptions.java     |  138 --
 .../flink/table/store/connector/FlinkFileIO.java   |  225 ----
 .../table/store/connector/FlinkFileIOLoader.java   |   37 -
 .../flink/table/store/connector/FlinkRowData.java  |  328 -----
 .../table/store/connector/FlinkRowWrapper.java     |  326 -----
 .../flink/table/store/connector/FlinkUtils.java    |   38 -
 .../flink/table/store/connector/HadoopUtils.java   |  165 ---
 .../store/connector/LogicalTypeConversion.java     |   59 -
 .../store/connector/LogicalTypeToDataType.java     |  185 ---
 .../table/store/connector/PredicateConverter.java  |  313 -----
 .../table/store/connector/ProjectedRowData.java    |  232 ----
 .../flink/table/store/connector/Projection.java    |  235 ----
 .../table/store/connector/RocksDBOptions.java      |  349 -----
 .../table/store/connector/SystemCatalogTable.java  |   93 --
 .../table/store/connector/TableConfigUtils.java    |   52 -
 .../connector/TableStoreConnectorFactory.java      |  113 --
 .../TableStoreDataStreamScanProvider.java          |   51 -
 .../TableStoreDataStreamSinkProvider.java          |   44 -
 .../connector/VersionedSerializerWrapper.java      |   49 -
 .../flink/table/store/connector/action/Action.java |  152 ---
 .../table/store/connector/action/ActionBase.java   |  150 ---
 .../store/connector/action/CompactAction.java      |  147 --
 .../table/store/connector/action/DeleteAction.java |  134 --
 .../connector/action/DropPartitionAction.java      |  117 --
 .../table/store/connector/action/FlinkActions.java |   54 -
 .../store/connector/action/MergeIntoAction.java    |  719 ----------
 .../connector/lookup/FileStoreLookupFunction.java  |  229 ----
 .../lookup/LookupRuntimeProviderFactory.java       |   30 -
 .../table/store/connector/lookup/LookupTable.java  |   53 -
 .../store/connector/lookup/NewLookupFunction.java  |   53 -
 .../connector/lookup/PrimaryKeyLookupTable.java    |   88 --
 .../store/connector/lookup/RocksDBSetState.java    |  124 --
 .../table/store/connector/lookup/RocksDBState.java |  130 --
 .../connector/lookup/RocksDBStateFactory.java      |  100 --
 .../store/connector/lookup/RocksDBValueState.java  |  102 --
 .../lookup/SecondaryIndexLookupTable.java          |   97 --
 .../connector/sink/BucketStreamPartitioner.java    |   90 --
 .../table/store/connector/sink/Committable.java    |   87 --
 .../connector/sink/CommittableSerializer.java      |   95 --
 .../connector/sink/CommittableStateManager.java    |   37 -
 .../store/connector/sink/CommittableTypeInfo.java  |   96 --
 .../table/store/connector/sink/Committer.java      |   46 -
 .../store/connector/sink/CommitterOperator.java    |  200 ---
 .../table/store/connector/sink/CompactorSink.java  |   55 -
 .../store/connector/sink/CompactorSinkBuilder.java |   65 -
 .../table/store/connector/sink/FileStoreSink.java  |   80 --
 .../table/store/connector/sink/FlinkSink.java      |  159 ---
 .../store/connector/sink/FlinkSinkBuilder.java     |  106 --
 .../sink/FullChangelogStoreSinkWrite.java          |  279 ----
 .../store/connector/sink/LogOffsetCommittable.java |   69 -
 .../sink/LookupChangelogStoreSinkWrite.java        |   50 -
 .../sink/NoopCommittableStateManager.java          |   46 -
 .../sink/OffsetRowDataHashStreamPartitioner.java   |   82 --
 .../connector/sink/PrepareCommitOperator.java      |   65 -
 .../RestoreAndFailCommittableStateManager.java     |   95 --
 .../table/store/connector/sink/StateUtils.java     |   76 --
 .../table/store/connector/sink/StoreCommitter.java |   83 --
 .../store/connector/sink/StoreCompactOperator.java |  114 --
 .../table/store/connector/sink/StoreSinkWrite.java |   58 -
 .../store/connector/sink/StoreSinkWriteImpl.java   |  139 --
 .../store/connector/sink/StoreWriteOperator.java   |  241 ----
 .../table/store/connector/sink/TableStoreSink.java |  185 ---
 .../connector/source/CompactorSourceBuilder.java   |  133 --
 .../source/ContinuousFileSplitEnumerator.java      |  215 ---
 .../source/ContinuousFileStoreSource.java          |  101 --
 .../connector/source/FileStoreSourceReader.java    |   71 -
 .../connector/source/FileStoreSourceSplit.java     |   81 --
 .../source/FileStoreSourceSplitGenerator.java      |   66 -
 .../source/FileStoreSourceSplitReader.java         |  243 ----
 .../source/FileStoreSourceSplitSerializer.java     |   64 -
 .../source/FileStoreSourceSplitState.java          |   55 -
 .../table/store/connector/source/FlinkSource.java  |   72 -
 .../store/connector/source/FlinkSourceBuilder.java |  169 ---
 .../store/connector/source/FlinkTableSource.java   |   91 --
 .../connector/source/LogHybridSourceFactory.java   |   51 -
 .../connector/source/PendingSplitsCheckpoint.java  |   49 -
 .../source/PendingSplitsCheckpointSerializer.java  |   82 --
 .../store/connector/source/RecordsFunction.java    |  106 --
 .../store/connector/source/SimpleSystemSource.java |   56 -
 .../connector/source/SingleIteratorRecords.java    |   99 --
 .../connector/source/StaticFileStoreSource.java    |   98 --
 .../source/StaticFileStoreSplitEnumerator.java     |  121 --
 .../store/connector/source/SystemTableSource.java  |   90 --
 .../store/connector/source/TableStoreSource.java   |  212 ---
 .../utils/StreamExecutionEnvironmentUtils.java     |   30 -
 .../connector/utils/TableEnvironmentUtils.java     |   66 -
 .../store/kafka/KafkaLogDeserializationSchema.java |  168 ---
 .../flink/table/store/kafka/KafkaLogOptions.java   |   38 -
 .../store/kafka/KafkaLogSerializationSchema.java   |   86 --
 .../table/store/kafka/KafkaLogSinkProvider.java    |   87 --
 .../table/store/kafka/KafkaLogSourceProvider.java  |  148 ---
 .../table/store/kafka/KafkaLogStoreFactory.java    |  172 ---
 .../flink/table/store/kafka/KafkaSinkFunction.java |   85 --
 .../flink/table/store/log/LogSinkProvider.java     |   30 -
 .../flink/table/store/log/LogSourceProvider.java   |   43 -
 .../table/store/log/LogStoreTableFactory.java      |  139 --
 .../flink/table/store/log/LogWriteCallback.java    |   51 -
 .../table/store/table/sink/LogSinkFunction.java    |   44 -
 .../org.apache.flink.table.factories.Factory       |   18 -
 .../connector/AbstractTableStoreFactoryTest.java   |   60 -
 .../store/connector/AppendOnlyTableITCase.java     |  246 ----
 .../store/connector/BatchFileStoreITCase.java      |  143 --
 .../connector/BinaryRowTypeSerializerTest.java     |   57 -
 .../table/store/connector/CatalogITCaseBase.java   |  153 ---
 .../table/store/connector/CatalogTableITCase.java  |  448 -------
 .../table/store/connector/ChangelogModeTest.java   |  116 --
 .../ChangelogWithKeyFileStoreTableITCase.java      |  627 ---------
 .../CompositePkAndMultiPartitionedTableITCase.java |  673 ----------
 ...AndMultiPartitionedTableWIthKafkaLogITCase.java | 1134 ----------------
 .../ComputedColumnAndWatermarkTableITCase.java     |  445 -------
 .../store/connector/ContinuousFileStoreITCase.java |  300 -----
 .../table/store/connector/CreateTableITCase.java   |  160 ---
 .../table/store/connector/DropTableITCase.java     |  173 ---
 .../table/store/connector/FileStoreITCase.java     |  448 -------
 .../store/connector/FileSystemCatalogITCase.java   |  163 ---
 .../table/store/connector/FiniteTestSource.java    |  159 ---
 .../table/store/connector/FlinkCatalogTest.java    |  448 -------
 .../store/connector/ForceCompactionITCase.java     |  247 ----
 .../connector/FullCompactionFileStoreITCase.java   |  119 --
 .../table/store/connector/LargeDataITCase.java     |   81 --
 .../table/store/connector/LogSystemITCase.java     |   71 -
 .../connector/LookupChangelogWithAggITCase.java    |   57 -
 .../table/store/connector/LookupJoinITCase.java    |  516 -------
 .../table/store/connector/MappingTableITCase.java  |  118 --
 .../table/store/connector/PartialUpdateITCase.java |  152 ---
 .../store/connector/PreAggregationITCase.java      |  821 ------------
 .../store/connector/PredicateConverterTest.java    |  781 -----------
 .../table/store/connector/PredicateITCase.java     |   87 --
 .../store/connector/ReadWriteTableITCase.java      | 1195 -----------------
 .../table/store/connector/RescaleBucketITCase.java |  226 ----
 .../table/store/connector/SchemaChangeITCase.java  |   92 --
 .../table/store/connector/SerializableRowData.java |  154 ---
 .../table/store/connector/ShowCreateUtil.java      |  183 ---
 .../StreamingReadWriteTableWithKafkaLogITCase.java | 1406 --------------------
 .../store/connector/StreamingWarehouseITCase.java  |  245 ----
 .../table/store/connector/TableStoreTestBase.java  |  208 ---
 .../store/connector/action/ActionITCaseBase.java   |  118 --
 .../connector/action/CompactActionITCase.java      |  235 ----
 .../store/connector/action/DeleteActionITCase.java |  132 --
 .../action/DropPartitionActionITCase.java          |  180 ---
 .../connector/action/MergeIntoActionITCase.java    |  406 ------
 .../store/connector/lookup/LookupTableTest.java    |  170 ---
 .../connector/sink/CommittableSerializerTest.java  |   77 --
 .../connector/sink/CommitterOperatorTest.java      |  263 ----
 .../connector/sink/CommitterOperatorTestBase.java  |  103 --
 .../store/connector/sink/CompactorSinkITCase.java  |  160 ---
 .../connector/sink/FileStoreShuffleBucketTest.java |  163 ---
 .../connector/sink/LogOffsetCommittableTest.java   |   35 -
 .../store/connector/sink/SinkSavepointITCase.java  |  227 ----
 .../connector/source/CompactorSourceITCase.java    |  296 -----
 .../source/ContinuousFileSplitEnumeratorTest.java  |  266 ----
 .../source/FileStoreSourceReaderTest.java          |   99 --
 .../source/FileStoreSourceSplitGeneratorTest.java  |  145 --
 .../source/FileStoreSourceSplitReaderTest.java     |  429 ------
 .../source/FileStoreSourceSplitSerializerTest.java |  135 --
 .../source/FileStoreSourceSplitStateTest.java      |   73 -
 .../PendingSplitsCheckpointSerializerTest.java     |  112 --
 .../connector/source/RecordsFunctionTest.java      |   89 --
 .../source/SingleIteratorRecordsTest.java          |  131 --
 .../source/StaticFileStoreSplitEnumeratorTest.java |  122 --
 .../source/TestChangelogDataReadWrite.java         |  198 ---
 .../store/connector/util/AbstractTestBase.java     |  100 --
 .../util/MiniClusterWithClientExtension.java       |  225 ----
 .../connector/util/ReadWriteTableTestUtil.java     |  368 -----
 .../store/kafka/KafkaLogSerializationTest.java     |  149 ---
 .../flink/table/store/kafka/KafkaLogTestUtils.java |  205 ---
 .../table/store/kafka/KafkaTableTestBase.java      |  272 ----
 flink-table-store-flink/pom.xml                    |  145 --
 flink-table-store-format/pom.xml                   |  340 -----
 .../store/format/avro/AbstractAvroBulkFormat.java  |  200 ---
 .../flink/table/store/format/avro/AvroBuilder.java |   33 -
 .../table/store/format/avro/AvroBulkWriter.java    |   51 -
 .../table/store/format/avro/AvroFileFormat.java    |  167 ---
 .../store/format/avro/AvroFileFormatFactory.java   |   37 -
 .../store/format/avro/AvroSchemaConverter.java     |  207 ---
 .../store/format/avro/AvroToRowDataConverters.java |  253 ----
 .../table/store/format/avro/AvroWriterFactory.java |   46 -
 .../store/format/avro/CloseShieldOutputStream.java |   56 -
 .../table/store/format/avro/JodaConverter.java     |   70 -
 .../store/format/avro/RowDataToAvroConverters.java |  297 -----
 .../format/avro/SeekableInputStreamWrapper.java    |   67 -
 .../store/format/fs/HadoopReadOnlyFileSystem.java  |  198 ---
 .../table/store/format/orc/OrcFileFormat.java      |  175 ---
 .../store/format/orc/OrcFileFormatFactory.java     |   52 -
 .../table/store/format/orc/OrcReaderFactory.java   |  358 -----
 .../table/store/format/orc/OrcWriterFactory.java   |  130 --
 .../orc/SerializableHadoopConfigWrapper.java       |   78 --
 .../orc/ThreadLocalClassLoaderConfiguration.java   |   55 -
 .../format/orc/filter/OrcFileStatsExtractor.java   |  192 ---
 .../table/store/format/orc/filter/OrcFilters.java  |  307 -----
 .../orc/filter/OrcPredicateFunctionVisitor.java    |  236 ----
 .../format/orc/reader/AbstractOrcColumnVector.java |   79 --
 .../format/orc/reader/OrcArrayColumnVector.java    |   47 -
 .../format/orc/reader/OrcBytesColumnVector.java    |   42 -
 .../format/orc/reader/OrcDecimalColumnVector.java  |   46 -
 .../format/orc/reader/OrcDoubleColumnVector.java   |   47 -
 .../orc/reader/OrcLegacyTimestampColumnVector.java |   90 --
 .../format/orc/reader/OrcLongColumnVector.java     |   65 -
 .../format/orc/reader/OrcMapColumnVector.java      |   49 -
 .../format/orc/reader/OrcRowColumnVector.java      |   49 -
 .../format/orc/reader/OrcSplitReaderUtil.java      |   97 --
 .../orc/reader/OrcTimestampColumnVector.java       |   47 -
 .../store/format/orc/writer/OrcBulkWriter.java     |   70 -
 .../format/orc/writer/PhysicalWriterImpl.java      |  396 ------
 .../store/format/orc/writer/RowDataVectorizer.java |  278 ----
 .../table/store/format/orc/writer/Vectorizer.java  |   93 --
 .../store/format/parquet/ParquetFileFormat.java    |   75 --
 .../format/parquet/ParquetFileFormatFactory.java   |   56 -
 .../format/parquet/ParquetFileStatsExtractor.java  |  211 ---
 .../store/format/parquet/ParquetInputFile.java     |   63 -
 .../store/format/parquet/ParquetInputStream.java   |   46 -
 .../store/format/parquet/ParquetReaderFactory.java |  399 ------
 .../format/parquet/ParquetSchemaConverter.java     |  181 ---
 .../table/store/format/parquet/ParquetUtil.java    |   93 --
 .../store/format/parquet/ParquetWriterFactory.java |   58 -
 .../parquet/reader/AbstractColumnReader.java       |  298 -----
 .../format/parquet/reader/ArrayColumnReader.java   |  498 -------
 .../parquet/reader/BaseVectorizedColumnReader.java |  290 ----
 .../format/parquet/reader/BooleanColumnReader.java |  112 --
 .../format/parquet/reader/ByteColumnReader.java    |   96 --
 .../format/parquet/reader/BytesColumnReader.java   |   97 --
 .../store/format/parquet/reader/ColumnReader.java  |   32 -
 .../format/parquet/reader/DoubleColumnReader.java  |   99 --
 .../parquet/reader/FixedLenBytesColumnReader.java  |  138 --
 .../format/parquet/reader/FloatColumnReader.java   |   99 --
 .../format/parquet/reader/IntColumnReader.java     |   97 --
 .../format/parquet/reader/LongColumnReader.java    |   98 --
 .../format/parquet/reader/MapColumnReader.java     |   64 -
 .../parquet/reader/ParquetDataColumnReader.java    |  127 --
 .../reader/ParquetDataColumnReaderFactory.java     |  234 ----
 .../parquet/reader/ParquetDecimalVector.java       |   69 -
 .../format/parquet/reader/ParquetDictionary.java   |   64 -
 .../parquet/reader/ParquetSplitReaderUtil.java     |  374 ------
 .../parquet/reader/ParquetTimestampVector.java     |   63 -
 .../format/parquet/reader/RowColumnReader.java     |   58 -
 .../format/parquet/reader/RunLengthDecoder.java    |  294 ----
 .../format/parquet/reader/ShortColumnReader.java   |   82 --
 .../parquet/reader/TimestampColumnReader.java      |  113 --
 .../format/parquet/writer/ParquetBuilder.java      |   37 -
 .../format/parquet/writer/ParquetBulkWriter.java   |   59 -
 .../parquet/writer/ParquetRowDataBuilder.java      |   81 --
 .../parquet/writer/ParquetRowDataWriter.java       |  636 ---------
 .../writer/PositionOutputStreamAdapter.java        |   67 -
 .../parquet/writer/RowDataParquetBuilder.java      |   83 --
 .../format/parquet/writer/StreamOutputFile.java    |   77 --
 .../src/main/resources/META-INF/NOTICE             |   33 -
 ...ache.flink.table.store.format.FileFormatFactory |   18 -
 .../table/store/format/BulkFileFormatTest.java     |   90 --
 .../store/format/avro/AvroBulkFormatTest.java      |  131 --
 .../store/format/avro/AvroBulkFormatTestUtils.java |   62 -
 .../store/format/orc/OrcBulkWriterTestUtil.java    |   96 --
 .../table/store/format/orc/OrcFileFormatTest.java  |   49 -
 .../format/orc/OrcFileStatsExtractorTest.java      |   78 --
 .../store/format/orc/OrcFilterConverterTest.java   |  123 --
 .../store/format/orc/OrcReaderFactoryTest.java     |  205 ---
 .../store/format/orc/OrcSplitReaderUtilTest.java   |   68 -
 .../store/format/orc/OrcWriterFactoryTest.java     |   97 --
 .../flink/table/store/format/orc/Record.java       |   55 -
 .../table/store/format/orc/RecordVectorizer.java   |   55 -
 .../format/parquet/ParquetFileFormatTest.java      |   73 -
 .../parquet/ParquetFileStatsExtractorTest.java     |   98 --
 .../store/format/parquet/ParquetReadWriteTest.java |  523 --------
 .../flink-table-store-hive-catalog/pom.xml         |  643 ---------
 .../apache/flink/table/store/hive/HiveCatalog.java |  493 -------
 .../flink/table/store/hive/HiveCatalogFactory.java |   74 --
 .../flink/table/store/hive/HiveCatalogLock.java    |  156 ---
 .../table/store/hive/SerializableHiveConf.java     |   71 -
 .../src/main/resources-filtered/META-INF/NOTICE    |   16 -
 ...e.flink.table.store.file.catalog.CatalogFactory |   16 -
 .../store/hive/AlterFailHiveMetaStoreClient.java   |   52 -
 .../store/hive/CreateFailHiveMetaStoreClient.java  |   62 -
 .../hive/CustomHiveMetastoreClientITCase.java      |  101 --
 .../flink/table/store/hive/HiveCatalogITCase.java  |  612 ---------
 .../table/store/hive/TestHiveMetaStoreClient.java  |   56 -
 .../flink-table-store-hive-common/pom.xml          |   77 --
 .../flink/table/store/hive/HiveTypeUtils.java      |   85 --
 .../pom.xml                                        |   72 -
 .../flink-table-store-hive-connector-2.1/pom.xml   |   72 -
 .../flink-table-store-hive-connector-2.2/pom.xml   |   72 -
 .../flink-table-store-hive-connector-2.3/pom.xml   |   72 -
 .../flink-table-store-hive-connector-3.1/pom.xml   |  110 --
 .../TableStoreDateObjectInspector.java             |   55 -
 .../TableStoreTimestampObjectInspector.java        |   61 -
 .../pom.xml                                        |  533 --------
 .../apache/flink/table/store/RowDataContainer.java |   58 -
 .../store/SearchArgumentToPredicateConverter.java  |  155 ---
 .../flink/table/store/TableStoreJobConf.java       |   76 --
 .../apache/flink/table/store/hive/HiveSchema.java  |  162 ---
 .../table/store/hive/TableStoreHiveMetaHook.java   |   61 -
 .../store/hive/TableStoreHiveStorageHandler.java   |  109 --
 .../flink/table/store/hive/TableStoreSerDe.java    |   78 --
 .../TableStoreCharObjectInspector.java             |   62 -
 .../TableStoreDateObjectInspector.java             |   60 -
 .../TableStoreDecimalObjectInspector.java          |   59 -
 .../TableStoreListObjectInspector.java             |   89 --
 .../TableStoreMapObjectInspector.java              |  119 --
 .../TableStoreObjectInspectorFactory.java          |   79 --
 .../TableStoreRowDataObjectInspector.java          |  150 ---
 .../TableStoreStringObjectInspector.java           |   55 -
 .../TableStoreTimestampObjectInspector.java        |   59 -
 .../TableStoreVarcharObjectInspector.java          |   62 -
 .../table/store/mapred/TableStoreInputFormat.java  |  105 --
 .../table/store/mapred/TableStoreInputSplit.java   |  116 --
 .../table/store/mapred/TableStoreOutputFormat.java |   44 -
 .../table/store/mapred/TableStoreRecordReader.java |  122 --
 .../flink/table/store/FileStoreTestUtils.java      |   51 -
 .../SearchArgumentToPredicateConverterTest.java    |  400 ------
 .../table/store/hive/HiveTableSchemaTest.java      |  211 ---
 .../store/hive/RandomGenericRowDataGenerator.java  |  200 ---
 .../hive/TableStoreHiveStorageHandlerITCase.java   |  915 -------------
 .../table/store/hive/TableStoreSerDeTest.java      |   92 --
 .../TableStoreCharObjectInspectorTest.java         |   88 --
 .../TableStoreDateObjectInspectorTest.java         |   79 --
 .../TableStoreDecimalObjectInspectorTest.java      |   84 --
 .../TableStoreListObjectInspectorTest.java         |   65 -
 .../TableStoreMapObjectInspectorTest.java          |   75 --
 .../TableStoreRowDataObjectInspectorTest.java      |  122 --
 .../TableStoreStringObjectInspectorTest.java       |   77 --
 .../TableStoreTimestampObjectInspectorTest.java    |   87 --
 .../TableStoreVarcharObjectInspectorTest.java      |   88 --
 .../store/mapred/TableStoreInputSplitTest.java     |   78 --
 .../store/mapred/TableStoreRecordReaderTest.java   |  200 ---
 flink-table-store-hive/pom.xml                     |   53 -
 flink-table-store-shade/pom.xml                    |  147 --
 .../flink-table-store-spark-2/pom.xml              |  113 --
 .../table/store/spark/SparkDataSourceReader.java   |  141 --
 .../table/store/spark/SparkInputPartition.java     |   88 --
 .../flink/table/store/spark/SparkSource.java       |   62 -
 ...org.apache.spark.sql.sources.DataSourceRegister |   16 -
 .../table/store/spark/SimpleTableTestHelper.java   |   77 --
 .../store/spark/SparkFilterConverterTest.java      |  175 ---
 .../table/store/spark/SparkInternalRowTest.java    |  117 --
 .../flink/table/store/spark/SparkReadITCase.java   |  132 --
 .../flink/table/store/spark/SparkTypeTest.java     |   96 --
 .../flink-table-store-spark-3.1/pom.xml            |   86 --
 .../flink-table-store-spark-3.2/pom.xml            |   86 --
 .../flink-table-store-spark-3.3/pom.xml            |   86 --
 .../flink-table-store-spark-common/pom.xml         |   86 --
 .../flink/table/store/spark/SparkArrayData.java    |  172 ---
 .../flink/table/store/spark/SparkCatalog.java      |  385 ------
 .../table/store/spark/SparkFilterConverter.java    |  146 --
 .../table/store/spark/SparkInputPartition.java     |   39 -
 .../flink/table/store/spark/SparkInternalRow.java  |  239 ----
 .../table/store/spark/SparkReaderFactory.java      |   80 --
 .../apache/flink/table/store/spark/SparkRow.java   |  358 -----
 .../apache/flink/table/store/spark/SparkScan.java  |  127 --
 .../flink/table/store/spark/SparkScanBuilder.java  |   86 --
 .../flink/table/store/spark/SparkSource.java       |   80 --
 .../apache/flink/table/store/spark/SparkTable.java |  128 --
 .../flink/table/store/spark/SparkTypeUtils.java    |  302 -----
 .../apache/flink/table/store/spark/SparkWrite.java |  124 --
 .../flink/table/store/spark/SparkWriteBuilder.java |   46 -
 .../store/spark/SpecializedGettersReader.java      |  109 --
 ...org.apache.spark.sql.sources.DataSourceRegister |   16 -
 .../table/store/spark/MinioTestContainer.java      |  141 --
 .../store/spark/SparkFilterConverterTest.java      |  175 ---
 .../table/store/spark/SparkInternalRowTest.java    |  116 --
 .../flink/table/store/spark/SparkReadITCase.java   |  650 ---------
 .../flink/table/store/spark/SparkReadTestBase.java |  189 ---
 .../flink/table/store/spark/SparkS3ITCase.java     |   99 --
 .../store/spark/SparkSchemaEvolutionITCase.java    |  755 -----------
 .../flink/table/store/spark/SparkTypeTest.java     |  104 --
 .../flink/table/store/spark/SparkWriteITCase.java  |  111 --
 flink-table-store-spark/pom.xml                    |   87 --
 flink-table-store-test-utils/pom.xml               |   63 -
 .../store/testutils/junit/DockerImageVersions.java |   32 -
 .../store/testutils/junit/TestLoggerExtension.java |   83 --
 .../testutils/junit/parameterized/Parameter.java   |   40 -
 .../parameterized/ParameterizedTestExtension.java  |  251 ----
 .../testutils/junit/parameterized/Parameters.java  |   51 -
 .../paimon-cluster-benchmark/README.md             |   66 +
 paimon-benchmark/paimon-cluster-benchmark/pom.xml  |  127 ++
 .../src/main/assemblies/bin.xml                    |   77 ++
 .../org/apache/paimon/benchmark/Benchmark.java     |  217 +++
 .../apache/paimon/benchmark/BenchmarkOptions.java  |   71 +
 .../java/org/apache/paimon/benchmark/Query.java    |  143 ++
 .../org/apache/paimon/benchmark/QueryRunner.java   |  189 +++
 .../java/org/apache/paimon/benchmark/Sink.java     |   84 ++
 .../paimon/benchmark/metric/BenchmarkMetric.java   |   74 ++
 .../paimon/benchmark/metric/FlinkRestClient.java   |  306 +++++
 .../benchmark/metric/JobBenchmarkMetric.java       |   83 ++
 .../paimon/benchmark/metric/MetricReporter.java    |  199 +++
 .../paimon/benchmark/metric/cpu/CpuMetric.java     |  120 ++
 .../benchmark/metric/cpu/CpuMetricReceiver.java    |  165 +++
 .../benchmark/metric/cpu/CpuMetricSender.java      |  188 +++
 .../benchmark/metric/cpu/CpuTimeTracker.java       |  112 ++
 .../benchmark/metric/cpu/OperatingSystem.java      |  151 +++
 .../metric/cpu/ProcfsBasedProcessTree.java         | 1008 ++++++++++++++
 .../benchmark/metric/cpu/ShellCommandExecutor.java |   82 ++
 .../paimon/benchmark/metric/cpu/SysInfoLinux.java  |  664 +++++++++
 .../paimon/benchmark/metric/cpu/clock/Clock.java   |   40 +
 .../benchmark/metric/cpu/clock/SystemClock.java    |   57 +
 .../benchmark/utils/AutoClosableProcess.java       |  240 ++++
 .../utils/BenchmarkGlobalConfiguration.java        |  145 ++
 .../paimon/benchmark/utils/BenchmarkUtils.java     |   90 ++
 .../src/main/resources/bin/config.sh               |    0
 .../src/main/resources/bin/metric_client.sh        |   45 +
 .../src/main/resources/bin/run_benchmark.sh        |   30 +
 .../src/main/resources/bin/setup_cluster.sh        |    0
 .../src/main/resources/bin/shutdown_cluster.sh     |    0
 .../src/main/resources/conf/benchmark.yaml         |    0
 .../src/main/resources/conf/log4j.properties       |    0
 .../src/main/resources/queries/q1.sql              |    0
 .../src/main/resources/queries/queries.yaml        |    0
 .../src/main/resources/sinks/table_store.yaml      |   26 +
 paimon-benchmark/paimon-micro-benchmarks/pom.xml   |  179 +++
 .../org/apache/paimon/benchmark/Benchmark.java     |  237 ++++
 .../apache/paimon/benchmark/TableBenchmark.java    |   87 ++
 .../paimon/benchmark/TableWriterBenchmark.java     |  125 ++
 .../src/test/resources/log4j2-test.properties      |    0
 paimon-benchmark/pom.xml                           |   50 +
 paimon-codegen-loader/pom.xml                      |   91 ++
 .../org/apache/paimon/codegen/CodeGenLoader.java   |   43 +
 paimon-codegen/pom.xml                             |  133 ++
 .../apache/paimon/codegen/CodeGeneratorImpl.java   |   64 +
 .../java/org/apache/paimon/codegen/SortSpec.java   |  156 +++
 .../org.apache.paimon.codegen.CodeGenerator        |   16 +
 .../apache/paimon/codegen/CodeGenException.scala   |   21 +
 .../paimon/codegen/CodeGeneratorContext.scala      |  171 +++
 .../paimon/codegen/ComparatorCodeGenerator.scala   |   73 +
 .../apache/paimon/codegen/ExprCodeGenerator.scala  |  165 +++
 .../org/apache/paimon/codegen/GenerateUtils.scala  |  758 +++++++++++
 .../paimon/codegen/GeneratedExpression.scala       |   45 +
 .../paimon/codegen/ProjectionCodeGenerator.scala   |  139 ++
 .../apache/paimon/codegen/SortCodeGenerator.scala  |  439 ++++++
 paimon-common/pom.xml                              |  275 ++++
 paimon-common/src/main/antlr4/JavaLexer.g4         |  207 +++
 paimon-common/src/main/antlr4/JavaParser.g4        |  635 +++++++++
 .../org/apache/paimon/annotation/ConfigGroup.java  |   29 +
 .../org/apache/paimon/annotation/ConfigGroups.java |   37 +
 .../apache/paimon/annotation/Documentation.java    |   86 ++
 .../org/apache/paimon/annotation/Experimental.java |   43 +
 .../paimon/annotation/VisibleForTesting.java       |   35 +
 .../org/apache/paimon/catalog/CatalogContext.java  |   89 ++
 .../org/apache/paimon/codegen/CodeGenerator.java   |   51 +
 .../org/apache/paimon/codegen/CompileUtils.java    |  137 ++
 .../org/apache/paimon/codegen/GeneratedClass.java  |  117 ++
 .../paimon/codegen/NormalizedKeyComputer.java      |   47 +
 .../java/org/apache/paimon/codegen/Projection.java |   31 +
 .../apache/paimon/codegen/RecordComparator.java    |   34 +
 .../codesplit/AddBoolBeforeReturnRewriter.java     |  183 +++
 .../codegen/codesplit/BlockStatementGrouper.java   |  475 +++++++
 .../codegen/codesplit/BlockStatementRewriter.java  |  250 ++++
 .../codegen/codesplit/BlockStatementSplitter.java  |  275 ++++
 .../paimon/codegen/codesplit/CodeRewriter.java     |   24 +
 .../paimon/codegen/codesplit/CodeSplitUtil.java    |   51 +
 .../codegen/codesplit/DeclarationRewriter.java     |  267 ++++
 .../paimon/codegen/codesplit/FunctionSplitter.java |  270 ++++
 .../paimon/codegen/codesplit/JavaCodeSplitter.java |   57 +
 .../codegen/codesplit/MemberFieldRewriter.java     |  348 +++++
 .../codegen/codesplit/ReturnAndJumpCounter.java    |   38 +
 .../codegen/codesplit/ReturnValueRewriter.java     |  194 +++
 .../apache/paimon/data/AbstractBinaryWriter.java   |  297 +++++
 .../apache/paimon/data/AbstractPagedInputView.java |  552 ++++++++
 .../paimon/data/AbstractPagedOutputView.java       |  417 ++++++
 .../java/org/apache/paimon/data/BinaryArray.java   |  570 ++++++++
 .../org/apache/paimon/data/BinaryArrayWriter.java  |  267 ++++
 .../java/org/apache/paimon/data/BinaryMap.java     |  130 ++
 .../java/org/apache/paimon/data/BinaryRow.java     |  448 +++++++
 .../org/apache/paimon/data/BinaryRowWriter.java    |  125 ++
 .../java/org/apache/paimon/data/BinarySection.java |  135 ++
 .../java/org/apache/paimon/data/BinaryString.java  | 1015 ++++++++++++++
 .../java/org/apache/paimon/data/BinaryWriter.java  |  215 +++
 .../java/org/apache/paimon/data/DataGetters.java   |   89 ++
 .../java/org/apache/paimon/data/DataSetters.java   |   60 +
 .../main/java/org/apache/paimon/data/Decimal.java  |  238 ++++
 .../java/org/apache/paimon/data/GenericArray.java  |  322 +++++
 .../java/org/apache/paimon/data/GenericMap.java    |  130 ++
 .../java/org/apache/paimon/data/GenericRow.java    |  277 ++++
 .../java/org/apache/paimon/data/InternalArray.java |  156 +++
 .../java/org/apache/paimon/data/InternalMap.java   |   55 +
 .../java/org/apache/paimon/data/InternalRow.java   |  239 ++++
 .../java/org/apache/paimon/data/JoinedRow.java     |  261 ++++
 .../org/apache/paimon/data/LazyGenericRow.java     |  171 +++
 .../java/org/apache/paimon/data/NestedRow.java     |  333 +++++
 .../apache/paimon/data/RandomAccessInputView.java  |   89 ++
 .../apache/paimon/data/RandomAccessOutputView.java |   51 +
 .../paimon/data/SimpleCollectingOutputView.java    |   82 ++
 .../java/org/apache/paimon/data/Timestamp.java     |  231 ++++
 .../paimon/data/columnar/ArrayColumnVector.java    |   26 +
 .../paimon/data/columnar/BooleanColumnVector.java  |   24 +
 .../paimon/data/columnar/ByteColumnVector.java     |   24 +
 .../paimon/data/columnar/BytesColumnVector.java    |   49 +
 .../apache/paimon/data/columnar/ColumnVector.java  |   24 +
 .../apache/paimon/data/columnar/ColumnarArray.java |  249 ++++
 .../apache/paimon/data/columnar/ColumnarMap.java   |   78 ++
 .../apache/paimon/data/columnar/ColumnarRow.java   |  224 ++++
 .../paimon/data/columnar/ColumnarRowIterator.java  |   58 +
 .../paimon/data/columnar/DecimalColumnVector.java  |   26 +
 .../apache/paimon/data/columnar/Dictionary.java    |   36 +
 .../paimon/data/columnar/DoubleColumnVector.java   |   24 +
 .../paimon/data/columnar/FloatColumnVector.java    |   24 +
 .../paimon/data/columnar/IntColumnVector.java      |   24 +
 .../paimon/data/columnar/LongColumnVector.java     |   24 +
 .../paimon/data/columnar/MapColumnVector.java      |   26 +
 .../paimon/data/columnar/RowColumnVector.java      |   24 +
 .../paimon/data/columnar/ShortColumnVector.java    |   24 +
 .../data/columnar/TimestampColumnVector.java       |   26 +
 .../data/columnar/VectorizedColumnBatch.java       |  134 ++
 .../data/columnar/heap/AbstractHeapVector.java     |  122 ++
 .../paimon/data/columnar/heap/HeapArrayVector.java |   87 ++
 .../data/columnar/heap/HeapBooleanVector.java      |   61 +
 .../paimon/data/columnar/heap/HeapByteVector.java  |   60 +
 .../paimon/data/columnar/heap/HeapBytesVector.java |  120 ++
 .../data/columnar/heap/HeapDoubleVector.java       |   90 ++
 .../paimon/data/columnar/heap/HeapFloatVector.java |   89 ++
 .../paimon/data/columnar/heap/HeapIntVector.java   |   96 ++
 .../paimon/data/columnar/heap/HeapLongVector.java  |   84 ++
 .../paimon/data/columnar/heap/HeapMapVector.java   |   75 ++
 .../paimon/data/columnar/heap/HeapRowVector.java   |   55 +
 .../paimon/data/columnar/heap/HeapShortVector.java |   60 +
 .../data/columnar/heap/HeapTimestampVector.java    |   60 +
 .../columnar/writable/AbstractWritableVector.java  |   53 +
 .../columnar/writable/WritableBooleanVector.java   |   31 +
 .../data/columnar/writable/WritableByteVector.java |   31 +
 .../columnar/writable/WritableBytesVector.java     |   34 +
 .../columnar/writable/WritableColumnVector.java    |   54 +
 .../columnar/writable/WritableDoubleVector.java    |   41 +
 .../columnar/writable/WritableFloatVector.java     |   41 +
 .../data/columnar/writable/WritableIntVector.java  |   49 +
 .../data/columnar/writable/WritableLongVector.java |   41 +
 .../columnar/writable/WritableShortVector.java     |   31 +
 .../columnar/writable/WritableTimestampVector.java |   32 +
 .../data/serializer/AbstractRowDataSerializer.java |   37 +
 .../data/serializer/BinaryRowSerializer.java       |  296 +++++
 .../paimon/data/serializer/BinarySerializer.java   |   54 +
 .../data/serializer/BinaryStringSerializer.java    |   61 +
 .../paimon/data/serializer/BooleanSerializer.java  |   48 +
 .../paimon/data/serializer/ByteSerializer.java     |   48 +
 .../paimon/data/serializer/DecimalSerializer.java  |   95 ++
 .../paimon/data/serializer/DoubleSerializer.java   |   48 +
 .../paimon/data/serializer/FloatSerializer.java    |   48 +
 .../paimon/data/serializer/IntSerializer.java      |   48 +
 .../data/serializer/InternalArraySerializer.java   |  182 +++
 .../data/serializer/InternalMapSerializer.java     |  210 +++
 .../data/serializer/InternalRowSerializer.java     |  209 +++
 .../data/serializer/InternalSerializers.java       |   95 ++
 .../paimon/data/serializer/ListSerializer.java     |  132 ++
 .../paimon/data/serializer/LongSerializer.java     |   48 +
 .../paimon/data/serializer/NullableSerializer.java |  150 +++
 .../data/serializer/PagedTypeSerializer.java       |   80 ++
 .../data/serializer/RowCompactedSerializer.java    |  627 +++++++++
 .../apache/paimon/data/serializer/Serializer.java  |   68 +
 .../data/serializer/SerializerSingleton.java       |   40 +
 .../paimon/data/serializer/ShortSerializer.java    |   48 +
 .../data/serializer/TimestampSerializer.java       |   94 ++
 .../data/serializer/VersionedSerializer.java       |   53 +
 .../java/org/apache/paimon/format/FieldStats.java  |   74 ++
 .../apache/paimon/format/FieldStatsCollector.java  |   84 ++
 .../java/org/apache/paimon/format/FileFormat.java  |  113 ++
 .../apache/paimon/format/FileFormatFactory.java    |   29 +
 .../apache/paimon/format/FileStatsExtractor.java   |   30 +
 .../apache/paimon/format/FormatReaderFactory.java  |   33 +
 .../org/apache/paimon/format/FormatWriter.java     |   63 +
 .../apache/paimon/format/FormatWriterFactory.java  |   43 +
 .../src/main/java/org/apache/paimon/fs/FileIO.java |  283 ++++
 .../java/org/apache/paimon/fs/FileIOLoader.java    |   34 +
 .../main/java/org/apache/paimon/fs/FileStatus.java |   51 +
 .../src/main/java/org/apache/paimon/fs/Path.java   |  366 +++++
 .../java/org/apache/paimon/fs/PluginFileIO.java    |  115 ++
 .../org/apache/paimon/fs/PositionOutputStream.java |   98 ++
 .../paimon/fs/PositionOutputStreamWrapper.java     |   61 +
 .../org/apache/paimon/fs/SeekableInputStream.java  |   67 +
 .../paimon/fs/SeekableInputStreamWrapper.java      |   56 +
 .../paimon/fs/UnsupportedSchemeException.java      |   53 +
 .../org/apache/paimon/fs/hadoop/HadoopFileIO.java  |  287 ++++
 .../paimon/fs/hadoop/HadoopFileIOLoader.java       |   36 +
 .../org/apache/paimon/fs/local/LocalFileIO.java    |  341 +++++
 .../apache/paimon/fs/local/LocalFileIOLoader.java  |   38 +
 .../paimon/hadoop/SerializableConfiguration.java   |   54 +
 .../apache/paimon/io/DataInputDeserializer.java    |  414 ++++++
 .../java/org/apache/paimon/io/DataInputView.java   |   64 +
 .../org/apache/paimon/io/DataInputViewStream.java  |   66 +
 .../paimon/io/DataInputViewStreamWrapper.java      |   42 +
 .../org/apache/paimon/io/DataOutputSerializer.java |  376 ++++++
 .../java/org/apache/paimon/io/DataOutputView.java  |   51 +
 .../org/apache/paimon/io/DataOutputViewStream.java |   41 +
 .../paimon/io/DataOutputViewStreamWrapper.java     |   60 +
 .../apache/paimon/io/SeekableDataInputView.java    |   33 +
 .../org/apache/paimon/io/cache/CacheManager.java   |  137 ++
 .../paimon/io/cache/CachedRandomInputView.java     |  108 ++
 .../apache/paimon/lookup/LookupStoreFactory.java   |   38 +
 .../apache/paimon/lookup/LookupStoreReader.java    |   29 +
 .../apache/paimon/lookup/LookupStoreWriter.java    |   29 +
 .../paimon/lookup/hash/HashLookupStoreFactory.java |   47 +
 .../paimon/lookup/hash/HashLookupStoreReader.java  |  326 +++++
 .../paimon/lookup/hash/HashLookupStoreWriter.java  |  485 +++++++
 .../org/apache/paimon/memory/MemorySegment.java    |  609 +++++++++
 .../apache/paimon/memory/MemorySegmentSource.java  |   37 +
 .../apache/paimon/memory/MemorySegmentUtils.java   | 1153 ++++++++++++++++
 .../paimon/memory/MemorySegmentWritable.java       |   36 +
 .../java/org/apache/paimon/memory/MemoryUtils.java |  128 ++
 .../org/apache/paimon/options/CatalogOptions.java  |   78 ++
 .../org/apache/paimon/options/ConfigOption.java    |  299 +++++
 .../org/apache/paimon/options/ConfigOptions.java   |  283 ++++
 .../org/apache/paimon/options/FallbackKey.java     |   78 ++
 .../java/org/apache/paimon/options/MemorySize.java |  428 ++++++
 .../java/org/apache/paimon/options/Options.java    |  273 ++++
 .../org/apache/paimon/options/OptionsUtils.java    |  358 +++++
 .../paimon/options/StructuredOptionsSplitter.java  |  211 +++
 .../paimon/options/description/BlockElement.java   |   22 +
 .../paimon/options/description/DescribedEnum.java  |   42 +
 .../paimon/options/description/Description.java    |  120 ++
 .../options/description/DescriptionElement.java    |   29 +
 .../paimon/options/description/Formatter.java      |  109 ++
 .../paimon/options/description/HtmlFormatter.java  |   72 +
 .../paimon/options/description/InlineElement.java  |   22 +
 .../options/description/LineBreakElement.java      |   35 +
 .../paimon/options/description/LinkElement.java    |   64 +
 .../paimon/options/description/ListElement.java    |   58 +
 .../paimon/options/description/TextElement.java    |  101 ++
 .../apache/paimon/plugin/ComponentClassLoader.java |  268 ++++
 .../org/apache/paimon/plugin/PluginLoader.java     |  138 ++
 .../main/java/org/apache/paimon/predicate/And.java |   74 ++
 .../org/apache/paimon/predicate/CompareUtils.java  |   48 +
 .../apache/paimon/predicate/CompoundPredicate.java |  104 ++
 .../java/org/apache/paimon/predicate/Equal.java    |   56 +
 .../java/org/apache/paimon/predicate/FieldRef.java |   76 ++
 .../apache/paimon/predicate/FunctionVisitor.java   |   76 ++
 .../apache/paimon/predicate/GreaterOrEqual.java    |   55 +
 .../org/apache/paimon/predicate/GreaterThan.java   |   55 +
 .../main/java/org/apache/paimon/predicate/In.java  |   77 ++
 .../org/apache/paimon/predicate/IsNotNull.java     |   54 +
 .../java/org/apache/paimon/predicate/IsNull.java   |   54 +
 .../org/apache/paimon/predicate/LeafFunction.java  |   53 +
 .../org/apache/paimon/predicate/LeafPredicate.java |  151 +++
 .../apache/paimon/predicate/LeafUnaryFunction.java |   45 +
 .../org/apache/paimon/predicate/LessOrEqual.java   |   55 +
 .../java/org/apache/paimon/predicate/LessThan.java |   55 +
 .../java/org/apache/paimon/predicate/NotEqual.java |   56 +
 .../java/org/apache/paimon/predicate/NotIn.java    |   77 ++
 .../predicate/NullFalseLeafBinaryFunction.java     |   55 +
 .../main/java/org/apache/paimon/predicate/Or.java  |   74 ++
 .../org/apache/paimon/predicate/Predicate.java     |   55 +
 .../apache/paimon/predicate/PredicateBuilder.java  |  347 +++++
 .../apache/paimon/predicate/PredicateFilter.java   |   48 +
 .../paimon/predicate/PredicateReplaceVisitor.java  |   41 +
 .../apache/paimon/predicate/PredicateVisitor.java  |   27 +
 .../org/apache/paimon/predicate/StartsWith.java    |   63 +
 .../org/apache/paimon/reader/RecordReader.java     |  143 ++
 .../apache/paimon/reader/RecordReaderIterator.java |   97 ++
 .../java/org/apache/paimon/table/TableType.java    |   52 +
 .../java/org/apache/paimon/types/ArrayType.java    |  108 ++
 .../java/org/apache/paimon/types/BigIntType.java   |   58 +
 .../java/org/apache/paimon/types/BinaryType.java   |  102 ++
 .../java/org/apache/paimon/types/BooleanType.java  |   57 +
 .../java/org/apache/paimon/types/CharType.java     |  104 ++
 .../java/org/apache/paimon/types/DataField.java    |  148 +++
 .../java/org/apache/paimon/types/DataType.java     |  179 +++
 .../org/apache/paimon/types/DataTypeCasts.java     |  333 +++++
 .../org/apache/paimon/types/DataTypeChecks.java    |  272 ++++
 .../paimon/types/DataTypeDefaultVisitor.java       |  133 ++
 .../org/apache/paimon/types/DataTypeFamily.java    |   59 +
 .../apache/paimon/types/DataTypeJsonParser.java    |  640 +++++++++
 .../java/org/apache/paimon/types/DataTypeRoot.java |  120 ++
 .../org/apache/paimon/types/DataTypeVisitor.java   |   72 +
 .../java/org/apache/paimon/types/DataTypes.java    |  136 ++
 .../java/org/apache/paimon/types/DateType.java     |   61 +
 .../java/org/apache/paimon/types/DecimalType.java  |  123 ++
 .../java/org/apache/paimon/types/DoubleType.java   |   57 +
 .../java/org/apache/paimon/types/FloatType.java    |   58 +
 .../main/java/org/apache/paimon/types/IntType.java |   57 +
 .../paimon/types/LocalZonedTimestampType.java      |  112 ++
 .../main/java/org/apache/paimon/types/MapType.java |  118 ++
 .../java/org/apache/paimon/types/MultisetType.java |  112 ++
 .../org/apache/paimon/types/ReassignFieldId.java   |   66 +
 .../main/java/org/apache/paimon/types/RowKind.java |  121 ++
 .../main/java/org/apache/paimon/types/RowType.java |  255 ++++
 .../java/org/apache/paimon/types/SmallIntType.java |   57 +
 .../java/org/apache/paimon/types/TimeType.java     |  109 ++
 .../org/apache/paimon/types/TimestampType.java     |  107 ++
 .../java/org/apache/paimon/types/TinyIntType.java  |   57 +
 .../org/apache/paimon/types/VarBinaryType.java     |  107 ++
 .../java/org/apache/paimon/types/VarCharType.java  |  115 ++
 .../java/org/apache/paimon/utils/ArrayUtils.java   |  357 +++++
 .../org/apache/paimon/utils/BinaryRowDataUtil.java |   65 +
 .../org/apache/paimon/utils/CloseableIterator.java |  195 +++
 .../org/apache/paimon/utils/DateTimeUtils.java     |  457 +++++++
 .../java/org/apache/paimon/utils/DecimalUtils.java |  124 ++
 .../org/apache/paimon/utils/EncodingUtils.java     |   39 +
 .../org/apache/paimon/utils/ExceptionUtils.java    |  576 ++++++++
 .../java/org/apache/paimon/utils/FileIOUtils.java  |  345 +++++
 .../main/java/org/apache/paimon/utils/Filter.java  |   37 +
 .../apache/paimon/utils/FunctionWithException.java |   39 +
 .../java/org/apache/paimon/utils/HadoopUtils.java  |  178 +++
 .../java/org/apache/paimon/utils/IOFunction.java   |   31 +
 .../main/java/org/apache/paimon/utils/IOUtils.java |  192 +++
 .../org/apache/paimon/utils/InstantiationUtil.java |  208 +++
 .../paimon/utils/IteratorResultIterator.java       |   46 +
 .../org/apache/paimon/utils/KeyProjectedRow.java   |  157 +++
 .../org/apache/paimon/utils/LocalFileUtils.java    |   50 +
 .../java/org/apache/paimon/utils/LongCounter.java  |   63 +
 .../java/org/apache/paimon/utils/MapBuilder.java   |   38 +
 .../java/org/apache/paimon/utils/MathUtils.java    |   54 +
 .../org/apache/paimon/utils/MurmurHashUtils.java   |  189 +++
 .../org/apache/paimon/utils/OperatingSystem.java   |  151 +++
 .../org/apache/paimon/utils/OrderedPacking.java    |   53 +
 .../main/java/org/apache/paimon/utils/Pair.java    |   98 ++
 .../main/java/org/apache/paimon/utils/Pool.java    |  106 ++
 .../org/apache/paimon/utils/Preconditions.java     |  307 +++++
 .../java/org/apache/paimon/utils/ProjectedRow.java |  232 ++++
 .../java/org/apache/paimon/utils/Projection.java   |  421 ++++++
 .../apache/paimon/utils/RecyclableIterator.java    |   45 +
 .../java/org/apache/paimon/utils/Reference.java    |   61 +
 .../org/apache/paimon/utils/ReflectionUtils.java   |   50 +
 .../utils/RowDataToObjectArrayConverter.java       |   58 +
 .../java/org/apache/paimon/utils/RowDataUtils.java |  329 +++++
 .../apache/paimon/utils/SerializableFunction.java  |   26 +
 .../java/org/apache/paimon/utils/SortUtil.java     |  285 ++++
 .../java/org/apache/paimon/utils/StringUtils.java  |  525 ++++++++
 .../java/org/apache/paimon/utils/ThreadUtils.java  |   47 +
 .../org/apache/paimon/utils/ThrowingConsumer.java  |   38 +
 .../java/org/apache/paimon/utils/TimeUtils.java    |  255 ++++
 .../java/org/apache/paimon/utils/TypeUtils.java    |  206 +++
 .../org/apache/paimon/utils/VarLengthIntUtils.java |  128 ++
 .../src/main/resources/META-INF/NOTICE             |    0
 .../licenses/LICENSE.antlr-java-grammar-files      |    0
 .../META-INF/licenses/LICENSE.antlr-runtime        |    0
 .../services/org.apache.paimon.fs.FileIOLoader     |   17 +
 .../AddBooleanBeforeReturnRewriterTest.java        |   74 ++
 .../codesplit/BlockStatementGrouperTest.java       |  164 +++
 .../codesplit/BlockStatementRewriterTest.java      |   94 ++
 .../codesplit/BlockStatementSplitterTest.java      |   77 ++
 .../codegen/codesplit/CodeRewriterTestBase.java    |   83 ++
 .../codegen/codesplit/CodeSplitTestUtil.java       |  123 ++
 .../codegen/codesplit/DeclarationRewriterTest.java |   59 +
 .../codegen/codesplit/FunctionSplitterTest.java    |   48 +
 .../codegen/codesplit/JavaCodeSplitterTest.java    |  120 ++
 .../paimon/codegen/codesplit/JavaParserTest.java   |   66 +
 .../codegen/codesplit/MemberFieldRewriterTest.java |   58 +
 .../codegen/codesplit/ReturnValueRewriterTest.java |   48 +
 .../java/org/apache/paimon/data/BinaryRowTest.java |  917 +++++++++++++
 .../org/apache/paimon/data/BinaryStringTest.java   |  505 +++++++
 .../org/apache/paimon/data/DataFormatTestUtil.java |  151 +++
 .../java/org/apache/paimon/data/DecimalTest.java   |  115 ++
 .../java/org/apache/paimon/data/MapDataUtil.java   |   47 +
 .../java/org/apache/paimon/data/NestedRowTest.java |  123 ++
 .../java/org/apache/paimon/data/RowDataTest.java   |  242 ++++
 .../java/org/apache/paimon/data/TimestampTest.java |  142 ++
 .../data/serializer/BinarySerializerTest.java      |   64 +
 .../serializer/BinaryStringSerializerTest.java     |   47 +
 .../data/serializer/BooleanSerializerTest.java     |   44 +
 .../paimon/data/serializer/ByteSerializerTest.java |   43 +
 .../data/serializer/DecimalSerializerTest.java     |   45 +
 .../data/serializer/DoubleSerializerTest.java      |   54 +
 .../data/serializer/FloatSerializerTest.java       |   54 +
 .../paimon/data/serializer/IntSerializerTest.java  |   43 +
 .../serializer/InternalArraySerializerTest.java    |  121 ++
 .../data/serializer/InternalMapSerializerTest.java |  145 ++
 .../data/serializer/InternalRowSerializerTest.java |  321 +++++
 .../paimon/data/serializer/ListSerializerTest.java |   70 +
 .../paimon/data/serializer/LongSerializerTest.java |   43 +
 .../data/serializer/NullableSerializerTest.java    |   58 +
 .../serializer/RowCompactedSerializerTest.java     |  222 ++++
 .../paimon/data/serializer/SerializerTestBase.java |  375 ++++++
 .../data/serializer/SerializerTestInstance.java    |   43 +
 .../data/serializer/ShortSerializerTest.java       |   45 +
 .../data/serializer/TimestampSerializerTest.java   |   75 ++
 .../apache/paimon/datagen/DataGenVisitorBase.java  |   83 ++
 .../org/apache/paimon/datagen/DataGenerator.java   |   28 +
 .../paimon/datagen/DataGeneratorContainer.java     |   51 +
 .../apache/paimon/datagen/DataGeneratorMapper.java |   49 +
 .../org/apache/paimon/datagen/RandomGenerator.java |  156 +++
 .../paimon/datagen/RandomGeneratorVisitor.java     |  387 ++++++
 .../apache/paimon/datagen/RowDataGenerator.java    |   58 +
 .../paimon/format/FileStatsExtractorTestBase.java  |  252 ++++
 .../apache/paimon/fs/FileIOBehaviorTestBase.java   |  246 ++++
 .../java/org/apache/paimon/fs/FileIOFinder.java    |   37 +
 .../apache/paimon/fs/HadoopConfigLoadingTest.java  |  330 +++++
 .../paimon/fs/HadoopLocalFileIOBehaviorTest.java   |   64 +
 .../org/apache/paimon/fs/HdfsBehaviorTest.java     |   86 ++
 .../apache/paimon/fs/LocalFileIOBehaviorTest.java  |   38 +
 .../paimon/io/cache/CachedRandomInputViewTest.java |  105 ++
 .../lookup/hash/HashLookupStoreFactoryTest.java    |  439 ++++++
 .../paimon/memory/MemorySegmentTestBase.java       | 1068 +++++++++++++++
 .../memory/OffHeapDirectMemorySegmentTest.java     |   70 +
 .../paimon/memory/OnHeapMemorySegmentTest.java     |   96 ++
 .../org/apache/paimon/types/DataTypeAssert.java    |   75 ++
 .../apache/paimon/types/DataTypeChecksTest.java    |   65 +
 .../org/apache/paimon/types/DataTypesTest.java     |  253 ++++
 .../org/apache/paimon/utils/CommonTestUtils.java   |  231 ++++
 .../apache/paimon/utils/LocalFileUtilsTest.java    |   80 ++
 .../org/apache/paimon/utils/RowDataUtilsTest.java  |  132 ++
 .../java/org/apache/paimon/utils/TempDirUtils.java |  100 ++
 .../code/TestAddBooleanBeforeReturn.java           |    0
 .../codesplit/add-boolean/code/TestNotRewrite.java |    0
 .../add-boolean/code/TestRewriteInnerClass.java    |    0
 .../code/TestSkipAnonymousClassAndLambda.java      |    0
 .../expected/TestAddBooleanBeforeReturn.java       |    0
 .../add-boolean/expected/TestNotRewrite.java       |    0
 .../expected/TestRewriteInnerClass.java            |    0
 .../expected/TestSkipAnonymousClassAndLambda.java  |    0
 .../block/code/TestIfInsideWhileLoopRewrite.java   |    0
 .../TestIfMultipleSingleLineStatementRewrite.java  |    0
 .../block/code/TestIfStatementRewrite.java         |    0
 .../block/code/TestIfStatementRewrite1.java        |    0
 .../block/code/TestIfStatementRewrite2.java        |    0
 .../block/code/TestIfStatementRewrite3.java        |    0
 ...ewriteIfStatementInFunctionWithReturnValue.java |    0
 .../block/code/TestRewriteInnerClass.java          |    0
 .../block/code/TestRewriteTwoStatements.java       |    0
 .../block/code/TestWhileLoopInsideIfRewrite.java   |    0
 .../codesplit/block/code/TestWhileLoopRewrite.java |    0
 .../expected/TestIfInsideWhileLoopRewrite.java     |    0
 .../TestIfMultipleSingleLineStatementRewrite.java  |    0
 .../block/expected/TestIfStatementRewrite.java     |    0
 .../block/expected/TestIfStatementRewrite1.java    |    0
 .../block/expected/TestIfStatementRewrite2.java    |    0
 .../block/expected/TestIfStatementRewrite3.java    |    0
 ...ewriteIfStatementInFunctionWithReturnValue.java |    0
 .../block/expected/TestRewriteInnerClass.java      |    0
 .../block/expected/TestRewriteTwoStatements.java   |    0
 .../expected/TestWhileLoopInsideIfRewrite.java     |    0
 .../block/expected/TestWhileLoopRewrite.java       |    0
 ...LocalVariableAndMemberVariableWithSameName.java |    0
 .../code/TestLocalVariableWithSameName.java        |    0
 ...riteLocalVariableInFunctionWithReturnValue.java |    0
 .../declaration/code/TestRewriteInnerClass.java    |    0
 .../declaration/code/TestRewriteLocalVariable.java |    0
 .../code/TestRewriteLocalVariableInForLoop1.java   |    0
 .../code/TestRewriteLocalVariableInForLoop2.java   |    0
 ...LocalVariableAndMemberVariableWithSameName.java |    0
 .../expected/TestLocalVariableWithSameName.java    |    0
 ...riteLocalVariableInFunctionWithReturnValue.java |    0
 .../expected/TestRewriteInnerClass.java            |    0
 .../expected/TestRewriteLocalVariable.java         |    0
 .../TestRewriteLocalVariableInForLoop1.java        |    0
 .../TestRewriteLocalVariableInForLoop2.java        |    0
 .../TestNotSplitFunctionWithOnlyOneStatement.java  |    0
 .../code/TestNotSplitFunctionWithReturnValue.java  |    0
 .../function/code/TestRewriteInnerClass.java       |    0
 .../codesplit/function/code/TestSplitFunction.java |    0
 .../TestNotSplitFunctionWithOnlyOneStatement.java  |    0
 .../TestNotSplitFunctionWithReturnValue.java       |    0
 .../function/expected/TestRewriteInnerClass.java   |    0
 .../function/expected/TestSplitFunction.java       |    0
 .../resources/codesplit/groups/code/IfInWhile.txt  |    0
 .../resources/codesplit/groups/code/WhileInIf.txt  |    0
 .../codesplit/groups/expected/IfInWhile.txt        |    0
 .../codesplit/groups/expected/WhileInIf.txt        |    0
 .../code/TestNotRewriteFunctionParameter.java      |    0
 .../member/code/TestNotRewriteLocalVariable.java   |    0
 .../member/code/TestNotRewriteMember.java          |    0
 .../member/code/TestRewriteGenericType.java        |    0
 .../member/code/TestRewriteInnerClass.java         |    0
 .../member/code/TestRewriteMemberField.java        |    0
 .../expected/TestNotRewriteFunctionParameter.java  |    0
 .../expected/TestNotRewriteLocalVariable.java      |    0
 .../member/expected/TestNotRewriteMember.java      |    0
 .../member/expected/TestRewriteGenericType.java    |    0
 .../member/expected/TestRewriteInnerClass.java     |    0
 .../member/expected/TestRewriteMemberField.java    |    0
 .../codesplit/return/code/TestNotRewrite.java      |    0
 .../return/code/TestRewriteInnerClass.java         |    0
 .../return/code/TestRewriteReturnValue.java        |    0
 .../code/TestSkipAnonymousClassAndLambda.java      |    0
 .../codesplit/return/expected/TestNotRewrite.java  |    0
 .../return/expected/TestRewriteInnerClass.java     |    0
 .../return/expected/TestRewriteReturnValue.java    |    0
 .../expected/TestSkipAnonymousClassAndLambda.java  |    0
 .../splitter/code/TestNotSplitJavaCode.java        |    0
 .../codesplit/splitter/code/TestSplitJavaCode.java |    0
 .../splitter/expected/TestNotSplitJavaCode.java    |    0
 .../splitter/expected/TestSplitJavaCode.java       |    0
 .../src/test/resources/core-site.xml               |    0
 .../src/test/resources/log4j2-test.properties      |    0
 paimon-core/pom.xml                                |  165 +++
 .../java/org/apache/paimon/AbstractFileStore.java  |  152 +++
 .../org/apache/paimon/AppendOnlyFileStore.java     |   99 ++
 .../main/java/org/apache/paimon/CoreOptions.java   |  981 ++++++++++++++
 .../src/main/java/org/apache/paimon/FileStore.java |   59 +
 .../src/main/java/org/apache/paimon/KeyValue.java  |  223 ++++
 .../java/org/apache/paimon/KeyValueFileStore.java  |  125 ++
 .../java/org/apache/paimon/KeyValueSerializer.java |   88 ++
 .../src/main/java/org/apache/paimon/Snapshot.java  |  402 ++++++
 .../src/main/java/org/apache/paimon/WriteMode.java |   51 +
 .../paimon/append/AppendOnlyCompactManager.java    |  304 +++++
 .../org/apache/paimon/append/AppendOnlyWriter.java |  206 +++
 .../org/apache/paimon/casting/CastExecutor.java    |   32 +
 .../org/apache/paimon/casting/CastExecutors.java   |  261 ++++
 .../org/apache/paimon/casting/CastFieldGetter.java |   39 +
 .../java/org/apache/paimon/casting/CastedRow.java  |  160 +++
 .../org/apache/paimon/catalog/AbstractCatalog.java |  107 ++
 .../java/org/apache/paimon/catalog/Catalog.java    |  272 ++++
 .../org/apache/paimon/catalog/CatalogFactory.java  |  115 ++
 .../org/apache/paimon/catalog/CatalogLock.java     |   42 +
 .../org/apache/paimon/catalog/CatalogUtils.java    |   57 +
 .../apache/paimon/catalog/FileSystemCatalog.java   |  219 +++
 .../paimon/catalog/FileSystemCatalogFactory.java   |   45 +
 .../java/org/apache/paimon/catalog/Identifier.java |  129 ++
 .../org/apache/paimon/codegen/CodeGenUtils.java    |   58 +
 .../paimon/compact/CompactFutureManager.java       |   63 +
 .../org/apache/paimon/compact/CompactManager.java  |   52 +
 .../org/apache/paimon/compact/CompactResult.java   |   70 +
 .../org/apache/paimon/compact/CompactTask.java     |   74 ++
 .../org/apache/paimon/compact/CompactUnit.java     |   55 +
 .../apache/paimon/compact/NoopCompactManager.java  |   70 +
 .../compression/BlockCompressionFactory.java       |   30 +
 .../apache/paimon/compression/BlockCompressor.java |   43 +
 .../paimon/compression/BlockDecompressor.java      |   37 +
 .../compression/BufferCompressionException.java    |   42 +
 .../compression/BufferDecompressionException.java  |   42 +
 .../apache/paimon/compression/CompressorUtils.java |   52 +
 .../compression/Lz4BlockCompressionFactory.java    |   32 +
 .../paimon/compression/Lz4BlockCompressor.java     |   59 +
 .../paimon/compression/Lz4BlockDecompressor.java   |   71 +
 .../apache/paimon/disk/AbstractFileIOChannel.java  |  119 ++
 .../paimon/disk/BufferFileChannelReader.java       |   67 +
 .../org/apache/paimon/disk/BufferFileReader.java   |   37 +
 .../apache/paimon/disk/BufferFileReaderImpl.java   |   46 +
 .../org/apache/paimon/disk/BufferFileWriter.java   |   42 +
 .../apache/paimon/disk/BufferFileWriterImpl.java   |   44 +
 .../apache/paimon/disk/ChannelReaderInputView.java |  102 ++
 .../disk/ChannelReaderInputViewIterator.java       |   72 +
 .../org/apache/paimon/disk/ChannelWithMeta.java    |   45 +
 .../paimon/disk/ChannelWriterOutputView.java       |   98 ++
 .../org/apache/paimon/disk/FileChannelManager.java |   34 +
 .../apache/paimon/disk/FileChannelManagerImpl.java |  127 ++
 .../org/apache/paimon/disk/FileChannelUtil.java    |   57 +
 .../java/org/apache/paimon/disk/FileIOChannel.java |  165 +++
 .../java/org/apache/paimon/disk/IOManager.java     |   50 +
 .../java/org/apache/paimon/disk/IOManagerImpl.java |  124 ++
 .../apache/paimon/format/FileFormatDiscover.java   |   45 +
 .../java/org/apache/paimon/format/FormatKey.java   |   50 +
 .../paimon/io/AbstractFileRecordIterator.java      |   57 +
 .../org/apache/paimon/io/CompactIncrement.java     |   91 ++
 .../java/org/apache/paimon/io/DataFileMeta.java    |  332 +++++
 .../apache/paimon/io/DataFileMetaSerializer.java   |   76 ++
 .../org/apache/paimon/io/DataFilePathFactory.java  |   85 ++
 .../main/java/org/apache/paimon/io/FileWriter.java |  120 ++
 .../paimon/io/KeyValueDataFileRecordReader.java    |  104 ++
 .../apache/paimon/io/KeyValueDataFileWriter.java   |  161 +++
 .../paimon/io/KeyValueFileReaderFactory.java       |  200 +++
 .../paimon/io/KeyValueFileWriterFactory.java       |  176 +++
 .../org/apache/paimon/io/NewFilesIncrement.java    |   81 ++
 .../org/apache/paimon/io/RollingFileWriter.java    |  161 +++
 .../apache/paimon/io/RowDataFileRecordReader.java  |   90 ++
 .../org/apache/paimon/io/RowDataFileWriter.java    |   79 ++
 .../apache/paimon/io/RowDataRollingFileWriter.java |   51 +
 .../org/apache/paimon/io/SingleFileWriter.java     |  156 +++
 .../paimon/io/StatsCollectingSingleFileWriter.java |   79 ++
 .../java/org/apache/paimon/manifest/FileKind.java  |   48 +
 .../paimon/manifest/ManifestCommittable.java       |  121 ++
 .../manifest/ManifestCommittableSerializer.java    |  106 ++
 .../org/apache/paimon/manifest/ManifestEntry.java  |  210 +++
 .../paimon/manifest/ManifestEntrySerializer.java   |   75 ++
 .../org/apache/paimon/manifest/ManifestFile.java   |  198 +++
 .../apache/paimon/manifest/ManifestFileMeta.java   |  188 +++
 .../manifest/ManifestFileMetaSerializer.java       |   71 +
 .../org/apache/paimon/manifest/ManifestList.java   |  135 ++
 .../main/java/org/apache/paimon/memory/Buffer.java |   69 +
 .../paimon/memory/HeapMemorySegmentPool.java       |   66 +
 .../java/org/apache/paimon/memory/MemoryOwner.java |   32 +
 .../apache/paimon/memory/MemoryPoolFactory.java    |  107 ++
 .../apache/paimon/memory/MemorySegmentPool.java    |   56 +
 .../apache/paimon/mergetree/DataFileReader.java    |   68 +
 .../apache/paimon/mergetree/DropDeleteReader.java  |   77 ++
 .../apache/paimon/mergetree/LevelSortedRun.java    |   64 +
 .../java/org/apache/paimon/mergetree/Levels.java   |  196 +++
 .../org/apache/paimon/mergetree/LookupLevels.java  |  264 ++++
 .../apache/paimon/mergetree/MergeTreeReaders.java  |   94 ++
 .../apache/paimon/mergetree/MergeTreeWriter.java   |  319 +++++
 .../paimon/mergetree/SortBufferWriteBuffer.java    |  296 +++++
 .../org/apache/paimon/mergetree/SortedRun.java     |  112 ++
 .../org/apache/paimon/mergetree/WriteBuffer.java   |   76 ++
 .../mergetree/compact/AbstractCompactRewriter.java |   48 +
 .../compact/ChangelogMergeTreeRewriter.java        |  128 ++
 .../paimon/mergetree/compact/ChangelogResult.java  |   68 +
 .../paimon/mergetree/compact/CompactRewriter.java  |   35 +
 .../paimon/mergetree/compact/CompactStrategy.java  |   51 +
 .../mergetree/compact/ConcatRecordReader.java      |   84 ++
 .../compact/DeduplicateMergeFunction.java          |   64 +
 .../mergetree/compact/ForceUpLevel0Compaction.java |   57 +
 .../compact/FullChangelogMergeFunctionWrapper.java |  130 ++
 .../FullChangelogMergeTreeCompactRewriter.java     |   72 +
 .../mergetree/compact/IntervalPartition.java       |  126 ++
 .../LookupChangelogMergeFunctionWrapper.java       |  142 ++
 .../paimon/mergetree/compact/LookupCompaction.java |   59 +
 .../mergetree/compact/LookupMergeFunction.java     |   99 ++
 .../compact/LookupMergeTreeCompactRewriter.java    |   93 ++
 .../paimon/mergetree/compact/MergeFunction.java    |   41 +
 .../mergetree/compact/MergeFunctionFactory.java    |   34 +
 .../mergetree/compact/MergeFunctionWrapper.java    |   38 +
 .../mergetree/compact/MergeTreeCompactManager.java |  199 +++
 .../compact/MergeTreeCompactRewriter.java          |   72 +
 .../mergetree/compact/MergeTreeCompactTask.java    |  133 ++
 .../compact/PartialUpdateMergeFunction.java        |  127 ++
 .../compact/ReducerMergeFunctionWrapper.java       |   74 ++
 .../paimon/mergetree/compact/SortMergeReader.java  |  205 +++
 .../mergetree/compact/UniversalCompaction.java     |  182 +++
 .../mergetree/compact/ValueCountMergeFunction.java |   89 ++
 .../compact/aggregate/AggregateMergeFunction.java  |  160 +++
 .../compact/aggregate/FieldAggregator.java         |   94 ++
 .../compact/aggregate/FieldBoolAndAgg.java         |   54 +
 .../compact/aggregate/FieldBoolOrAgg.java          |   54 +
 .../compact/aggregate/FieldIgnoreRetractAgg.java   |   45 +
 .../aggregate/FieldLastNonNullValueAgg.java        |   41 +
 .../compact/aggregate/FieldLastValueAgg.java       |   41 +
 .../compact/aggregate/FieldListaggAgg.java         |   65 +
 .../mergetree/compact/aggregate/FieldMaxAgg.java   |   55 +
 .../mergetree/compact/aggregate/FieldMinAgg.java   |   55 +
 .../compact/aggregate/FieldPrimaryKeyAgg.java      |   46 +
 .../mergetree/compact/aggregate/FieldSumAgg.java   |  159 +++
 .../paimon/operation/AbstractFileStoreScan.java    |  338 +++++
 .../paimon/operation/AbstractFileStoreWrite.java   |  402 ++++++
 .../paimon/operation/AppendOnlyFileStoreRead.java  |  148 +++
 .../paimon/operation/AppendOnlyFileStoreScan.java  |   97 ++
 .../paimon/operation/AppendOnlyFileStoreWrite.java |  155 +++
 .../apache/paimon/operation/FileStoreCommit.java   |   75 ++
 .../paimon/operation/FileStoreCommitImpl.java      |  799 +++++++++++
 .../apache/paimon/operation/FileStoreExpire.java   |   29 +
 .../paimon/operation/FileStoreExpireImpl.java      |  330 +++++
 .../org/apache/paimon/operation/FileStoreRead.java |   38 +
 .../org/apache/paimon/operation/FileStoreScan.java |   87 ++
 .../apache/paimon/operation/FileStoreWrite.java    |   99 ++
 .../paimon/operation/KeyValueFileStoreRead.java    |  223 ++++
 .../paimon/operation/KeyValueFileStoreScan.java    |  100 ++
 .../paimon/operation/KeyValueFileStoreWrite.java   |  236 ++++
 .../java/org/apache/paimon/operation/Lock.java     |  126 ++
 .../paimon/operation/MemoryFileStoreWrite.java     |   93 ++
 .../apache/paimon/operation/PartitionExpire.java   |  125 ++
 .../org/apache/paimon/operation/ReverseReader.java |   76 ++
 .../java/org/apache/paimon/operation/ScanKind.java |   29 +
 .../paimon/partition/PartitionTimeExtractor.java   |  125 ++
 .../apache/paimon/predicate/BucketSelector.java    |  163 +++
 .../org/apache/paimon/schema/IndexCastMapping.java |   32 +
 .../paimon/schema/KeyValueFieldsExtractor.java     |   43 +
 .../main/java/org/apache/paimon/schema/Schema.java |  276 ++++
 .../org/apache/paimon/schema/SchemaChange.java     |  426 ++++++
 .../apache/paimon/schema/SchemaEvolutionUtil.java  |  464 +++++++
 .../org/apache/paimon/schema/SchemaManager.java    |  468 +++++++
 .../org/apache/paimon/schema/SchemaSerializer.java |  123 ++
 .../org/apache/paimon/schema/SchemaValidation.java |  192 +++
 .../org/apache/paimon/schema/SystemColumns.java    |   35 +
 .../java/org/apache/paimon/schema/TableSchema.java |  249 ++++
 .../paimon/sort/AbstractBinaryExternalMerger.java  |  223 ++++
 .../apache/paimon/sort/BinaryExternalMerger.java   |   92 ++
 .../paimon/sort/BinaryExternalSortBuffer.java      |  207 +++
 .../paimon/sort/BinaryInMemorySortBuffer.java      |  259 ++++
 .../apache/paimon/sort/BinaryIndexedSortable.java  |  253 ++++
 .../apache/paimon/sort/BinaryMergeIterator.java    |   96 ++
 .../main/java/org/apache/paimon/sort/HeapSort.java |   66 +
 .../org/apache/paimon/sort/IndexedSortable.java    |   76 ++
 .../java/org/apache/paimon/sort/IndexedSorter.java |   35 +
 .../paimon/sort/PartialOrderPriorityQueue.java     |  195 +++
 .../java/org/apache/paimon/sort/QuickSort.java     |  330 +++++
 .../java/org/apache/paimon/sort/SortBuffer.java    |   44 +
 .../apache/paimon/sort/SpillChannelManager.java    |   95 ++
 .../org/apache/paimon/stats/BinaryTableStats.java  |  138 ++
 .../paimon/stats/FieldStatsArraySerializer.java    |  137 ++
 .../apache/paimon/stats/FieldStatsConverters.java  |   75 ++
 .../paimon/table/AbstractFileStoreTable.java       |  182 +++
 .../paimon/table/AppendOnlyFileStoreTable.java     |  137 ++
 .../table/ChangelogValueCountFileStoreTable.java   |  192 +++
 .../table/ChangelogWithKeyFileStoreTable.java      |  257 ++++
 .../java/org/apache/paimon/table/DataTable.java    |   47 +
 .../org/apache/paimon/table/FileStoreTable.java    |   70 +
 .../apache/paimon/table/FileStoreTableFactory.java |   88 ++
 .../java/org/apache/paimon/table/InnerTable.java   |   60 +
 .../org/apache/paimon/table/ReadonlyTable.java     |   69 +
 .../org/apache/paimon/table/SupportsPartition.java |   27 +
 .../main/java/org/apache/paimon/table/Table.java   |   55 +
 .../java/org/apache/paimon/table/TableUtils.java   |   69 +
 .../apache/paimon/table/sink/BatchTableCommit.java |   53 +
 .../apache/paimon/table/sink/BatchTableWrite.java  |   39 +
 .../paimon/table/sink/BatchWriteBuilder.java       |   83 ++
 .../paimon/table/sink/BatchWriteBuilderImpl.java   |   71 +
 .../apache/paimon/table/sink/BucketComputer.java   |  110 ++
 .../apache/paimon/table/sink/CommitMessage.java    |   39 +
 .../paimon/table/sink/CommitMessageImpl.java       |  130 ++
 .../paimon/table/sink/CommitMessageSerializer.java |  121 ++
 .../apache/paimon/table/sink/InnerTableCommit.java |   56 +
 .../apache/paimon/table/sink/InnerTableWrite.java  |   25 +
 .../paimon/table/sink/PartitionComputer.java       |   43 +
 .../paimon/table/sink/SequenceGenerator.java       |  138 ++
 .../org/apache/paimon/table/sink/SinkRecord.java   |   62 +
 .../paimon/table/sink/SinkRecordConverter.java     |   98 ++
 .../paimon/table/sink/StreamTableCommit.java       |   64 +
 .../apache/paimon/table/sink/StreamTableWrite.java |   44 +
 .../paimon/table/sink/StreamWriteBuilder.java      |   61 +
 .../paimon/table/sink/StreamWriteBuilderImpl.java  |   69 +
 .../org/apache/paimon/table/sink/TableCommit.java  |   34 +
 .../apache/paimon/table/sink/TableCommitImpl.java  |  160 +++
 .../org/apache/paimon/table/sink/TableWrite.java   |   57 +
 .../apache/paimon/table/sink/TableWriteImpl.java   |  143 ++
 .../org/apache/paimon/table/sink/WriteBuilder.java |   46 +
 .../paimon/table/source/AbstractDataTableScan.java |  123 ++
 .../table/source/AppendOnlySplitGenerator.java     |   43 +
 .../paimon/table/source/BatchDataTableScan.java    |   39 +
 .../table/source/BatchDataTableScanImpl.java       |   66 +
 .../org/apache/paimon/table/source/DataSplit.java  |  181 +++
 .../apache/paimon/table/source/DataTableScan.java  |   61 +
 .../paimon/table/source/EndOfScanException.java    |   36 +
 .../paimon/table/source/InnerStreamTableScan.java  |   22 +
 .../apache/paimon/table/source/InnerTableRead.java |   49 +
 .../apache/paimon/table/source/InnerTableScan.java |   37 +
 .../paimon/table/source/KeyValueTableRead.java     |   70 +
 .../table/source/MergeTreeSplitGenerator.java      |  106 ++
 .../apache/paimon/table/source/ReadBuilder.java    |  126 ++
 .../paimon/table/source/ReadBuilderImpl.java       |  108 ++
 .../paimon/table/source/ReadOnceTableScan.java     |   37 +
 .../table/source/ResetRowKindRecordIterator.java   |   58 +
 .../java/org/apache/paimon/table/source/Split.java |   34 +
 .../apache/paimon/table/source/SplitGenerator.java |   29 +
 .../paimon/table/source/StreamDataTableScan.java   |   86 ++
 .../table/source/StreamDataTableScanImpl.java      |  191 +++
 .../paimon/table/source/StreamTableScan.java       |   30 +
 .../org/apache/paimon/table/source/TableRead.java  |   52 +
 .../org/apache/paimon/table/source/TableScan.java  |   46 +
 .../paimon/table/source/TableStreamingReader.java  |  118 ++
 .../source/ValueContentRowDataRecordIterator.java  |   45 +
 .../source/ValueCountRowDataRecordIterator.java    |   65 +
 .../snapshot/BoundedWatermarkFollowUpScanner.java  |   58 +
 .../source/snapshot/CompactedStartingScanner.java  |   48 +
 .../CompactionChangelogFollowUpScanner.java        |   57 +
 .../ContinuousCompactorFollowUpScanner.java        |   53 +
 .../ContinuousCompactorStartingScanner.java        |   58 +
 .../ContinuousFromSnapshotStartingScanner.java     |   52 +
 .../ContinuousFromTimestampStartingScanner.java    |   54 +
 .../snapshot/ContinuousLatestStartingScanner.java  |   48 +
 .../source/snapshot/DeltaFollowUpScanner.java      |   53 +
 .../table/source/snapshot/FollowUpScanner.java     |   45 +
 .../table/source/snapshot/FullStartingScanner.java |   48 +
 .../snapshot/InputChangelogFollowUpScanner.java    |   53 +
 .../table/source/snapshot/SnapshotSplitReader.java |   93 ++
 .../source/snapshot/SnapshotSplitReaderImpl.java   |  197 +++
 .../table/source/snapshot/StartingScanner.java     |   34 +
 .../StaticFromSnapshotStartingScanner.java         |   48 +
 .../StaticFromTimestampStartingScanner.java        |   60 +
 .../apache/paimon/table/system/AuditLogTable.java  |  423 ++++++
 .../apache/paimon/table/system/BucketsTable.java   |  184 +++
 .../org/apache/paimon/table/system/FilesTable.java |  401 ++++++
 .../apache/paimon/table/system/OptionsTable.java   |  196 +++
 .../apache/paimon/table/system/SchemasTable.java   |  209 +++
 .../apache/paimon/table/system/SnapshotsTable.java |  222 ++++
 .../paimon/table/system/SystemTableLoader.java     |   55 +
 .../org/apache/paimon/utils/BulkFormatMapping.java |  164 +++
 .../org/apache/paimon/utils/CommitIncrement.java   |   47 +
 .../apache/paimon/utils/ExecutorThreadFactory.java |  150 +++
 .../paimon/utils/FatalExitExceptionHandler.java    |   50 +
 .../apache/paimon/utils/FileStorePathFactory.java  |  131 ++
 .../java/org/apache/paimon/utils/FileUtils.java    |  110 ++
 .../apache/paimon/utils/IteratorRecordReader.java  |   68 +
 .../org/apache/paimon/utils/JsonDeserializer.java  |   27 +
 .../org/apache/paimon/utils/JsonSerdeUtil.java     |  118 ++
 .../org/apache/paimon/utils/JsonSerializer.java    |   29 +
 .../apache/paimon/utils/KeyComparatorSupplier.java |   46 +
 .../apache/paimon/utils/MutableObjectIterator.java |   57 +
 .../org/apache/paimon/utils/ObjectSerializer.java  |  115 ++
 .../java/org/apache/paimon/utils/OffsetRow.java    |  137 ++
 .../apache/paimon/utils/PartitionPathUtils.java    |  123 ++
 .../java/org/apache/paimon/utils/RecordWriter.java |   71 +
 .../java/org/apache/paimon/utils/Restorable.java   |   34 +
 .../paimon/utils/RowDataPartitionComputer.java     |   63 +
 .../apache/paimon/utils/SerializableSupplier.java  |   30 +
 .../apache/paimon/utils/SerializationUtils.java    |  106 ++
 .../org/apache/paimon/utils/SnapshotManager.java   |  256 ++++
 .../paimon/utils/VersionedObjectSerializer.java    |   67 +
 .../org.apache.paimon.catalog.CatalogFactory       |   16 +
 .../java/org/apache/paimon/CoreOptionsTest.java    |   61 +
 .../java/org/apache/paimon/FileFormatTest.java     |   93 ++
 .../org/apache/paimon/KeyValueSerializerTest.java  |   70 +
 .../test/java/org/apache/paimon/TestFileStore.java |  553 ++++++++
 .../org/apache/paimon/TestKeyValueGenerator.java   |  371 ++++++
 .../append/AppendOnlyCompactManagerTest.java       |  221 +++
 .../apache/paimon/append/AppendOnlyWriterTest.java |  366 +++++
 .../paimon/append/IterativeCompactTaskTest.java    |  305 +++++
 .../apache/paimon/casting/CastExecutorTest.java    |  267 ++++
 .../apache/paimon/catalog/CatalogFactoryTest.java  |   86 ++
 .../paimon/disk/BufferFileWriterReaderTest.java    |  174 +++
 .../java/org/apache/paimon/disk/IOManagerTest.java |   74 ++
 .../apache/paimon/format/FileFormatSuffixTest.java |   90 ++
 .../format/FileStatsExtractingAvroFormat.java      |   56 +
 .../FileStatsExtractingAvroFormatFactory.java      |   35 +
 .../apache/paimon/format/FlushingFileFormat.java   |   70 +
 .../paimon/io/DataFileMetaSerializerTest.java      |   39 +
 .../apache/paimon/io/DataFilePathFactoryTest.java  |   85 ++
 .../paimon/io/DataFileTestDataGenerator.java       |  188 +++
 .../org/apache/paimon/io/DataFileTestUtils.java    |  104 ++
 .../paimon/io/KeyValueFileReadWriteTest.java       |  374 ++++++
 .../apache/paimon/io/RollingFileWriterTest.java    |   98 ++
 .../ManifestCommittableSerializerTest.java         |  117 ++
 .../manifest/ManifestEntrySerializerTest.java      |   38 +
 .../manifest/ManifestFileMetaSerializerTest.java   |   47 +
 .../paimon/manifest/ManifestFileMetaTest.java      |  255 ++++
 .../apache/paimon/manifest/ManifestFileTest.java   |  134 ++
 .../apache/paimon/manifest/ManifestListTest.java   |  104 ++
 .../paimon/manifest/ManifestTestDataGenerator.java |  181 +++
 .../paimon/memory/MemoryPoolFactoryTest.java       |   57 +
 .../org/apache/paimon/mergetree/LevelsTest.java    |   73 +
 .../apache/paimon/mergetree/LookupLevelsTest.java  |  278 ++++
 .../org/apache/paimon/mergetree/MergeTreeTest.java |  508 +++++++
 .../mergetree/SortBufferWriteBufferTestBase.java   |  179 +++
 .../compact/CombiningRecordReaderTestBase.java     |  106 ++
 .../mergetree/compact/ConcatRecordReaderTest.java  |   67 +
 .../compact/ForceUpLevel0CompactionTest.java       |   64 +
 .../FullChangelogMergeFunctionWrapperTestBase.java |  170 +++
 .../mergetree/compact/IntervalPartitionTest.java   |  197 +++
 .../LookupChangelogMergeFunctionWrapperTest.java   |  206 +++
 .../mergetree/compact/MergeFunctionTestUtils.java  |   89 ++
 .../compact/MergeTreeCompactManagerTest.java       |  305 +++++
 .../ReducerMergeFunctionWrapperTestBase.java       |  129 ++
 .../mergetree/compact/SortMergeReaderTestBase.java |  126 ++
 .../mergetree/compact/UniversalCompactionTest.java |  298 +++++
 .../compact/aggregate/FieldAggregatorTest.java     |  182 +++
 .../operation/CleanedFileStoreExpireTest.java      |  214 +++
 .../paimon/operation/FileStoreCommitTest.java      |  658 +++++++++
 .../paimon/operation/FileStoreExpireTestBase.java  |  121 ++
 .../operation/KeyValueFileStoreReadTest.java       |  289 ++++
 .../operation/KeyValueFileStoreScanTest.java       |  257 ++++
 .../paimon/operation/PartitionExpireTest.java      |  147 ++
 .../apache/paimon/operation/TestCommitThread.java  |  282 ++++
 .../operation/UncleanedFileStoreExpireTest.java    |   82 ++
 .../partition/PartitionTimeExtractorTest.java      |   90 ++
 .../paimon/predicate/BucketSelectorTest.java       |  152 +++
 .../paimon/predicate/PredicateBuilderTest.java     |   99 ++
 .../org/apache/paimon/predicate/PredicateTest.java |  524 ++++++++
 .../paimon/schema/DataTypeJsonParserTest.java      |  242 ++++
 .../paimon/schema/SchemaEvolutionUtilTest.java     |  312 +++++
 .../apache/paimon/schema/SchemaManagerTest.java    |  309 +++++
 .../java/org/apache/paimon/schema/SchemaUtils.java |   94 ++
 .../schema/TableSchemaSerializationTest.java       |   66 +
 .../org/apache/paimon/schema/TableSchemaTest.java  |   78 ++
 .../paimon/sort/BinaryExternalSortBufferTest.java  |  318 +++++
 .../paimon/sort/IntNormalizedKeyComputer.java      |   87 ++
 .../apache/paimon/sort/IntRecordComparator.java    |   50 +
 .../apache/paimon/stats/BinaryTableStatsTest.java  |   92 ++
 .../stats/FieldStatsArraySerializerTest.java       |   96 ++
 .../paimon/stats/FieldStatsCollectorTest.java      |   97 ++
 .../org/apache/paimon/stats/StatsTestUtils.java    |   89 ++
 .../paimon/stats/TestFileStatsExtractor.java       |   79 ++
 .../paimon/table/AppendOnlyFileDataTableTest.java  |   41 +
 .../paimon/table/AppendOnlyFileStoreTableTest.java |  305 +++++
 .../AppendOnlyTableColumnTypeFileDataTest.java     |   47 +
 .../AppendOnlyTableColumnTypeFileMetaTest.java     |   55 +
 .../table/AppendOnlyTableFileMetaFilterTest.java   |   55 +
 .../ChangelogValueCountColumnTypeFileDataTest.java |   56 +
 .../ChangelogValueCountColumnTypeFileMetaTest.java |   63 +
 .../ChangelogValueCountFileDataTableTest.java      |   56 +
 .../ChangelogValueCountFileMetaFilterTest.java     |   63 +
 .../ChangelogValueCountFileStoreTableTest.java     |  227 ++++
 .../ChangelogWithKeyColumnTypeFileDataTest.java    |  108 ++
 .../table/ChangelogWithKeyFileDataTableTest.java   |  254 ++++
 .../table/ChangelogWithKeyFileMetaFilterTest.java  |  162 +++
 .../table/ChangelogWithKeyFileStoreTableTest.java  |  840 ++++++++++++
 ...hangelogWithKeyTableColumnTypeFileMetaTest.java |  156 +++
 .../paimon/table/ColumnTypeFileDataTestBase.java   |  192 +++
 .../paimon/table/ColumnTypeFileMetaTestBase.java   |  341 +++++
 .../paimon/table/FileDataFilterTestBase.java       |  457 +++++++
 .../paimon/table/FileMetaFilterTestBase.java       |  322 +++++
 .../paimon/table/FileStoreTableTestBase.java       |  498 +++++++
 .../paimon/table/SchemaEvolutionTableTestBase.java |  528 ++++++++
 .../apache/paimon/table/SchemaEvolutionTest.java   |  362 +++++
 .../paimon/table/WritePreemptMemoryTest.java       |  110 ++
 .../table/sink/CommitMessageSerializerTest.java    |   45 +
 .../paimon/table/sink/SinkRecordConverterTest.java |  102 ++
 .../apache/paimon/table/sink/TableWriteTest.java   |  186 +++
 .../table/source/BatchDataTableScanTest.java       |   69 +
 .../source/RowDataRecordIteratorTestBase.java      |   92 ++
 .../paimon/table/source/SplitGeneratorTest.java    |   93 ++
 .../org/apache/paimon/table/source/SplitTest.java  |   60 +
 .../table/source/StreamDataTableScanTest.java      |  169 +++
 .../ValueContentRowDataRecordIteratorTest.java     |   50 +
 .../ValueCountRowDataRecordIteratorTest.java       |   94 ++
 .../BoundedWatermarkFollowUpScannerTest.java       |   53 +
 .../snapshot/CompactedStartingScannerTest.java     |   94 ++
 .../CompactionChangelogFollowUpScannerTest.java    |  109 ++
 .../ContinuousCompactorFollowUpScannerTest.java    |  125 ++
 .../ContinuousCompactorStartingScannerTest.java    |   76 ++
 ...ContinuousFromTimestampStartingScannerTest.java |  102 ++
 .../ContinuousLatestStartingScannerTest.java       |   66 +
 .../source/snapshot/DeltaFollowUpScannerTest.java  |   83 ++
 .../source/snapshot/FullStartingScannerTest.java   |   69 +
 .../InputChangelogFollowUpScannerTest.java         |   94 ++
 .../table/source/snapshot/ScannerTestBase.java     |  139 ++
 .../org/apache/paimon/utils/BlockingIterator.java  |  118 ++
 .../paimon/utils/CompatibilityTestUtils.java       |   62 +
 .../org/apache/paimon/utils/FailingFileIO.java     |  214 +++
 .../paimon/utils/FileStorePathFactoryTest.java     |  115 ++
 .../paimon/utils/ObjectSerializerTestBase.java     |   63 +
 .../org/apache/paimon/utils/OffsetRowTest.java     |  146 ++
 .../org/apache/paimon/utils/ReusingKeyValue.java   |   52 +
 .../org/apache/paimon/utils/ReusingTestData.java   |  151 +++
 .../apache/paimon/utils/SnapshotManagerTest.java   |   42 +
 .../paimon/utils/TestReusingRecordReader.java      |  118 ++
 .../org/apache/paimon/utils/TraceableFileIO.java   |  277 ++++
 .../org.apache.paimon.format.FileFormatFactory     |   16 +
 .../services/org.apache.paimon.fs.FileIOLoader     |   17 +
 .../compatibility/table-changelog-0.2.zip          |  Bin
 .../src/test/resources/log4j2-test.properties      |    0
 paimon-docs/README.md                              |   36 +
 paimon-docs/pom.xml                                |  151 +++
 .../configuration/ConfigOptionsDocGenerator.java   |  631 +++++++++
 .../docs/configuration/OptionsClassLocation.java   |   46 +
 .../java/org/apache/paimon/docs/util/Utils.java    |   36 +
 paimon-docs/src/main/resources/log4j.properties    |   24 +
 .../ConfigOptionsDocGeneratorTest.java             |  610 +++++++++
 .../ConfigOptionsDocsCompletenessITCase.java       |  376 ++++++
 .../docs/configuration/data/TestCommonOptions.java |   51 +
 paimon-e2e-tests/pom.xml                           |  200 +++
 .../org/apache/paimon/tests/E2eQueryExecutor.java  |   24 +
 .../org/apache/paimon/tests/E2eReaderTestBase.java |  109 ++
 .../java/org/apache/paimon/tests/E2eTestBase.java  |  327 +++++
 .../apache/paimon/tests/FileStoreBatchE2eTest.java |  187 +++
 .../tests/FileStoreBuiltInFormatE2eTest.java       |  128 ++
 .../paimon/tests/FileStoreStreamE2eTest.java       |  125 ++
 .../apache/paimon/tests/FlinkActionsE2eTest.java   |  336 +++++
 .../java/org/apache/paimon/tests/HiveE2eTest.java  |  128 ++
 .../org/apache/paimon/tests/LogStoreE2eTest.java   |  135 ++
 .../java/org/apache/paimon/tests/SparkE2eTest.java |   84 ++
 .../java/org/apache/paimon/tests/TypeE2eTest.java  |  218 +++
 .../paimon/tests/utils/ParameterProperty.java      |   43 +
 .../org/apache/paimon/tests/utils/TestUtils.java   |   82 ++
 .../test/resources-filtered/docker-compose.yaml    |  208 +++
 .../src/test/resources/flink.env                   |    0
 .../src/test/resources/hadoop-hive.env             |    0
 .../src/test/resources/log4j2-test.properties      |    0
 paimon-filesystems/paimon-hadoop-shaded/pom.xml    |  268 ++++
 .../src/main/resources/META-INF/NOTICE             |   54 +
 .../main/resources/META-INF/licenses/LICENSE-re2j  |    0
 .../resources/META-INF/licenses/LICENSE-stax2api   |    0
 paimon-filesystems/paimon-oss-impl/pom.xml         |  151 +++
 .../apache/paimon/oss/HadoopCompliantFileIO.java   |  270 ++++
 .../main/java/org/apache/paimon/oss/OSSFileIO.java |  160 +++
 .../src/main/resources/META-INF/NOTICE             |   32 +
 .../main/resources/META-INF/licenses/LICENSE.jdom  |    0
 paimon-filesystems/paimon-oss/pom.xml              |   88 ++
 .../main/java/org/apache/paimon/oss/OSSLoader.java |   78 ++
 .../services/org.apache.paimon.fs.FileIOLoader     |   16 +
 paimon-filesystems/paimon-s3-impl/pom.xml          |  392 ++++++
 .../s3/model/transform/XmlResponsesSaxParser.java  |    0
 .../apache/paimon/s3/HadoopCompliantFileIO.java    |  270 ++++
 .../main/java/org/apache/paimon/s3/S3FileIO.java   |  163 +++
 .../src/main/resources/META-INF/NOTICE             |   82 ++
 .../main/resources/META-INF/licenses/LICENSE-re2j  |    0
 .../resources/META-INF/licenses/LICENSE-stax2api   |    0
 .../main/resources/META-INF/licenses/LICENSE.jaxb  |    0
 paimon-filesystems/paimon-s3/pom.xml               |   88 ++
 .../main/java/org/apache/paimon/s3/S3Loader.java   |   78 ++
 .../services/org.apache.paimon.fs.FileIOLoader     |   16 +
 paimon-filesystems/pom.xml                         |   47 +
 paimon-flink/paimon-flink-1.14/pom.xml             |  159 +++
 .../paimon/flink/PaimonDataStreamScanProvider.java |   49 +
 .../paimon/flink/PaimonDataStreamSinkProvider.java |   41 +
 .../org/apache/paimon/flink/TableConfigUtils.java  |   30 +
 .../flink/lookup/LookupRuntimeProviderFactory.java |   30 +
 .../paimon/flink/lookup/OldLookupFunction.java     |   52 +
 .../utils/StreamExecutionEnvironmentUtils.java     |   48 +
 .../paimon/flink/utils/TableEnvironmentUtils.java  |   66 +
 .../apache/paimon/flink/BatchFileStoreITCase.java  |  148 +++
 .../org/apache/paimon/flink/CatalogITCaseBase.java |  150 +++
 .../paimon/flink/ContinuousFileStoreITCase.java    |  500 +++++++
 .../org/apache/paimon/flink/FlinkActionITCase.java |   63 +
 .../org/apache/paimon/flink/LookupJoinITCase.java  |   76 ++
 .../src/test/resources/log4j2-test.properties      |    0
 paimon-flink/paimon-flink-1.15/pom.xml             |  165 +++
 .../flink/lookup/LookupRuntimeProviderFactory.java |   30 +
 .../paimon/flink/lookup/OldLookupFunction.java     |   52 +
 .../apache/paimon/flink/BatchFileStoreITCase.java  |  148 +++
 .../org/apache/paimon/flink/CatalogITCaseBase.java |  150 +++
 .../paimon/flink/ContinuousFileStoreITCase.java    |  500 +++++++
 .../org/apache/paimon/flink/FlinkActionITCase.java |   63 +
 .../org/apache/paimon/flink/LookupJoinITCase.java  |   76 ++
 .../src/test/resources/log4j2-test.properties      |    0
 paimon-flink/paimon-flink-1.16/pom.xml             |   72 +
 paimon-flink/paimon-flink-common/pom.xml           |  278 ++++
 .../paimon/flink/AbstractFlinkTableFactory.java    |  200 +++
 .../paimon/flink/BinaryRowTypeSerializer.java      |  176 +++
 .../org/apache/paimon/flink/DataCatalogTable.java  |   66 +
 .../apache/paimon/flink/DataTypeToLogicalType.java |  175 +++
 .../java/org/apache/paimon/flink/FlinkCatalog.java |  571 ++++++++
 .../apache/paimon/flink/FlinkCatalogFactory.java   |   70 +
 .../apache/paimon/flink/FlinkConnectorOptions.java |  138 ++
 .../java/org/apache/paimon/flink/FlinkFileIO.java  |  226 ++++
 .../org/apache/paimon/flink/FlinkFileIOLoader.java |   37 +
 .../java/org/apache/paimon/flink/FlinkRowData.java |  329 +++++
 .../org/apache/paimon/flink/FlinkRowWrapper.java   |  327 +++++
 .../org/apache/paimon/flink/FlinkTableFactory.java |  114 ++
 .../java/org/apache/paimon/flink/FlinkUtils.java   |   39 +
 .../java/org/apache/paimon/flink/HadoopUtils.java  |  165 +++
 .../apache/paimon/flink/LogicalTypeConversion.java |   60 +
 .../apache/paimon/flink/LogicalTypeToDataType.java |  184 +++
 .../paimon/flink/PaimonDataStreamScanProvider.java |   51 +
 .../paimon/flink/PaimonDataStreamSinkProvider.java |   43 +
 .../apache/paimon/flink/PredicateConverter.java    |  314 +++++
 .../org/apache/paimon/flink/ProjectedRowData.java  |  232 ++++
 .../java/org/apache/paimon/flink/Projection.java   |  235 ++++
 .../org/apache/paimon/flink/RocksDBOptions.java    |  348 +++++
 .../apache/paimon/flink/SystemCatalogTable.java    |   94 ++
 .../org/apache/paimon/flink/TableConfigUtils.java  |   52 +
 .../paimon/flink/VersionedSerializerWrapper.java   |   50 +
 .../org/apache/paimon/flink/action/Action.java     |  153 +++
 .../org/apache/paimon/flink/action/ActionBase.java |  150 +++
 .../apache/paimon/flink/action/CompactAction.java  |  147 ++
 .../apache/paimon/flink/action/DeleteAction.java   |  134 ++
 .../paimon/flink/action/DropPartitionAction.java   |  117 ++
 .../apache/paimon/flink/action/FlinkActions.java   |   54 +
 .../paimon/flink/action/MergeIntoAction.java       |  718 ++++++++++
 .../flink/kafka/KafkaLogDeserializationSchema.java |  168 +++
 .../apache/paimon/flink/kafka/KafkaLogOptions.java |   38 +
 .../flink/kafka/KafkaLogSerializationSchema.java   |   86 ++
 .../paimon/flink/kafka/KafkaLogSinkProvider.java   |   88 ++
 .../paimon/flink/kafka/KafkaLogSourceProvider.java |  148 +++
 .../paimon/flink/kafka/KafkaLogStoreFactory.java   |  173 +++
 .../paimon/flink/kafka/KafkaSinkFunction.java      |   85 ++
 .../apache/paimon/flink/log/LogSinkProvider.java   |   30 +
 .../apache/paimon/flink/log/LogSourceProvider.java |   43 +
 .../paimon/flink/log/LogStoreTableFactory.java     |  139 ++
 .../apache/paimon/flink/log/LogWriteCallback.java  |   51 +
 .../flink/lookup/FileStoreLookupFunction.java      |  229 ++++
 .../flink/lookup/LookupRuntimeProviderFactory.java |   30 +
 .../apache/paimon/flink/lookup/LookupTable.java    |   53 +
 .../paimon/flink/lookup/NewLookupFunction.java     |   53 +
 .../paimon/flink/lookup/PrimaryKeyLookupTable.java |   88 ++
 .../paimon/flink/lookup/RocksDBSetState.java       |  123 ++
 .../apache/paimon/flink/lookup/RocksDBState.java   |  129 ++
 .../paimon/flink/lookup/RocksDBStateFactory.java   |   99 ++
 .../paimon/flink/lookup/RocksDBValueState.java     |  101 ++
 .../flink/lookup/SecondaryIndexLookupTable.java    |   97 ++
 .../paimon/flink/sink/BucketStreamPartitioner.java |   91 ++
 .../org/apache/paimon/flink/sink/Committable.java  |   87 ++
 .../paimon/flink/sink/CommittableSerializer.java   |   96 ++
 .../paimon/flink/sink/CommittableStateManager.java |   38 +
 .../paimon/flink/sink/CommittableTypeInfo.java     |   97 ++
 .../org/apache/paimon/flink/sink/Committer.java    |   46 +
 .../paimon/flink/sink/CommitterOperator.java       |  201 +++
 .../apache/paimon/flink/sink/CompactorSink.java    |   56 +
 .../paimon/flink/sink/CompactorSinkBuilder.java    |   66 +
 .../apache/paimon/flink/sink/FileStoreSink.java    |   80 ++
 .../org/apache/paimon/flink/sink/FlinkSink.java    |  160 +++
 .../apache/paimon/flink/sink/FlinkSinkBuilder.java |  106 ++
 .../apache/paimon/flink/sink/FlinkTableSink.java   |  185 +++
 .../flink/sink/FullChangelogStoreSinkWrite.java    |  279 ++++
 .../paimon/flink/sink/LogOffsetCommittable.java    |   69 +
 .../apache/paimon/flink/sink/LogSinkFunction.java  |   46 +
 .../flink/sink/LookupChangelogStoreSinkWrite.java  |   51 +
 .../flink/sink/NoopCommittableStateManager.java    |   47 +
 .../sink/OffsetRowDataHashStreamPartitioner.java   |   83 ++
 .../paimon/flink/sink/PrepareCommitOperator.java   |   65 +
 .../RestoreAndFailCommittableStateManager.java     |   96 ++
 .../org/apache/paimon/flink/sink/StateUtils.java   |   77 ++
 .../apache/paimon/flink/sink/StoreCommitter.java   |   83 ++
 .../paimon/flink/sink/StoreCompactOperator.java    |  115 ++
 .../apache/paimon/flink/sink/StoreSinkWrite.java   |   59 +
 .../paimon/flink/sink/StoreSinkWriteImpl.java      |  139 ++
 .../paimon/flink/sink/StoreWriteOperator.java      |  241 ++++
 .../flink/source/CompactorSourceBuilder.java       |  134 ++
 .../source/ContinuousFileSplitEnumerator.java      |  215 +++
 .../flink/source/ContinuousFileStoreSource.java    |  102 ++
 .../paimon/flink/source/DataTableSource.java       |  213 +++
 .../paimon/flink/source/FileStoreSourceReader.java |   72 +
 .../paimon/flink/source/FileStoreSourceSplit.java  |   82 ++
 .../source/FileStoreSourceSplitGenerator.java      |   66 +
 .../flink/source/FileStoreSourceSplitReader.java   |  244 ++++
 .../source/FileStoreSourceSplitSerializer.java     |   65 +
 .../flink/source/FileStoreSourceSplitState.java    |   55 +
 .../apache/paimon/flink/source/FlinkSource.java    |   73 +
 .../paimon/flink/source/FlinkSourceBuilder.java    |  170 +++
 .../paimon/flink/source/FlinkTableSource.java      |   92 ++
 .../flink/source/LogHybridSourceFactory.java       |   52 +
 .../flink/source/PendingSplitsCheckpoint.java      |   49 +
 .../source/PendingSplitsCheckpointSerializer.java  |   82 ++
 .../paimon/flink/source/RecordsFunction.java       |  106 ++
 .../paimon/flink/source/SimpleSystemSource.java    |   57 +
 .../paimon/flink/source/SingleIteratorRecords.java |  100 ++
 .../paimon/flink/source/StaticFileStoreSource.java |   99 ++
 .../source/StaticFileStoreSplitEnumerator.java     |  122 ++
 .../paimon/flink/source/SystemTableSource.java     |   91 ++
 .../utils/StreamExecutionEnvironmentUtils.java     |   30 +
 .../paimon/flink/utils/TableEnvironmentUtils.java  |   66 +
 .../org.apache.flink.table.factories.Factory       |   18 +
 .../flink/AbstractFlinkTableFactoryTest.java       |   60 +
 .../apache/paimon/flink/AppendOnlyTableITCase.java |  246 ++++
 .../apache/paimon/flink/BatchFileStoreITCase.java  |  143 ++
 .../paimon/flink/BinaryRowTypeSerializerTest.java  |   58 +
 .../org/apache/paimon/flink/CatalogITCaseBase.java |  153 +++
 .../apache/paimon/flink/CatalogTableITCase.java    |  448 +++++++
 .../org/apache/paimon/flink/ChangelogModeTest.java |  116 ++
 .../ChangelogWithKeyFileStoreTableITCase.java      |  630 +++++++++
 .../CompositePkAndMultiPartitionedTableITCase.java |  673 ++++++++++
 ...AndMultiPartitionedTableWIthKafkaLogITCase.java | 1134 ++++++++++++++++
 .../ComputedColumnAndWatermarkTableITCase.java     |  445 +++++++
 .../paimon/flink/ContinuousFileStoreITCase.java    |  300 +++++
 .../org/apache/paimon/flink/CreateTableITCase.java |  160 +++
 .../org/apache/paimon/flink/DropTableITCase.java   |  173 +++
 .../org/apache/paimon/flink/FileStoreITCase.java   |  448 +++++++
 .../paimon/flink/FileSystemCatalogITCase.java      |  162 +++
 .../org/apache/paimon/flink/FiniteTestSource.java  |  160 +++
 .../org/apache/paimon/flink/FlinkCatalogTest.java  |  448 +++++++
 .../org/apache/paimon/flink/FlinkTestBase.java     |  208 +++
 .../apache/paimon/flink/ForceCompactionITCase.java |  246 ++++
 .../flink/FullCompactionFileStoreITCase.java       |  119 ++
 .../org/apache/paimon/flink/LargeDataITCase.java   |   81 ++
 .../org/apache/paimon/flink/LogSystemITCase.java   |   70 +
 .../paimon/flink/LookupChangelogWithAggITCase.java |   57 +
 .../org/apache/paimon/flink/LookupJoinITCase.java  |  516 +++++++
 .../apache/paimon/flink/MappingTableITCase.java    |  118 ++
 .../apache/paimon/flink/PartialUpdateITCase.java   |  152 +++
 .../apache/paimon/flink/PreAggregationITCase.java  |  821 ++++++++++++
 .../paimon/flink/PredicateConverterTest.java       |  781 +++++++++++
 .../org/apache/paimon/flink/PredicateITCase.java   |   87 ++
 .../apache/paimon/flink/ReadWriteTableITCase.java  | 1195 +++++++++++++++++
 .../apache/paimon/flink/RescaleBucketITCase.java   |  226 ++++
 .../apache/paimon/flink/SchemaChangeITCase.java    |   92 ++
 .../apache/paimon/flink/SerializableRowData.java   |  154 +++
 .../org/apache/paimon/flink/ShowCreateUtil.java    |  183 +++
 .../StreamingReadWriteTableWithKafkaLogITCase.java | 1406 ++++++++++++++++++++
 .../paimon/flink/StreamingWarehouseITCase.java     |  245 ++++
 .../paimon/flink/action/ActionITCaseBase.java      |  117 ++
 .../paimon/flink/action/CompactActionITCase.java   |  235 ++++
 .../paimon/flink/action/DeleteActionITCase.java    |  132 ++
 .../flink/action/DropPartitionActionITCase.java    |  179 +++
 .../paimon/flink/action/MergeIntoActionITCase.java |  406 ++++++
 .../flink/kafka/KafkaLogSerializationTest.java     |  149 +++
 .../paimon/flink/kafka/KafkaLogTestUtils.java      |  206 +++
 .../paimon/flink/kafka/KafkaTableTestBase.java     |  272 ++++
 .../paimon/flink/lookup/LookupTableTest.java       |  169 +++
 .../flink/sink/CommittableSerializerTest.java      |   76 ++
 .../paimon/flink/sink/CommitterOperatorTest.java   |  263 ++++
 .../flink/sink/CommitterOperatorTestBase.java      |  102 ++
 .../paimon/flink/sink/CompactorSinkITCase.java     |  160 +++
 .../flink/sink/FileStoreShuffleBucketTest.java     |  163 +++
 .../flink/sink/LogOffsetCommittableTest.java       |   35 +
 .../paimon/flink/sink/SinkSavepointITCase.java     |  227 ++++
 .../paimon/flink/source/CompactorSourceITCase.java |  296 +++++
 .../source/ContinuousFileSplitEnumeratorTest.java  |  266 ++++
 .../flink/source/FileStoreSourceReaderTest.java    |   99 ++
 .../source/FileStoreSourceSplitGeneratorTest.java  |  144 ++
 .../source/FileStoreSourceSplitReaderTest.java     |  429 ++++++
 .../source/FileStoreSourceSplitSerializerTest.java |  135 ++
 .../source/FileStoreSourceSplitStateTest.java      |   73 +
 .../PendingSplitsCheckpointSerializerTest.java     |  112 ++
 .../paimon/flink/source/RecordsFunctionTest.java   |   89 ++
 .../flink/source/SingleIteratorRecordsTest.java    |  131 ++
 .../source/StaticFileStoreSplitEnumeratorTest.java |  122 ++
 .../flink/source/TestChangelogDataReadWrite.java   |  193 +++
 .../apache/paimon/flink/util/AbstractTestBase.java |  100 ++
 .../flink/util/MiniClusterWithClientExtension.java |  225 ++++
 .../paimon/flink/util/ReadWriteTableTestUtil.java  |  369 +++++
 .../src/test/resources/log4j2-test.properties      |    0
 paimon-flink/pom.xml                               |  145 ++
 paimon-format/pom.xml                              |  352 +++++
 .../paimon/format/avro/AbstractAvroBulkFormat.java |  199 +++
 .../org/apache/paimon/format/avro/AvroBuilder.java |   33 +
 .../apache/paimon/format/avro/AvroBulkWriter.java  |   51 +
 .../apache/paimon/format/avro/AvroFileFormat.java  |  166 +++
 .../paimon/format/avro/AvroFileFormatFactory.java  |   37 +
 .../paimon/format/avro/AvroSchemaConverter.java    |  206 +++
 .../format/avro/AvroToRowDataConverters.java       |  252 ++++
 .../paimon/format/avro/AvroWriterFactory.java      |   45 +
 .../format/avro/CloseShieldOutputStream.java       |   56 +
 .../apache/paimon/format/avro/JodaConverter.java   |   70 +
 .../format/avro/RowDataToAvroConverters.java       |  296 +++++
 .../format/avro/SeekableInputStreamWrapper.java    |   66 +
 .../paimon/format/fs/HadoopReadOnlyFileSystem.java |  197 +++
 .../apache/paimon/format/orc/OrcFileFormat.java    |  174 +++
 .../paimon/format/orc/OrcFileFormatFactory.java    |   52 +
 .../apache/paimon/format/orc/OrcReaderFactory.java |  357 +++++
 .../apache/paimon/format/orc/OrcWriterFactory.java |  129 ++
 .../orc/SerializableHadoopConfigWrapper.java       |   77 ++
 .../orc/ThreadLocalClassLoaderConfiguration.java   |   55 +
 .../format/orc/filter/OrcFileStatsExtractor.java   |  191 +++
 .../paimon/format/orc/filter/OrcFilters.java       |  307 +++++
 .../orc/filter/OrcPredicateFunctionVisitor.java    |  234 ++++
 .../format/orc/reader/AbstractOrcColumnVector.java |   78 ++
 .../format/orc/reader/OrcArrayColumnVector.java    |   46 +
 .../format/orc/reader/OrcBytesColumnVector.java    |   42 +
 .../format/orc/reader/OrcDecimalColumnVector.java  |   45 +
 .../format/orc/reader/OrcDoubleColumnVector.java   |   47 +
 .../orc/reader/OrcLegacyTimestampColumnVector.java |   89 ++
 .../format/orc/reader/OrcLongColumnVector.java     |   65 +
 .../format/orc/reader/OrcMapColumnVector.java      |   48 +
 .../format/orc/reader/OrcRowColumnVector.java      |   48 +
 .../format/orc/reader/OrcSplitReaderUtil.java      |   96 ++
 .../orc/reader/OrcTimestampColumnVector.java       |   46 +
 .../paimon/format/orc/writer/OrcBulkWriter.java    |   69 +
 .../format/orc/writer/PhysicalWriterImpl.java      |  395 ++++++
 .../format/orc/writer/RowDataVectorizer.java       |  277 ++++
 .../paimon/format/orc/writer/Vectorizer.java       |   93 ++
 .../paimon/format/parquet/ParquetFileFormat.java   |   75 ++
 .../format/parquet/ParquetFileFormatFactory.java   |   55 +
 .../format/parquet/ParquetFileStatsExtractor.java  |  210 +++
 .../paimon/format/parquet/ParquetInputFile.java    |   62 +
 .../paimon/format/parquet/ParquetInputStream.java  |   45 +
 .../format/parquet/ParquetReaderFactory.java       |  398 ++++++
 .../format/parquet/ParquetSchemaConverter.java     |  180 +++
 .../apache/paimon/format/parquet/ParquetUtil.java  |   92 ++
 .../format/parquet/ParquetWriterFactory.java       |   57 +
 .../parquet/reader/AbstractColumnReader.java       |  297 +++++
 .../format/parquet/reader/ArrayColumnReader.java   |  497 +++++++
 .../parquet/reader/BaseVectorizedColumnReader.java |  289 ++++
 .../format/parquet/reader/BooleanColumnReader.java |  111 ++
 .../format/parquet/reader/ByteColumnReader.java    |   95 ++
 .../format/parquet/reader/BytesColumnReader.java   |   96 ++
 .../paimon/format/parquet/reader/ColumnReader.java |   32 +
 .../format/parquet/reader/DoubleColumnReader.java  |   98 ++
 .../parquet/reader/FixedLenBytesColumnReader.java  |  137 ++
 .../format/parquet/reader/FloatColumnReader.java   |   98 ++
 .../format/parquet/reader/IntColumnReader.java     |   96 ++
 .../format/parquet/reader/LongColumnReader.java    |   97 ++
 .../format/parquet/reader/MapColumnReader.java     |   64 +
 .../parquet/reader/ParquetDataColumnReader.java    |  126 ++
 .../reader/ParquetDataColumnReaderFactory.java     |  233 ++++
 .../parquet/reader/ParquetDecimalVector.java       |   68 +
 .../format/parquet/reader/ParquetDictionary.java   |   64 +
 .../parquet/reader/ParquetSplitReaderUtil.java     |  373 ++++++
 .../parquet/reader/ParquetTimestampVector.java     |   62 +
 .../format/parquet/reader/RowColumnReader.java     |   58 +
 .../format/parquet/reader/RunLengthDecoder.java    |  293 ++++
 .../format/parquet/reader/ShortColumnReader.java   |   81 ++
 .../parquet/reader/TimestampColumnReader.java      |  112 ++
 .../format/parquet/writer/ParquetBuilder.java      |   37 +
 .../format/parquet/writer/ParquetBulkWriter.java   |   58 +
 .../parquet/writer/ParquetRowDataBuilder.java      |   80 ++
 .../parquet/writer/ParquetRowDataWriter.java       |  635 +++++++++
 .../writer/PositionOutputStreamAdapter.java        |   67 +
 .../parquet/writer/RowDataParquetBuilder.java      |   82 ++
 .../format/parquet/writer/StreamOutputFile.java    |   77 ++
 paimon-format/src/main/resources/META-INF/NOTICE   |   33 +
 .../org.apache.paimon.format.FileFormatFactory     |   18 +
 .../apache/paimon/format/BulkFileFormatTest.java   |   89 ++
 .../paimon/format/avro/AvroBulkFormatTest.java     |  130 ++
 .../format/avro/AvroBulkFormatTestUtils.java       |   61 +
 .../paimon/format/orc/OrcBulkWriterTestUtil.java   |   96 ++
 .../paimon/format/orc/OrcFileFormatTest.java       |   48 +
 .../format/orc/OrcFileStatsExtractorTest.java      |   78 ++
 .../paimon/format/orc/OrcFilterConverterTest.java  |  122 ++
 .../paimon/format/orc/OrcReaderFactoryTest.java    |  204 +++
 .../paimon/format/orc/OrcSplitReaderUtilTest.java  |   67 +
 .../paimon/format/orc/OrcWriterFactoryTest.java    |   96 ++
 .../java/org/apache/paimon/format/orc/Record.java  |   55 +
 .../apache/paimon/format/orc/RecordVectorizer.java |   54 +
 .../format/parquet/ParquetFileFormatTest.java      |   72 +
 .../parquet/ParquetFileStatsExtractorTest.java     |   98 ++
 .../format/parquet/ParquetReadWriteTest.java       |  522 ++++++++
 .../src/test/resources/test-data-decimal.orc       |  Bin
 .../src/test/resources/test-data-flat.orc          |  Bin
 paimon-hive/paimon-hive-catalog/pom.xml            |  643 +++++++++
 .../apache/flink/table/hive/LegacyHiveClasses.java |   36 +
 .../java/org/apache/paimon/hive/HiveCatalog.java   |  491 +++++++
 .../org/apache/paimon/hive/HiveCatalogFactory.java |   73 +
 .../org/apache/paimon/hive/HiveCatalogLock.java    |  155 +++
 .../apache/paimon/hive/SerializableHiveConf.java   |   70 +
 .../src/main/resources-filtered/META-INF/NOTICE    |   16 +
 .../org.apache.paimon.catalog.CatalogFactory       |   16 +
 .../paimon/hive/AlterFailHiveMetaStoreClient.java  |   52 +
 .../paimon/hive/CreateFailHiveMetaStoreClient.java |   62 +
 .../hive/CustomHiveMetastoreClientITCase.java      |  101 ++
 .../org/apache/paimon/hive/HiveCatalogITCase.java  |  610 +++++++++
 .../paimon/hive/TestHiveMetaStoreClient.java       |   56 +
 paimon-hive/paimon-hive-common/pom.xml             |   77 ++
 .../java/org/apache/paimon/hive/HiveTypeUtils.java |   84 ++
 .../paimon-hive-connector-2.1-cdh-6.3/pom.xml      |   72 +
 paimon-hive/paimon-hive-connector-2.1/pom.xml      |   72 +
 paimon-hive/paimon-hive-connector-2.2/pom.xml      |   72 +
 paimon-hive/paimon-hive-connector-2.3/pom.xml      |   72 +
 paimon-hive/paimon-hive-connector-3.1/pom.xml      |  110 ++
 .../objectinspector/PaimonDateObjectInspector.java |   55 +
 .../PaimonTimestampObjectInspector.java            |   60 +
 paimon-hive/paimon-hive-connector-common/pom.xml   |  533 ++++++++
 .../store/hive/TableStoreHiveStorageHandler.java   |   25 +
 .../flink/table/store/hive/TableStoreSerDe.java    |   25 +
 .../table/store/mapred/TableStoreInputFormat.java  |   25 +
 .../table/store/mapred/TableStoreOutputFormat.java |   25 +
 .../java/org/apache/paimon/hive/HiveSchema.java    |  159 +++
 .../java/org/apache/paimon/hive/PaimonJobConf.java |   75 ++
 .../org/apache/paimon/hive/PaimonMetaHook.java     |   60 +
 .../java/org/apache/paimon/hive/PaimonSerDe.java   |   76 ++
 .../apache/paimon/hive/PaimonStorageHandler.java   |  106 ++
 .../org/apache/paimon/hive/RowDataContainer.java   |   57 +
 .../hive/SearchArgumentToPredicateConverter.java   |  154 +++
 .../paimon/hive/mapred/PaimonInputFormat.java      |  104 ++
 .../paimon/hive/mapred/PaimonInputSplit.java       |  114 ++
 .../paimon/hive/mapred/PaimonOutputFormat.java     |   43 +
 .../paimon/hive/mapred/PaimonRecordReader.java     |  121 ++
 .../objectinspector/PaimonCharObjectInspector.java |   61 +
 .../objectinspector/PaimonDateObjectInspector.java |   59 +
 .../PaimonDecimalObjectInspector.java              |   58 +
 .../objectinspector/PaimonListObjectInspector.java |   88 ++
 .../objectinspector/PaimonMapObjectInspector.java  |  118 ++
 .../PaimonObjectInspectorFactory.java              |   77 ++
 .../PaimonRowDataObjectInspector.java              |  149 +++
 .../PaimonStringObjectInspector.java               |   54 +
 .../PaimonTimestampObjectInspector.java            |   58 +
 .../PaimonVarcharObjectInspector.java              |   61 +
 .../org/apache/paimon/hive/FileStoreTestUtils.java |   53 +
 .../apache/paimon/hive/HiveTableSchemaTest.java    |  210 +++
 .../org/apache/paimon/hive/PaimonSerDeTest.java    |   90 ++
 .../paimon/hive/PaimonStorageHandlerITCase.java    |  912 +++++++++++++
 .../paimon/hive/RandomGenericRowDataGenerator.java |  200 +++
 .../SearchArgumentToPredicateConverterTest.java    |  399 ++++++
 .../paimon/hive/mapred/PaimonInputSplitTest.java   |   77 ++
 .../paimon/hive/mapred/PaimonRecordReaderTest.java |  198 +++
 .../PaimonCharObjectInspectorTest.java             |   87 ++
 .../PaimonDateObjectInspectorTest.java             |   79 ++
 .../PaimonDecimalObjectInspectorTest.java          |   83 ++
 .../PaimonListObjectInspectorTest.java             |   64 +
 .../PaimonMapObjectInspectorTest.java              |   74 ++
 .../PaimonRowDataObjectInspectorTest.java          |  121 ++
 .../PaimonStringObjectInspectorTest.java           |   76 ++
 .../PaimonTimestampObjectInspectorTest.java        |   86 ++
 .../PaimonVarcharObjectInspectorTest.java          |   87 ++
 .../src/test/resources/log4j2-test.properties      |    0
 paimon-hive/pom.xml                                |   53 +
 paimon-shade/pom.xml                               |  147 ++
 paimon-spark/paimon-spark-2/pom.xml                |  113 ++
 .../apache/paimon/spark/SparkDataSourceReader.java |  140 ++
 .../apache/paimon/spark/SparkInputPartition.java   |   87 ++
 .../java/org/apache/paimon/spark/SparkSource.java  |   61 +
 ...org.apache.spark.sql.sources.DataSourceRegister |   16 +
 .../apache/paimon/spark/SimpleTableTestHelper.java |   77 ++
 .../paimon/spark/SparkFilterConverterTest.java     |  174 +++
 .../apache/paimon/spark/SparkInternalRowTest.java  |  116 ++
 .../org/apache/paimon/spark/SparkReadITCase.java   |  130 ++
 .../org/apache/paimon/spark/SparkTypeTest.java     |   95 ++
 .../src/test/resources/log4j2-test.properties      |    0
 paimon-spark/paimon-spark-3.1/pom.xml              |   86 ++
 paimon-spark/paimon-spark-3.2/pom.xml              |   86 ++
 paimon-spark/paimon-spark-3.3/pom.xml              |   86 ++
 paimon-spark/paimon-spark-common/pom.xml           |   86 ++
 .../org/apache/paimon/spark/SparkArrayData.java    |  171 +++
 .../java/org/apache/paimon/spark/SparkCatalog.java |  383 ++++++
 .../apache/paimon/spark/SparkFilterConverter.java  |  145 ++
 .../apache/paimon/spark/SparkInputPartition.java   |   38 +
 .../org/apache/paimon/spark/SparkInternalRow.java  |  237 ++++
 .../apache/paimon/spark/SparkReaderFactory.java    |   79 ++
 .../java/org/apache/paimon/spark/SparkRow.java     |  357 +++++
 .../java/org/apache/paimon/spark/SparkScan.java    |  126 ++
 .../org/apache/paimon/spark/SparkScanBuilder.java  |   85 ++
 .../java/org/apache/paimon/spark/SparkSource.java  |   79 ++
 .../java/org/apache/paimon/spark/SparkTable.java   |  127 ++
 .../org/apache/paimon/spark/SparkTypeUtils.java    |  301 +++++
 .../java/org/apache/paimon/spark/SparkWrite.java   |  123 ++
 .../org/apache/paimon/spark/SparkWriteBuilder.java |   45 +
 .../paimon/spark/SpecializedGettersReader.java     |  109 ++
 ...org.apache.spark.sql.sources.DataSourceRegister |   16 +
 .../apache/paimon/spark/MinioTestContainer.java    |  140 ++
 .../paimon/spark/SparkFilterConverterTest.java     |  174 +++
 .../apache/paimon/spark/SparkInternalRowTest.java  |  115 ++
 .../org/apache/paimon/spark/SparkReadITCase.java   |  648 +++++++++
 .../org/apache/paimon/spark/SparkReadTestBase.java |  188 +++
 .../org/apache/paimon/spark/SparkS3ITCase.java     |   98 ++
 .../paimon/spark/SparkSchemaEvolutionITCase.java   |  736 ++++++++++
 .../org/apache/paimon/spark/SparkTypeTest.java     |  103 ++
 .../org/apache/paimon/spark/SparkWriteITCase.java  |  110 ++
 .../src/test/resources/log4j2-test.properties      |    0
 paimon-spark/pom.xml                               |   87 ++
 paimon-test-utils/pom.xml                          |   63 +
 .../testutils/junit/DockerImageVersions.java       |   32 +
 .../testutils/junit/TestLoggerExtension.java       |   83 ++
 .../testutils/junit/parameterized/Parameter.java   |   40 +
 .../parameterized/ParameterizedTestExtension.java  |  251 ++++
 .../testutils/junit/parameterized/Parameters.java  |   51 +
 pom.xml                                            |   50 +-
 tools/maven/suppressions.xml                       |    2 +-
 tools/releasing/create_binary_release.sh           |   80 +-
 tools/releasing/create_source_release.sh           |   10 +-
 2689 files changed, 181092 insertions(+), 181315 deletions(-)
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/README.md
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/pom.xml
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/assemblies/bin.xml
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/Benchmark.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/BenchmarkOptions.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/Query.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/QueryRunner.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/Sink.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/BenchmarkMetric.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/FlinkRestClient.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/JobBenchmarkMetric.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/MetricReporter.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuMetric.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuMetricReceiver.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuMetricSender.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuTimeTracker.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/OperatingSystem.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/ProcfsBasedProcessTree.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/ShellCommandExecutor.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/SysInfoLinux.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/clock/Clock.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/clock/SystemClock.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/utils/AutoClosableProcess.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/utils/BenchmarkGlobalConfiguration.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/utils/BenchmarkUtils.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/bin/metric_client.sh
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/bin/run_benchmark.sh
 delete mode 100644 flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/sinks/table_store.yaml
 delete mode 100644 flink-table-store-benchmark/flink-table-store-micro-benchmarks/pom.xml
 delete mode 100644 flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/java/org/apache/flink/table/store/benchmark/Benchmark.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/java/org/apache/flink/table/store/benchmark/TableBenchmark.java
 delete mode 100644 flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/java/org/apache/flink/table/store/benchmark/TableWriterBenchmark.java
 delete mode 100644 flink-table-store-benchmark/pom.xml
 delete mode 100644 flink-table-store-codegen-loader/pom.xml
 delete mode 100644 flink-table-store-codegen-loader/src/main/java/org/apache/flink/table/store/codegen/CodeGenLoader.java
 delete mode 100644 flink-table-store-codegen/pom.xml
 delete mode 100644 flink-table-store-codegen/src/main/java/org/apache/flink/table/store/codegen/CodeGeneratorImpl.java
 delete mode 100644 flink-table-store-codegen/src/main/java/org/apache/flink/table/store/codegen/SortSpec.java
 delete mode 100644 flink-table-store-codegen/src/main/resources/META-INF/services/org.apache.flink.table.store.codegen.CodeGenerator
 delete mode 100644 flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/CodeGenException.scala
 delete mode 100644 flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/CodeGeneratorContext.scala
 delete mode 100644 flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/ComparatorCodeGenerator.scala
 delete mode 100644 flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/ExprCodeGenerator.scala
 delete mode 100644 flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/GenerateUtils.scala
 delete mode 100644 flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/GeneratedExpression.scala
 delete mode 100644 flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/ProjectionCodeGenerator.scala
 delete mode 100644 flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/SortCodeGenerator.scala
 delete mode 100644 flink-table-store-common/pom.xml
 delete mode 100644 flink-table-store-common/src/main/antlr4/JavaLexer.g4
 delete mode 100644 flink-table-store-common/src/main/antlr4/JavaParser.g4
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroup.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroups.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/Documentation.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/Experimental.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/VisibleForTesting.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/catalog/CatalogContext.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/CodeGenerator.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/CompileUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/GeneratedClass.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/NormalizedKeyComputer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/Projection.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/RecordComparator.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/AddBoolBeforeReturnRewriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouper.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitUtil.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnAndJumpCounter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/AbstractBinaryWriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedInputView.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedOutputView.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryArray.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryArrayWriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryMap.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryRow.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryRowWriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinarySection.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryString.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryWriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/DataGetters.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/DataSetters.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/Decimal.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/GenericArray.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/GenericMap.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/GenericRow.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/InternalArray.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/InternalMap.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/InternalRow.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/JoinedRow.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/LazyGenericRow.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/NestedRow.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/RandomAccessInputView.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/RandomAccessOutputView.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/SimpleCollectingOutputView.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/Timestamp.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ArrayColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/BooleanColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ByteColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/BytesColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarArray.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarMap.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRow.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRowIterator.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/DecimalColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/Dictionary.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/DoubleColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/FloatColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/IntColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/LongColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/MapColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/RowColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ShortColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/TimestampColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/VectorizedColumnBatch.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/AbstractHeapVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapArrayVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBooleanVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapByteVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBytesVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapDoubleVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapFloatVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapIntVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapLongVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapMapVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapRowVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapShortVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapTimestampVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/AbstractWritableVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBooleanVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableByteVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBytesVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableColumnVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableDoubleVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableFloatVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableIntVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableLongVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableShortVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableTimestampVector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/AbstractRowDataSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryRowSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/BinarySerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/BooleanSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/ByteSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/DecimalSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/DoubleSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/FloatSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/IntSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalArraySerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalMapSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalRowSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalSerializers.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/ListSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/LongSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/NullableSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/PagedTypeSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/Serializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/SerializerSingleton.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/ShortSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/TimestampSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/VersionedSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/And.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/CompareUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/CompoundPredicate.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Equal.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/FieldRef.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/FunctionVisitor.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterOrEqual.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterThan.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/In.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNotNull.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNull.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafFunction.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafUnaryFunction.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessOrEqual.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessThan.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotEqual.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotIn.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NullFalseLeafBinaryFunction.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Or.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateBuilder.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateFilter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateReplaceVisitor.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateVisitor.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FieldStats.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FieldStatsCollector.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FileFormat.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FileFormatFactory.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FileStatsExtractor.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FormatReaderFactory.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FormatWriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FormatWriterFactory.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/FileIO.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/FileIOLoader.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/FileStatus.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/Path.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/PluginFileIO.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStream.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStreamWrapper.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStream.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStreamWrapper.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/UnsupportedSchemeException.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIOLoader.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIO.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIOLoader.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/hadoop/SerializableConfiguration.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataInputDeserializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataInputView.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStream.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStreamWrapper.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataOutputSerializer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataOutputView.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStream.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStreamWrapper.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/io/SeekableDataInputView.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/io/cache/CacheManager.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/io/cache/CachedRandomInputView.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreFactory.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreReader.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreWriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactory.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreReader.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreWriter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemorySegment.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentSource.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentWritable.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemoryUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/CatalogOptions.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/ConfigOption.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/ConfigOptions.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/FallbackKey.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/MemorySize.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/Options.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/OptionsUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/StructuredOptionsSplitter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/BlockElement.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/DescribedEnum.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/Description.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/DescriptionElement.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/Formatter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/HtmlFormatter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/InlineElement.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/LineBreakElement.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/LinkElement.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/ListElement.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/TextElement.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/plugin/ComponentClassLoader.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/plugin/PluginLoader.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/reader/RecordReader.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/reader/RecordReaderIterator.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/table/TableType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/ArrayType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/BigIntType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/BinaryType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/BooleanType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/CharType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataField.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeCasts.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeChecks.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeDefaultVisitor.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeFamily.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeJsonParser.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeRoot.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeVisitor.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypes.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DateType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DecimalType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DoubleType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/FloatType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/IntType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/LocalZonedTimestampType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/MapType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/MultisetType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/ReassignFieldId.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/RowKind.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/RowType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/SmallIntType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/TimeType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/TimestampType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/TinyIntType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/VarBinaryType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/types/VarCharType.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ArrayUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/CloseableIterator.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/DateTimeUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/DecimalUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/EncodingUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ExceptionUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/FileIOUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Filter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/FunctionWithException.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/HadoopUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/IOFunction.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/IOUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/InstantiationUtil.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/IteratorResultIterator.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/KeyProjectedRow.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/LocalFileUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/LongCounter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/MapBuilder.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/MathUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/MurmurHashUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/OperatingSystem.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/OrderedPacking.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Pair.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Pool.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Preconditions.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ProjectedRow.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Projection.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/RecyclableIterator.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Reference.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ReflectionUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/RowDataToObjectArrayConverter.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/RowDataUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/SerializableFunction.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ThreadUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ThrowingConsumer.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/TimeUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/TypeUtils.java
 delete mode 100644 flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/VarLengthIntUtils.java
 delete mode 100644 flink-table-store-common/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouperTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriterTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitterTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriterTestBase.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitTestUtil.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriterTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitterTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitterTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaParserTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriterTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriterTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/BinaryRowTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/BinaryStringTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/DataFormatTestUtil.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/DecimalTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/MapDataUtil.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/NestedRowTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/RowDataTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/TimestampTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/BinarySerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/BooleanSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/ByteSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/DecimalSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/DoubleSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/FloatSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/IntSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalArraySerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalMapSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalRowSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/ListSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/LongSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/NullableSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestBase.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestInstance.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/ShortSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/TimestampSerializerTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/DataGenerator.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorContainer.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorMapper.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/RandomGenerator.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/RowDataGenerator.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/format/FileStatsExtractorTestBase.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/FileIOBehaviorTestBase.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/FileIOFinder.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/HadoopConfigLoadingTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/HadoopLocalFileIOBehaviorTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/HdfsBehaviorTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/LocalFileIOBehaviorTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/io/cache/CachedRandomInputViewTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactoryTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/MemorySegmentTestBase.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OffHeapDirectMemorySegmentTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/types/DataTypeAssert.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/types/DataTypeChecksTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/types/DataTypesTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/utils/CommonTestUtils.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/utils/LocalFileUtilsTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java
 delete mode 100644 flink-table-store-common/src/test/java/org/apache/flink/table/store/utils/TempDirUtils.java
 delete mode 100644 flink-table-store-core/pom.xml
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/codegen/CodeGenUtils.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/FileStore.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValue.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueSerializer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/Snapshot.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/WriteMode.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutor.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutors.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastFieldGetter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastedRow.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Catalog.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogLock.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogUtils.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalog.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalogFactory.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactFutureManager.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactManager.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactResult.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactTask.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactUnit.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/NoopCompactManager.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BlockCompressionFactory.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BlockCompressor.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BlockDecompressor.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BufferCompressionException.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BufferDecompressionException.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/CompressorUtils.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/Lz4BlockCompressionFactory.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/Lz4BlockCompressor.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/Lz4BlockDecompressor.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/AbstractFileIOChannel.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileChannelReader.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileReader.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileReaderImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriterImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputView.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputViewIterator.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWithMeta.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWriterOutputView.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelManager.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelManagerImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelUtil.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileIOChannel.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManager.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManagerImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/AbstractFileRecordIterator.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/CompactIncrement.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMeta.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMetaSerializer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFilePathFactory.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/FileWriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/NewFilesIncrement.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RollingFileWriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/FileKind.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntry.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntrySerializer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMeta.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaSerializer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/Buffer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/HeapMemorySegmentPool.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemoryOwner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemoryPoolFactory.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemorySegmentPool.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DataFileReader.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DropDeleteReader.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LevelSortedRun.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/Levels.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeReaders.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeWriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBuffer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortedRun.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/WriteBuffer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/AbstractCompactRewriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogMergeTreeRewriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogResult.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/CompactRewriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/CompactStrategy.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReader.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/DeduplicateMergeFunction.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ForceUpLevel0Compaction.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartition.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupCompaction.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupMergeFunction.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunction.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionFactory.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionWrapper.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManager.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactRewriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactTask.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/PartialUpdateMergeFunction.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapper.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReader.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/UniversalCompaction.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ValueCountMergeFunction.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregator.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastValueAgg.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldListaggAgg.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMaxAgg.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMinAgg.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldSumAgg.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreWrite.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommit.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpire.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpireImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreRead.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreWrite.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/Lock.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/MemoryFileStoreWrite.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/PartitionExpire.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/ReverseReader.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/ScanKind.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/partition/PartitionTimeExtractor.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/predicate/BucketSelector.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/IndexCastMapping.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/KeyValueFieldsExtractor.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/Schema.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaChange.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaSerializer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaValidation.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SystemColumns.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/TableSchema.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/AbstractBinaryExternalMerger.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalMerger.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBuffer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryIndexedSortable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryMergeIterator.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/HeapSort.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/IndexedSortable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/IndexedSorter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/PartialOrderPriorityQueue.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/QuickSort.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SortBuffer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SpillChannelManager.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsConverters.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/CommitIncrement.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ExecutorThreadFactory.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FatalExitExceptionHandler.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/IteratorRecordReader.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonDeserializer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonSerdeUtil.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonSerializer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/KeyComparatorSupplier.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/MutableObjectIterator.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/OffsetRow.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/PartitionPathUtils.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RecordWriter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/Restorable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RowDataPartitionComputer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializableSupplier.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SnapshotManager.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ThreadUtils.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/VersionedObjectSerializer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/format/FileFormatDiscover.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/format/FormatKey.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AbstractFileStoreTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/DataTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTableFactory.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/InnerTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ReadonlyTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/SupportsPartition.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/Table.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/TableUtils.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableCommit.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableWrite.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchWriteBuilder.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchWriteBuilderImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BucketComputer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessage.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageSerializer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/InnerTableCommit.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/InnerTableWrite.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/PartitionComputer.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SequenceGenerator.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecord.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecordConverter.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableCommit.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableWrite.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamWriteBuilder.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamWriteBuilderImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableCommit.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableCommitImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWrite.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWriteImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/WriteBuilder.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AbstractDataTableScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AppendOnlySplitGenerator.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/BatchDataTableScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/BatchDataTableScanImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataSplit.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataTableScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/EndOfScanException.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerStreamTableScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableRead.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/KeyValueTableRead.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/MergeTreeSplitGenerator.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilder.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilderImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadOnceTableScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ResetRowKindRecordIterator.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/Split.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/SplitGenerator.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamDataTableScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamDataTableScanImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamTableScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableRead.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableScan.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableStreamingReader.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueContentRowDataRecordIterator.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueCountRowDataRecordIterator.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/CompactedStartingScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/CompactionChangelogFollowUpScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorStartingScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousLatestStartingScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/DeltaFollowUpScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/FollowUpScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/FullStartingScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/InputChangelogFollowUpScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReader.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReaderImpl.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/StartingScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/StaticFromSnapshotStartingScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/StaticFromTimestampStartingScanner.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/AuditLogTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/BucketsTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/OptionsTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SchemasTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SnapshotsTable.java
 delete mode 100644 flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SystemTableLoader.java
 delete mode 100644 flink-table-store-core/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/CoreOptionsTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/KeyValueSerializerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManagerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/IterativeCompactTaskTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/casting/CastExecutorTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/catalog/CatalogFactoryTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/BufferFileWriterReaderTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/IOManagerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormatFactory.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileMetaSerializerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFilePathFactoryTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestDataGenerator.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestUtils.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestEntrySerializerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaSerializerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestListTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/memory/MemoryPoolFactoryTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LevelsTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBufferTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/CombiningRecordReaderTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReaderTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ForceUpLevel0CompactionTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartitionTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionTestUtils.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManagerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReaderTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/UniversalCompactionTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregatorTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/CleanedFileStoreExpireTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreExpireTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/TestCommitThread.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/UncleanedFileStoreExpireTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/partition/PartitionTimeExtractorTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/BucketSelectorTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateBuilderTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/DataTypeJsonParserTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaManagerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaUtils.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaSerializationTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBufferTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntRecordComparator.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/StatsTestUtils.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/BlockingIterator.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FailingFileIO.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ObjectSerializerTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/OffsetRowTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingKeyValue.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingTestData.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/SnapshotManagerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TestReusingRecordReader.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TraceableFileIO.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileDataTableTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTableTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyTableColumnTypeFileDataTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyTableColumnTypeFileMetaTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyTableFileMetaFilterTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountColumnTypeFileDataTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountColumnTypeFileMetaTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileDataTableTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileMetaFilterTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTableTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyColumnTypeFileDataTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileDataTableTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileMetaFilterTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTableTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileDataTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileDataFilterTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileMetaFilterTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileStoreTableTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTableTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/WritePreemptMemoryTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/CommitMessageSerializerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/SinkRecordConverterTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/TableWriteTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/BatchDataTableScanTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/RowDataRecordIteratorTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitGeneratorTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/StreamDataTableScanTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/ValueContentRowDataRecordIteratorTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/ValueCountRowDataRecordIteratorTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/CompactedStartingScannerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousLatestStartingScannerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/DeltaFollowUpScannerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/FullStartingScannerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/InputChangelogFollowUpScannerTest.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ScannerTestBase.java
 delete mode 100644 flink-table-store-core/src/test/java/org/apache/flink/table/store/utils/CompatibilityTestUtils.java
 delete mode 100644 flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.format.FileFormatFactory
 delete mode 100644 flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
 delete mode 100644 flink-table-store-docs/README.md
 delete mode 100644 flink-table-store-docs/pom.xml
 delete mode 100644 flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocGenerator.java
 delete mode 100644 flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/configuration/OptionsClassLocation.java
 delete mode 100644 flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/util/Utils.java
 delete mode 100644 flink-table-store-docs/src/main/resources/log4j.properties
 delete mode 100644 flink-table-store-docs/src/test/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocGeneratorTest.java
 delete mode 100644 flink-table-store-docs/src/test/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
 delete mode 100644 flink-table-store-docs/src/test/java/org/apache/flink/table/store/docs/configuration/data/TestCommonOptions.java
 delete mode 100644 flink-table-store-e2e-tests/pom.xml
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/E2eQueryExecutor.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/E2eReaderTestBase.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/E2eTestBase.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FileStoreBatchE2eTest.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FileStoreBuiltInFormatE2eTest.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FileStoreStreamE2eTest.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FlinkActionsE2eTest.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/HiveE2eTest.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/LogStoreE2eTest.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/SparkE2eTest.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/TypeE2eTest.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/utils/ParameterProperty.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/utils/TestUtils.java
 delete mode 100644 flink-table-store-e2e-tests/src/test/resources-filtered/docker-compose.yaml
 delete mode 100644 flink-table-store-filesystems/flink-table-store-hadoop-shaded/pom.xml
 delete mode 100644 flink-table-store-filesystems/flink-table-store-hadoop-shaded/src/main/resources/META-INF/NOTICE
 delete mode 100644 flink-table-store-filesystems/flink-table-store-oss-impl/pom.xml
 delete mode 100644 flink-table-store-filesystems/flink-table-store-oss-impl/src/main/java/org/apache/flink/table/store/oss/HadoopCompliantFileIO.java
 delete mode 100644 flink-table-store-filesystems/flink-table-store-oss-impl/src/main/java/org/apache/flink/table/store/oss/OSSFileIO.java
 delete mode 100644 flink-table-store-filesystems/flink-table-store-oss-impl/src/main/resources/META-INF/NOTICE
 delete mode 100644 flink-table-store-filesystems/flink-table-store-oss/pom.xml
 delete mode 100644 flink-table-store-filesystems/flink-table-store-oss/src/main/java/org/apache/flink/table/store/oss/OSSLoader.java
 delete mode 100644 flink-table-store-filesystems/flink-table-store-oss/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
 delete mode 100644 flink-table-store-filesystems/flink-table-store-s3-impl/pom.xml
 delete mode 100644 flink-table-store-filesystems/flink-table-store-s3-impl/src/main/java/org/apache/flink/table/store/s3/HadoopCompliantFileIO.java
 delete mode 100644 flink-table-store-filesystems/flink-table-store-s3-impl/src/main/java/org/apache/flink/table/store/s3/S3FileIO.java
 delete mode 100644 flink-table-store-filesystems/flink-table-store-s3-impl/src/main/resources/META-INF/NOTICE
 delete mode 100644 flink-table-store-filesystems/flink-table-store-s3/pom.xml
 delete mode 100644 flink-table-store-filesystems/flink-table-store-s3/src/main/java/org/apache/flink/table/store/s3/S3Loader.java
 delete mode 100644 flink-table-store-filesystems/flink-table-store-s3/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
 delete mode 100644 flink-table-store-filesystems/pom.xml
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/pom.xml
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/TableConfigUtils.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamScanProvider.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamSinkProvider.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/lookup/LookupRuntimeProviderFactory.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/lookup/OldLookupFunction.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/utils/StreamExecutionEnvironmentUtils.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/utils/TableEnvironmentUtils.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/BatchFileStoreITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/CatalogITCaseBase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/ContinuousFileStoreITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/FlinkActionITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/LookupJoinITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.15/pom.xml
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.15/src/main/java/org/apache/flink/table/store/connector/lookup/LookupRuntimeProviderFactory.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.15/src/main/java/org/apache/flink/table/store/connector/lookup/OldLookupFunction.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/BatchFileStoreITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/CatalogITCaseBase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/ContinuousFileStoreITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/FlinkActionITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/LookupJoinITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-1.16/pom.xml
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/pom.xml
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/AbstractTableStoreFactory.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/BinaryRowTypeSerializer.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/DataCatalogTable.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/DataTypeToLogicalType.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkCatalog.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkCatalogFactory.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkConnectorOptions.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkFileIO.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkFileIOLoader.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkRowData.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkRowWrapper.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkUtils.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/HadoopUtils.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/LogicalTypeConversion.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/LogicalTypeToDataType.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/PredicateConverter.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/ProjectedRowData.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/Projection.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/RocksDBOptions.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/SystemCatalogTable.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableConfigUtils.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableStoreConnectorFactory.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamScanProvider.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamSinkProvider.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/VersionedSerializerWrapper.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/Action.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/ActionBase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/CompactAction.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/DeleteAction.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/DropPartitionAction.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/FlinkActions.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/MergeIntoAction.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/FileStoreLookupFunction.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/LookupRuntimeProviderFactory.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/LookupTable.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/NewLookupFunction.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/PrimaryKeyLookupTable.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBSetState.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBState.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBStateFactory.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBValueState.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/SecondaryIndexLookupTable.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/BucketStreamPartitioner.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/Committable.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommittableSerializer.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommittableStateManager.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommittableTypeInfo.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/Committer.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommitterOperator.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CompactorSink.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CompactorSinkBuilder.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FileStoreSink.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FlinkSink.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FlinkSinkBuilder.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FullChangelogStoreSinkWrite.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/LogOffsetCommittable.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/LookupChangelogStoreSinkWrite.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/NoopCommittableStateManager.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/OffsetRowDataHashStreamPartitioner.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/PrepareCommitOperator.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/RestoreAndFailCommittableStateManager.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StateUtils.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreCommitter.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreCompactOperator.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreSinkWrite.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreSinkWriteImpl.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreWriteOperator.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/TableStoreSink.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/CompactorSourceBuilder.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/ContinuousFileSplitEnumerator.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/ContinuousFileStoreSource.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceReader.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplit.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitGenerator.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitReader.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitSerializer.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitState.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FlinkSource.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FlinkSourceBuilder.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FlinkTableSource.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/LogHybridSourceFactory.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/PendingSplitsCheckpoint.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/PendingSplitsCheckpointSerializer.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/RecordsFunction.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/SimpleSystemSource.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/SingleIteratorRecords.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/StaticFileStoreSource.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/StaticFileStoreSplitEnumerator.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/SystemTableSource.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/TableStoreSource.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/utils/StreamExecutionEnvironmentUtils.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/utils/TableEnvironmentUtils.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogDeserializationSchema.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogOptions.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogSerializationSchema.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogSinkProvider.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogSourceProvider.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogStoreFactory.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaSinkFunction.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogSinkProvider.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogSourceProvider.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogStoreTableFactory.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogWriteCallback.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/table/sink/LogSinkFunction.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/AbstractTableStoreFactoryTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/AppendOnlyTableITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/BatchFileStoreITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/BinaryRowTypeSerializerTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CatalogITCaseBase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CatalogTableITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ChangelogModeTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ChangelogWithKeyFileStoreTableITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CompositePkAndMultiPartitionedTableITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ComputedColumnAndWatermarkTableITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ContinuousFileStoreITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CreateTableITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/DropTableITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FileStoreITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FileSystemCatalogITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FiniteTestSource.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FlinkCatalogTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ForceCompactionITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FullCompactionFileStoreITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LargeDataITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LogSystemITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LookupChangelogWithAggITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LookupJoinITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/MappingTableITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PartialUpdateITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PreAggregationITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PredicateConverterTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PredicateITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ReadWriteTableITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/RescaleBucketITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/SchemaChangeITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/SerializableRowData.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ShowCreateUtil.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/StreamingReadWriteTableWithKafkaLogITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/StreamingWarehouseITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/TableStoreTestBase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/ActionITCaseBase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/CompactActionITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/DeleteActionITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/DropPartitionActionITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/MergeIntoActionITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/lookup/LookupTableTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CommittableSerializerTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CommitterOperatorTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CommitterOperatorTestBase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CompactorSinkITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/FileStoreShuffleBucketTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/LogOffsetCommittableTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/SinkSavepointITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/CompactorSourceITCase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/ContinuousFileSplitEnumeratorTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceReaderTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitGeneratorTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitReaderTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitSerializerTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitStateTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/PendingSplitsCheckpointSerializerTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/RecordsFunctionTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/SingleIteratorRecordsTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/StaticFileStoreSplitEnumeratorTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/TestChangelogDataReadWrite.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/util/AbstractTestBase.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/util/MiniClusterWithClientExtension.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/util/ReadWriteTableTestUtil.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/kafka/KafkaLogSerializationTest.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/kafka/KafkaLogTestUtils.java
 delete mode 100644 flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/kafka/KafkaTableTestBase.java
 delete mode 100644 flink-table-store-flink/pom.xml
 delete mode 100644 flink-table-store-format/pom.xml
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AbstractAvroBulkFormat.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroBuilder.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroBulkWriter.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroFileFormat.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroFileFormatFactory.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroSchemaConverter.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroToRowDataConverters.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroWriterFactory.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/CloseShieldOutputStream.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/JodaConverter.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/RowDataToAvroConverters.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/SeekableInputStreamWrapper.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/fs/HadoopReadOnlyFileSystem.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcFileFormat.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcFileFormatFactory.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcReaderFactory.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcWriterFactory.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/SerializableHadoopConfigWrapper.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/ThreadLocalClassLoaderConfiguration.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/filter/OrcFileStatsExtractor.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/filter/OrcFilters.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/filter/OrcPredicateFunctionVisitor.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/AbstractOrcColumnVector.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcArrayColumnVector.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcBytesColumnVector.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcDecimalColumnVector.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcDoubleColumnVector.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcLegacyTimestampColumnVector.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcLongColumnVector.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcMapColumnVector.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcRowColumnVector.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcSplitReaderUtil.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcTimestampColumnVector.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/OrcBulkWriter.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/PhysicalWriterImpl.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/RowDataVectorizer.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/Vectorizer.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetFileFormat.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetFileFormatFactory.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetFileStatsExtractor.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetInputFile.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetInputStream.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetReaderFactory.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetSchemaConverter.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetUtil.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetWriterFactory.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/AbstractColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ArrayColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/BaseVectorizedColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/BooleanColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ByteColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/BytesColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/DoubleColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/FixedLenBytesColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/FloatColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/IntColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/LongColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/MapColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDataColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDataColumnReaderFactory.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDecimalVector.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDictionary.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetSplitReaderUtil.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetTimestampVector.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/RowColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/RunLengthDecoder.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ShortColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/TimestampColumnReader.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetBuilder.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetBulkWriter.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetRowDataBuilder.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetRowDataWriter.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/PositionOutputStreamAdapter.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/RowDataParquetBuilder.java
 delete mode 100644 flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/StreamOutputFile.java
 delete mode 100644 flink-table-store-format/src/main/resources/META-INF/NOTICE
 delete mode 100644 flink-table-store-format/src/main/resources/META-INF/services/org.apache.flink.table.store.format.FileFormatFactory
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/BulkFileFormatTest.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/avro/AvroBulkFormatTest.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/avro/AvroBulkFormatTestUtils.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcBulkWriterTestUtil.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcFileFormatTest.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcFileStatsExtractorTest.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcFilterConverterTest.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcReaderFactoryTest.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcSplitReaderUtilTest.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcWriterFactoryTest.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/Record.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/RecordVectorizer.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/parquet/ParquetFileFormatTest.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/parquet/ParquetFileStatsExtractorTest.java
 delete mode 100644 flink-table-store-format/src/test/java/org/apache/flink/table/store/format/parquet/ParquetReadWriteTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-catalog/pom.xml
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/HiveCatalog.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/HiveCatalogFactory.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/HiveCatalogLock.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/SerializableHiveConf.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-catalog/src/main/resources-filtered/META-INF/NOTICE
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-catalog/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/AlterFailHiveMetaStoreClient.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/CreateFailHiveMetaStoreClient.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/CustomHiveMetastoreClientITCase.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/HiveCatalogITCase.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/TestHiveMetaStoreClient.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-common/pom.xml
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-common/src/main/java/org/apache/flink/table/store/hive/HiveTypeUtils.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-2.1-cdh-6.3/pom.xml
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-2.1/pom.xml
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-2.2/pom.xml
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-2.3/pom.xml
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-3.1/pom.xml
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-3.1/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDateObjectInspector.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-3.1/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreTimestampObjectInspector.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/pom.xml
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/RowDataContainer.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/SearchArgumentToPredicateConverter.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/TableStoreJobConf.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/HiveSchema.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreHiveMetaHook.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreHiveStorageHandler.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreSerDe.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreCharObjectInspector.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDateObjectInspector.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDecimalObjectInspector.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreListObjectInspector.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreMapObjectInspector.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreObjectInspectorFactory.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreRowDataObjectInspector.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreStringObjectInspector.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreTimestampObjectInspector.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreVarcharObjectInspector.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreInputFormat.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreInputSplit.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreOutputFormat.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreRecordReader.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/FileStoreTestUtils.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/SearchArgumentToPredicateConverterTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/HiveTableSchemaTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/RandomGenericRowDataGenerator.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/TableStoreHiveStorageHandlerITCase.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/TableStoreSerDeTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreCharObjectInspectorTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDateObjectInspectorTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDecimalObjectInspectorTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreListObjectInspectorTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreMapObjectInspectorTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreRowDataObjectInspectorTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreStringObjectInspectorTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreTimestampObjectInspectorTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreVarcharObjectInspectorTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/mapred/TableStoreInputSplitTest.java
 delete mode 100644 flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/mapred/TableStoreRecordReaderTest.java
 delete mode 100644 flink-table-store-hive/pom.xml
 delete mode 100644 flink-table-store-shade/pom.xml
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-2/pom.xml
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-2/src/main/java/org/apache/flink/table/store/spark/SparkDataSourceReader.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-2/src/main/java/org/apache/flink/table/store/spark/SparkInputPartition.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-2/src/main/java/org/apache/flink/table/store/spark/SparkSource.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-2/src/main/resources/META-INF.services/org.apache.spark.sql.sources.DataSourceRegister
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SimpleTableTestHelper.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkFilterConverterTest.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkInternalRowTest.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkReadITCase.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkTypeTest.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-3.1/pom.xml
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-3.2/pom.xml
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-3.3/pom.xml
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/pom.xml
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkArrayData.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkCatalog.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkFilterConverter.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkInputPartition.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkInternalRow.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkReaderFactory.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkRow.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkScan.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkScanBuilder.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkSource.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkTable.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkTypeUtils.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkWrite.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkWriteBuilder.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SpecializedGettersReader.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/main/resources/META-INF/services/org.apache.spark.sql.sources.DataSourceRegister
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/MinioTestContainer.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkFilterConverterTest.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkInternalRowTest.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkReadITCase.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkReadTestBase.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkS3ITCase.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkSchemaEvolutionITCase.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkTypeTest.java
 delete mode 100644 flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkWriteITCase.java
 delete mode 100644 flink-table-store-spark/pom.xml
 delete mode 100644 flink-table-store-test-utils/pom.xml
 delete mode 100644 flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/DockerImageVersions.java
 delete mode 100644 flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/TestLoggerExtension.java
 delete mode 100644 flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/parameterized/Parameter.java
 delete mode 100644 flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/parameterized/ParameterizedTestExtension.java
 delete mode 100644 flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/parameterized/Parameters.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/README.md
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/pom.xml
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/assemblies/bin.xml
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/Benchmark.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/BenchmarkOptions.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/Query.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/QueryRunner.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/Sink.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/BenchmarkMetric.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/FlinkRestClient.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/JobBenchmarkMetric.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/MetricReporter.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuMetric.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuMetricReceiver.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuMetricSender.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuTimeTracker.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/OperatingSystem.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/ProcfsBasedProcessTree.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/ShellCommandExecutor.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/SysInfoLinux.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/clock/Clock.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/clock/SystemClock.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/utils/AutoClosableProcess.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/utils/BenchmarkGlobalConfiguration.java
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/utils/BenchmarkUtils.java
 rename {flink-table-store-benchmark/flink-table-store-cluster-benchmark => paimon-benchmark/paimon-cluster-benchmark}/src/main/resources/bin/config.sh (100%)
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/metric_client.sh
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/run_benchmark.sh
 rename {flink-table-store-benchmark/flink-table-store-cluster-benchmark => paimon-benchmark/paimon-cluster-benchmark}/src/main/resources/bin/setup_cluster.sh (100%)
 rename {flink-table-store-benchmark/flink-table-store-cluster-benchmark => paimon-benchmark/paimon-cluster-benchmark}/src/main/resources/bin/shutdown_cluster.sh (100%)
 rename {flink-table-store-benchmark/flink-table-store-cluster-benchmark => paimon-benchmark/paimon-cluster-benchmark}/src/main/resources/conf/benchmark.yaml (100%)
 rename {flink-table-store-benchmark/flink-table-store-cluster-benchmark => paimon-benchmark/paimon-cluster-benchmark}/src/main/resources/conf/log4j.properties (100%)
 rename {flink-table-store-benchmark/flink-table-store-cluster-benchmark => paimon-benchmark/paimon-cluster-benchmark}/src/main/resources/queries/q1.sql (100%)
 rename {flink-table-store-benchmark/flink-table-store-cluster-benchmark => paimon-benchmark/paimon-cluster-benchmark}/src/main/resources/queries/queries.yaml (100%)
 create mode 100644 paimon-benchmark/paimon-cluster-benchmark/src/main/resources/sinks/table_store.yaml
 create mode 100644 paimon-benchmark/paimon-micro-benchmarks/pom.xml
 create mode 100644 paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/Benchmark.java
 create mode 100644 paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
 create mode 100644 paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
 rename {flink-table-store-benchmark/flink-table-store-micro-benchmarks => paimon-benchmark/paimon-micro-benchmarks}/src/test/resources/log4j2-test.properties (100%)
 create mode 100644 paimon-benchmark/pom.xml
 create mode 100644 paimon-codegen-loader/pom.xml
 create mode 100644 paimon-codegen-loader/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
 create mode 100644 paimon-codegen/pom.xml
 create mode 100644 paimon-codegen/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java
 create mode 100644 paimon-codegen/src/main/java/org/apache/paimon/codegen/SortSpec.java
 create mode 100644 paimon-codegen/src/main/resources/META-INF/services/org.apache.paimon.codegen.CodeGenerator
 create mode 100644 paimon-codegen/src/main/scala/org/apache/paimon/codegen/CodeGenException.scala
 create mode 100644 paimon-codegen/src/main/scala/org/apache/paimon/codegen/CodeGeneratorContext.scala
 create mode 100644 paimon-codegen/src/main/scala/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
 create mode 100644 paimon-codegen/src/main/scala/org/apache/paimon/codegen/ExprCodeGenerator.scala
 create mode 100644 paimon-codegen/src/main/scala/org/apache/paimon/codegen/GenerateUtils.scala
 create mode 100644 paimon-codegen/src/main/scala/org/apache/paimon/codegen/GeneratedExpression.scala
 create mode 100644 paimon-codegen/src/main/scala/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
 create mode 100644 paimon-codegen/src/main/scala/org/apache/paimon/codegen/SortCodeGenerator.scala
 create mode 100644 paimon-common/pom.xml
 create mode 100644 paimon-common/src/main/antlr4/JavaLexer.g4
 create mode 100644 paimon-common/src/main/antlr4/JavaParser.g4
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/annotation/ConfigGroup.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/annotation/ConfigGroups.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/annotation/Documentation.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/annotation/Experimental.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/annotation/VisibleForTesting.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenerator.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/CompileUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedClass.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/NormalizedKeyComputer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/Projection.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/RecordComparator.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBoolBeforeReturnRewriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouper.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitUtil.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/FunctionSplitter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnAndJumpCounter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/AbstractBinaryWriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedInputView.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedOutputView.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/BinaryArrayWriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/BinaryRowWriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/BinarySection.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/BinaryWriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/DataGetters.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/DataSetters.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/Decimal.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/GenericArray.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/GenericMap.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/GenericRow.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/InternalArray.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/InternalMap.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/JoinedRow.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/LazyGenericRow.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/RandomAccessInputView.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/RandomAccessOutputView.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/SimpleCollectingOutputView.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/Timestamp.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/ArrayColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/BooleanColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/ByteColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/BytesColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarArray.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarMap.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRow.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRowIterator.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/DecimalColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/Dictionary.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/DoubleColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/FloatColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/IntColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/LongColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/MapColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/RowColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/ShortColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/TimestampColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/VectorizedColumnBatch.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/AbstractHeapVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapArrayVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapBooleanVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapByteVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapBytesVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapDoubleVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapFloatVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapIntVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapLongVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapMapVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapRowVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapShortVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapTimestampVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/AbstractWritableVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableBooleanVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableByteVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableBytesVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableColumnVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableDoubleVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableFloatVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableIntVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableLongVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableShortVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableTimestampVector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/AbstractRowDataSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/BinarySerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryStringSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/BooleanSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/ByteSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/DecimalSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/DoubleSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/FloatSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/IntSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalSerializers.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/ListSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/LongSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/NullableSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/PagedTypeSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/Serializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/SerializerSingleton.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/ShortSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/TimestampSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/data/serializer/VersionedSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/format/FieldStats.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/format/FileFormatFactory.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/format/FileStatsExtractor.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/format/FormatWriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/format/FormatWriterFactory.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/FileIO.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/FileIOLoader.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/FileStatus.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/Path.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/PluginFileIO.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/PositionOutputStream.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/PositionOutputStreamWrapper.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/SeekableInputStream.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/SeekableInputStreamWrapper.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/UnsupportedSchemeException.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIO.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIOLoader.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIOLoader.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/hadoop/SerializableConfiguration.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/io/DataInputDeserializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/io/DataInputView.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/io/DataInputViewStream.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/io/DataInputViewStreamWrapper.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/io/DataOutputSerializer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/io/DataOutputView.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/io/DataOutputViewStream.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/io/DataOutputViewStreamWrapper.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/io/SeekableDataInputView.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/io/cache/CacheManager.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/io/cache/CachedRandomInputView.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/lookup/LookupStoreFactory.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/lookup/LookupStoreReader.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/lookup/LookupStoreWriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreFactory.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreReader.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreWriter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/memory/MemorySegment.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentSource.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentWritable.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/memory/MemoryUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/CatalogOptions.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/ConfigOption.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/ConfigOptions.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/FallbackKey.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/MemorySize.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/Options.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/OptionsUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/StructuredOptionsSplitter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/description/BlockElement.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/description/DescribedEnum.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/description/Description.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/description/DescriptionElement.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/description/Formatter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/description/HtmlFormatter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/description/InlineElement.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/description/LineBreakElement.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/description/LinkElement.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/description/ListElement.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/options/description/TextElement.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/plugin/ComponentClassLoader.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/plugin/PluginLoader.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/And.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/CompareUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/CompoundPredicate.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/Equal.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/FieldRef.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/FunctionVisitor.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/GreaterOrEqual.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/GreaterThan.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/In.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/IsNotNull.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/IsNull.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/LeafFunction.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/LeafPredicate.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/LeafUnaryFunction.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/LessOrEqual.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/LessThan.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/NotEqual.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/NotIn.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/NullFalseLeafBinaryFunction.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/Or.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/Predicate.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/PredicateBuilder.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/PredicateFilter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/PredicateReplaceVisitor.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/PredicateVisitor.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/predicate/StartsWith.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/reader/RecordReader.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/reader/RecordReaderIterator.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/table/TableType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/ArrayType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/BigIntType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/BinaryType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/BooleanType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/CharType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DataField.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DataType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DataTypeCasts.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DataTypeChecks.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DataTypeDefaultVisitor.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DataTypeFamily.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DataTypeJsonParser.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DataTypeRoot.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DataTypeVisitor.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DataTypes.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DateType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DecimalType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/DoubleType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/FloatType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/IntType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/LocalZonedTimestampType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/MapType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/MultisetType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/ReassignFieldId.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/RowKind.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/RowType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/SmallIntType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/TimeType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/TimestampType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/TinyIntType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/VarBinaryType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/types/VarCharType.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/ArrayUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/BinaryRowDataUtil.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/CloseableIterator.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/DateTimeUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/DecimalUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/EncodingUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/ExceptionUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/FileIOUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/Filter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/FunctionWithException.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/HadoopUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/IOFunction.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/IOUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/InstantiationUtil.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/IteratorResultIterator.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/KeyProjectedRow.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/LocalFileUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/LongCounter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/MapBuilder.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/MathUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/MurmurHashUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/OperatingSystem.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/OrderedPacking.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/Pair.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/Pool.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/Preconditions.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/ProjectedRow.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/Projection.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/RecyclableIterator.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/Reference.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/ReflectionUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/RowDataToObjectArrayConverter.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/RowDataUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/SerializableFunction.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/SortUtil.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/StringUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/ThreadUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/ThrowingConsumer.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/TimeUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/TypeUtils.java
 create mode 100644 paimon-common/src/main/java/org/apache/paimon/utils/VarLengthIntUtils.java
 rename {flink-table-store-common => paimon-common}/src/main/resources/META-INF/NOTICE (100%)
 rename {flink-table-store-common => paimon-common}/src/main/resources/META-INF/licenses/LICENSE.antlr-java-grammar-files (100%)
 rename {flink-table-store-common => paimon-common}/src/main/resources/META-INF/licenses/LICENSE.antlr-runtime (100%)
 create mode 100644 paimon-common/src/main/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouperTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriterTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitterTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/DeclarationRewriterTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/FunctionSplitterTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/JavaParserTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriterTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriterTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/BinaryRowTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/BinaryStringTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/DataFormatTestUtil.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/DecimalTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/MapDataUtil.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/NestedRowTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/RowDataTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/TimestampTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/BinarySerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/BinaryStringSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/BooleanSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/ByteSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/DecimalSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/DoubleSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/FloatSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/IntSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalArraySerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalMapSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalRowSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/ListSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/LongSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/NullableSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/RowCompactedSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestBase.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestInstance.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/ShortSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/data/serializer/TimestampSerializerTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/datagen/DataGenVisitorBase.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/datagen/DataGenerator.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/datagen/DataGeneratorContainer.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/datagen/DataGeneratorMapper.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/datagen/RandomGenerator.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/datagen/RandomGeneratorVisitor.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/datagen/RowDataGenerator.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/fs/FileIOBehaviorTestBase.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/fs/FileIOFinder.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/fs/HadoopConfigLoadingTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/fs/HadoopLocalFileIOBehaviorTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/fs/HdfsBehaviorTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/fs/LocalFileIOBehaviorTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/io/cache/CachedRandomInputViewTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/lookup/hash/HashLookupStoreFactoryTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/memory/MemorySegmentTestBase.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/memory/OffHeapDirectMemorySegmentTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/memory/OnHeapMemorySegmentTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/types/DataTypeAssert.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/types/DataTypeChecksTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/types/DataTypesTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/utils/CommonTestUtils.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/utils/LocalFileUtilsTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/utils/RowDataUtilsTest.java
 create mode 100644 paimon-common/src/test/java/org/apache/paimon/utils/TempDirUtils.java
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/add-boolean/code/TestAddBooleanBeforeReturn.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/add-boolean/code/TestNotRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/add-boolean/code/TestRewriteInnerClass.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/add-boolean/code/TestSkipAnonymousClassAndLambda.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/add-boolean/expected/TestAddBooleanBeforeReturn.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/add-boolean/expected/TestNotRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/add-boolean/expected/TestRewriteInnerClass.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/add-boolean/expected/TestSkipAnonymousClassAndLambda.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/code/TestIfInsideWhileLoopRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/code/TestIfMultipleSingleLineStatementRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/code/TestIfStatementRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/code/TestIfStatementRewrite1.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/code/TestIfStatementRewrite2.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/code/TestIfStatementRewrite3.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/code/TestNotRewriteIfStatementInFunctionWithReturnValue.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/code/TestRewriteInnerClass.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/code/TestRewriteTwoStatements.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/code/TestWhileLoopInsideIfRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/code/TestWhileLoopRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/expected/TestIfInsideWhileLoopRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/expected/TestIfMultipleSingleLineStatementRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/expected/TestIfStatementRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/expected/TestIfStatementRewrite1.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/expected/TestIfStatementRewrite2.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/expected/TestIfStatementRewrite3.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/expected/TestNotRewriteIfStatementInFunctionWithReturnValue.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/expected/TestRewriteInnerClass.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/expected/TestRewriteTwoStatements.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/expected/TestWhileLoopInsideIfRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/block/expected/TestWhileLoopRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/code/TestLocalVariableAndMemberVariableWithSameName.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/code/TestLocalVariableWithSameName.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/code/TestNotRewriteLocalVariableInFunctionWithReturnValue.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/code/TestRewriteInnerClass.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariable.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariableInForLoop1.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariableInForLoop2.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/expected/TestLocalVariableAndMemberVariableWithSameName.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/expected/TestLocalVariableWithSameName.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/expected/TestNotRewriteLocalVariableInFunctionWithReturnValue.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/expected/TestRewriteInnerClass.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariable.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariableInForLoop1.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariableInForLoop2.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/function/code/TestNotSplitFunctionWithOnlyOneStatement.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/function/code/TestNotSplitFunctionWithReturnValue.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/function/code/TestRewriteInnerClass.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/function/code/TestSplitFunction.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/function/expected/TestNotSplitFunctionWithOnlyOneStatement.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/function/expected/TestNotSplitFunctionWithReturnValue.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/function/expected/TestRewriteInnerClass.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/function/expected/TestSplitFunction.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/groups/code/IfInWhile.txt (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/groups/code/WhileInIf.txt (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/groups/expected/IfInWhile.txt (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/groups/expected/WhileInIf.txt (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/member/code/TestNotRewriteFunctionParameter.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/member/code/TestNotRewriteLocalVariable.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/member/code/TestNotRewriteMember.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/member/code/TestRewriteGenericType.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/member/code/TestRewriteInnerClass.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/member/code/TestRewriteMemberField.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/member/expected/TestNotRewriteFunctionParameter.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/member/expected/TestNotRewriteLocalVariable.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/member/expected/TestNotRewriteMember.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/member/expected/TestRewriteGenericType.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/member/expected/TestRewriteInnerClass.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/member/expected/TestRewriteMemberField.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/return/code/TestNotRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/return/code/TestRewriteInnerClass.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/return/code/TestRewriteReturnValue.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/return/code/TestSkipAnonymousClassAndLambda.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/return/expected/TestNotRewrite.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/return/expected/TestRewriteInnerClass.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/return/expected/TestRewriteReturnValue.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/return/expected/TestSkipAnonymousClassAndLambda.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/splitter/code/TestNotSplitJavaCode.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/splitter/code/TestSplitJavaCode.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/splitter/expected/TestNotSplitJavaCode.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/codesplit/splitter/expected/TestSplitJavaCode.java (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/core-site.xml (100%)
 rename {flink-table-store-common => paimon-common}/src/test/resources/log4j2-test.properties (100%)
 create mode 100644 paimon-core/pom.xml
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/AbstractFileStore.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/AppendOnlyFileStore.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/CoreOptions.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/FileStore.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/KeyValue.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/KeyValueFileStore.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/KeyValueSerializer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/Snapshot.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/WriteMode.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyCompactManager.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyWriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/casting/CastExecutor.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/casting/CastExecutors.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/casting/CastFieldGetter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/casting/CastedRow.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/catalog/AbstractCatalog.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/catalog/Catalog.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/catalog/CatalogFactory.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/catalog/CatalogLock.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/catalog/CatalogUtils.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalog.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalogFactory.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/catalog/Identifier.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compact/CompactFutureManager.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compact/CompactManager.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compact/CompactResult.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compact/CompactTask.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compact/CompactUnit.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compact/NoopCompactManager.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compression/BlockCompressionFactory.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compression/BlockCompressor.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compression/BlockDecompressor.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compression/BufferCompressionException.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compression/BufferDecompressionException.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compression/CompressorUtils.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compression/Lz4BlockCompressionFactory.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compression/Lz4BlockCompressor.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/compression/Lz4BlockDecompressor.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/AbstractFileIOChannel.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/BufferFileChannelReader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/BufferFileReader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/BufferFileReaderImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/BufferFileWriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/BufferFileWriterImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputView.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputViewIterator.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/ChannelWithMeta.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/ChannelWriterOutputView.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/FileChannelManager.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/FileChannelManagerImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/FileChannelUtil.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/FileIOChannel.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/IOManager.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/disk/IOManagerImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/format/FileFormatDiscover.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/format/FormatKey.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/AbstractFileRecordIterator.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/CompactIncrement.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/DataFileMeta.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/DataFileMetaSerializer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/DataFilePathFactory.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/FileWriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileRecordReader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileWriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileReaderFactory.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileWriterFactory.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/NewFilesIncrement.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/RollingFileWriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/RowDataFileRecordReader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/RowDataFileWriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/RowDataRollingFileWriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/SingleFileWriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/io/StatsCollectingSingleFileWriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/manifest/FileKind.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/manifest/ManifestCommittable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/manifest/ManifestCommittableSerializer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntry.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntrySerializer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFile.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMeta.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMetaSerializer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/manifest/ManifestList.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/memory/Buffer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/memory/HeapMemorySegmentPool.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/memory/MemoryOwner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/memory/MemoryPoolFactory.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/memory/MemorySegmentPool.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/DataFileReader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/DropDeleteReader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/LevelSortedRun.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/Levels.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/LookupLevels.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeReaders.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeWriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/SortBufferWriteBuffer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/SortedRun.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/WriteBuffer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/AbstractCompactRewriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogMergeTreeRewriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogResult.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/CompactRewriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/CompactStrategy.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ConcatRecordReader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/DeduplicateMergeFunction.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ForceUpLevel0Compaction.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapper.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/IntervalPartition.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupCompaction.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeFunction.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeTreeCompactRewriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunction.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunctionFactory.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunctionWrapper.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManager.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactRewriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactTask.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/PartialUpdateMergeFunction.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapper.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/SortMergeReader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/UniversalCompaction.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ValueCountMergeFunction.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/AggregateMergeFunction.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldAggregator.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldBoolAndAgg.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldBoolOrAgg.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldLastValueAgg.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldListaggAgg.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldMaxAgg.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldMinAgg.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldSumAgg.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreWrite.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreRead.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreWrite.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/FileStoreCommit.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/FileStoreCommitImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/FileStoreExpire.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/FileStoreExpireImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/FileStoreRead.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/FileStoreScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/FileStoreWrite.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreRead.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreWrite.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/Lock.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/MemoryFileStoreWrite.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/PartitionExpire.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/ReverseReader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/operation/ScanKind.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/partition/PartitionTimeExtractor.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/predicate/BucketSelector.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/schema/IndexCastMapping.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/schema/KeyValueFieldsExtractor.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/schema/Schema.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/schema/SchemaChange.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/schema/SchemaEvolutionUtil.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/schema/SchemaManager.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/schema/SchemaSerializer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/schema/SchemaValidation.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/schema/SystemColumns.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/schema/TableSchema.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/AbstractBinaryExternalMerger.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/BinaryExternalMerger.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/BinaryExternalSortBuffer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/BinaryInMemorySortBuffer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/BinaryIndexedSortable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/BinaryMergeIterator.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/HeapSort.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/IndexedSortable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/IndexedSorter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/PartialOrderPriorityQueue.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/QuickSort.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/SortBuffer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/sort/SpillChannelManager.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/stats/BinaryTableStats.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/stats/FieldStatsArraySerializer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/stats/FieldStatsConverters.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/DataTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/InnerTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/ReadonlyTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/SupportsPartition.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/Table.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/TableUtils.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/BatchTableCommit.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/BatchTableWrite.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilder.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilderImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessage.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/InnerTableWrite.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/SequenceGenerator.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecord.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/StreamTableCommit.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/StreamTableWrite.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilder.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilderImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommit.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/sink/WriteBuilder.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/EndOfScanException.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/InnerStreamTableScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableRead.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilderImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/ReadOnceTableScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/Split.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/TableRead.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/TableScan.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/table/system/SystemTableLoader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/BulkFormatMapping.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/CommitIncrement.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/ExecutorThreadFactory.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/FatalExitExceptionHandler.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/FileStorePathFactory.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/FileUtils.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/IteratorRecordReader.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/JsonDeserializer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/JsonSerdeUtil.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/JsonSerializer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/KeyComparatorSupplier.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/MutableObjectIterator.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/ObjectSerializer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/OffsetRow.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/PartitionPathUtils.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/RecordWriter.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/Restorable.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/RowDataPartitionComputer.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/SerializableSupplier.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/SerializationUtils.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/SnapshotManager.java
 create mode 100644 paimon-core/src/main/java/org/apache/paimon/utils/VersionedObjectSerializer.java
 create mode 100644 paimon-core/src/main/resources/META-INF/services/org.apache.paimon.catalog.CatalogFactory
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/CoreOptionsTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/FileFormatTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/KeyValueSerializerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/TestFileStore.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/TestKeyValueGenerator.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyCompactManagerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyWriterTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/append/IterativeCompactTaskTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/casting/CastExecutorTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/catalog/CatalogFactoryTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/disk/BufferFileWriterReaderTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/disk/IOManagerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/format/FileFormatSuffixTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/format/FileStatsExtractingAvroFormat.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/format/FileStatsExtractingAvroFormatFactory.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/format/FlushingFileFormat.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/io/DataFileMetaSerializerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/io/DataFilePathFactoryTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/io/DataFileTestDataGenerator.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/io/DataFileTestUtils.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/io/KeyValueFileReadWriteTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/io/RollingFileWriterTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/manifest/ManifestCommittableSerializerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/manifest/ManifestEntrySerializerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaSerializerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/manifest/ManifestListTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/manifest/ManifestTestDataGenerator.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/memory/MemoryPoolFactoryTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/LevelsTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/LookupLevelsTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/MergeTreeTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/SortBufferWriteBufferTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/compact/CombiningRecordReaderTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ConcatRecordReaderTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ForceUpLevel0CompactionTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/compact/IntervalPartitionTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeFunctionTestUtils.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManagerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/compact/SortMergeReaderTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/compact/UniversalCompactionTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/mergetree/compact/aggregate/FieldAggregatorTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/operation/CleanedFileStoreExpireTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/operation/FileStoreCommitTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/operation/FileStoreExpireTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreReadTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreScanTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/operation/PartitionExpireTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/operation/TestCommitThread.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/operation/UncleanedFileStoreExpireTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/partition/PartitionTimeExtractorTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/predicate/BucketSelectorTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/predicate/PredicateBuilderTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/predicate/PredicateTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/schema/DataTypeJsonParserTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/schema/SchemaEvolutionUtilTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/schema/SchemaManagerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/schema/SchemaUtils.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/schema/TableSchemaSerializationTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/schema/TableSchemaTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/sort/BinaryExternalSortBufferTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/sort/IntNormalizedKeyComputer.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/sort/IntRecordComparator.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/stats/BinaryTableStatsTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/stats/FieldStatsArraySerializerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/stats/FieldStatsCollectorTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/stats/StatsTestUtils.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/stats/TestFileStatsExtractor.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/utils/BlockingIterator.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/utils/CompatibilityTestUtils.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/utils/FailingFileIO.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/utils/FileStorePathFactoryTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/utils/ObjectSerializerTestBase.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/utils/OffsetRowTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/utils/ReusingKeyValue.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/utils/ReusingTestData.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/utils/SnapshotManagerTest.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/utils/TestReusingRecordReader.java
 create mode 100644 paimon-core/src/test/java/org/apache/paimon/utils/TraceableFileIO.java
 create mode 100644 paimon-core/src/test/resources/META-INF/services/org.apache.paimon.format.FileFormatFactory
 create mode 100644 paimon-core/src/test/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
 rename {flink-table-store-core => paimon-core}/src/test/resources/compatibility/table-changelog-0.2.zip (100%)
 rename {flink-table-store-core => paimon-core}/src/test/resources/log4j2-test.properties (100%)
 create mode 100644 paimon-docs/README.md
 create mode 100644 paimon-docs/pom.xml
 create mode 100644 paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
 create mode 100644 paimon-docs/src/main/java/org/apache/paimon/docs/configuration/OptionsClassLocation.java
 create mode 100644 paimon-docs/src/main/java/org/apache/paimon/docs/util/Utils.java
 create mode 100644 paimon-docs/src/main/resources/log4j.properties
 create mode 100644 paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
 create mode 100644 paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
 create mode 100644 paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
 create mode 100644 paimon-e2e-tests/pom.xml
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eQueryExecutor.java
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eReaderTestBase.java
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eTestBase.java
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreStreamE2eTest.java
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/LogStoreE2eTest.java
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/SparkE2eTest.java
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/TypeE2eTest.java
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/utils/ParameterProperty.java
 create mode 100644 paimon-e2e-tests/src/test/java/org/apache/paimon/tests/utils/TestUtils.java
 create mode 100644 paimon-e2e-tests/src/test/resources-filtered/docker-compose.yaml
 rename {flink-table-store-e2e-tests => paimon-e2e-tests}/src/test/resources/flink.env (100%)
 rename {flink-table-store-e2e-tests => paimon-e2e-tests}/src/test/resources/hadoop-hive.env (100%)
 rename {flink-table-store-e2e-tests => paimon-e2e-tests}/src/test/resources/log4j2-test.properties (100%)
 create mode 100644 paimon-filesystems/paimon-hadoop-shaded/pom.xml
 create mode 100644 paimon-filesystems/paimon-hadoop-shaded/src/main/resources/META-INF/NOTICE
 rename {flink-table-store-filesystems/flink-table-store-hadoop-shaded => paimon-filesystems/paimon-hadoop-shaded}/src/main/resources/META-INF/licenses/LICENSE-re2j (100%)
 rename {flink-table-store-filesystems/flink-table-store-hadoop-shaded => paimon-filesystems/paimon-hadoop-shaded}/src/main/resources/META-INF/licenses/LICENSE-stax2api (100%)
 create mode 100644 paimon-filesystems/paimon-oss-impl/pom.xml
 create mode 100644 paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/HadoopCompliantFileIO.java
 create mode 100644 paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
 create mode 100644 paimon-filesystems/paimon-oss-impl/src/main/resources/META-INF/NOTICE
 rename {flink-table-store-filesystems/flink-table-store-oss-impl => paimon-filesystems/paimon-oss-impl}/src/main/resources/META-INF/licenses/LICENSE.jdom (100%)
 create mode 100644 paimon-filesystems/paimon-oss/pom.xml
 create mode 100644 paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
 create mode 100644 paimon-filesystems/paimon-oss/src/main/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
 create mode 100644 paimon-filesystems/paimon-s3-impl/pom.xml
 rename {flink-table-store-filesystems/flink-table-store-s3-impl => paimon-filesystems/paimon-s3-impl}/src/main/java/com/amazonaws/services/s3/model/transform/XmlResponsesSaxParser.java (100%)
 create mode 100644 paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/HadoopCompliantFileIO.java
 create mode 100644 paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
 create mode 100644 paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/NOTICE
 rename {flink-table-store-filesystems/flink-table-store-s3-impl => paimon-filesystems/paimon-s3-impl}/src/main/resources/META-INF/licenses/LICENSE-re2j (100%)
 rename {flink-table-store-filesystems/flink-table-store-s3-impl => paimon-filesystems/paimon-s3-impl}/src/main/resources/META-INF/licenses/LICENSE-stax2api (100%)
 rename {flink-table-store-filesystems/flink-table-store-s3-impl => paimon-filesystems/paimon-s3-impl}/src/main/resources/META-INF/licenses/LICENSE.jaxb (100%)
 create mode 100644 paimon-filesystems/paimon-s3/pom.xml
 create mode 100644 paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
 create mode 100644 paimon-filesystems/paimon-s3/src/main/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
 create mode 100644 paimon-filesystems/pom.xml
 create mode 100644 paimon-flink/paimon-flink-1.14/pom.xml
 create mode 100644 paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/PaimonDataStreamScanProvider.java
 create mode 100644 paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/PaimonDataStreamSinkProvider.java
 create mode 100644 paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableConfigUtils.java
 create mode 100644 paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/lookup/LookupRuntimeProviderFactory.java
 create mode 100644 paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/lookup/OldLookupFunction.java
 create mode 100644 paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/utils/StreamExecutionEnvironmentUtils.java
 create mode 100644 paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/utils/TableEnvironmentUtils.java
 create mode 100644 paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/BatchFileStoreITCase.java
 create mode 100644 paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/CatalogITCaseBase.java
 create mode 100644 paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/ContinuousFileStoreITCase.java
 create mode 100644 paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/FlinkActionITCase.java
 create mode 100644 paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/LookupJoinITCase.java
 rename {flink-table-store-flink/flink-table-store-flink-1.14 => paimon-flink/paimon-flink-1.14}/src/test/resources/log4j2-test.properties (100%)
 create mode 100644 paimon-flink/paimon-flink-1.15/pom.xml
 create mode 100644 paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/flink/lookup/LookupRuntimeProviderFactory.java
 create mode 100644 paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/flink/lookup/OldLookupFunction.java
 create mode 100644 paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/BatchFileStoreITCase.java
 create mode 100644 paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/CatalogITCaseBase.java
 create mode 100644 paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/ContinuousFileStoreITCase.java
 create mode 100644 paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/FlinkActionITCase.java
 create mode 100644 paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/LookupJoinITCase.java
 rename {flink-table-store-flink/flink-table-store-flink-1.15 => paimon-flink/paimon-flink-1.15}/src/test/resources/log4j2-test.properties (100%)
 create mode 100644 paimon-flink/paimon-flink-1.16/pom.xml
 create mode 100644 paimon-flink/paimon-flink-common/pom.xml
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractFlinkTableFactory.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/BinaryRowTypeSerializer.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/DataCatalogTable.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/DataTypeToLogicalType.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalogFactory.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkConnectorOptions.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkFileIO.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkFileIOLoader.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkRowData.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkRowWrapper.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkTableFactory.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkUtils.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/HadoopUtils.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/LogicalTypeConversion.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/LogicalTypeToDataType.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/PaimonDataStreamScanProvider.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/PaimonDataStreamSinkProvider.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/PredicateConverter.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/ProjectedRowData.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/Projection.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/RocksDBOptions.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/SystemCatalogTable.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableConfigUtils.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/VersionedSerializerWrapper.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/Action.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/ActionBase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/CompactAction.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/DeleteAction.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/DropPartitionAction.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/FlinkActions.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/MergeIntoAction.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogDeserializationSchema.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogOptions.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogSerializationSchema.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogSinkProvider.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogSourceProvider.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogStoreFactory.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaSinkFunction.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogSinkProvider.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogSourceProvider.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogStoreTableFactory.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogWriteCallback.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/FileStoreLookupFunction.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/LookupRuntimeProviderFactory.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/LookupTable.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/NewLookupFunction.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/PrimaryKeyLookupTable.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBSetState.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBState.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBStateFactory.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBValueState.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/SecondaryIndexLookupTable.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/BucketStreamPartitioner.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/Committable.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommittableSerializer.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommittableStateManager.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommittableTypeInfo.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/Committer.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommitterOperator.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CompactorSink.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CompactorSinkBuilder.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FileStoreSink.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkSink.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkSinkBuilder.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkTableSink.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FullChangelogStoreSinkWrite.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/LogOffsetCommittable.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/LogSinkFunction.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/LookupChangelogStoreSinkWrite.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/NoopCommittableStateManager.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/OffsetRowDataHashStreamPartitioner.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/PrepareCommitOperator.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/RestoreAndFailCommittableStateManager.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StateUtils.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreCommitter.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreCompactOperator.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreSinkWrite.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreSinkWriteImpl.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreWriteOperator.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/CompactorSourceBuilder.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/ContinuousFileSplitEnumerator.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/ContinuousFileStoreSource.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/DataTableSource.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceReader.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplit.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitGenerator.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitReader.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitSerializer.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitState.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FlinkSource.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FlinkSourceBuilder.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FlinkTableSource.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/LogHybridSourceFactory.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/PendingSplitsCheckpoint.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/PendingSplitsCheckpointSerializer.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/RecordsFunction.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SimpleSystemSource.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SingleIteratorRecords.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/StaticFileStoreSource.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/StaticFileStoreSplitEnumerator.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SystemTableSource.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/utils/StreamExecutionEnvironmentUtils.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/utils/TableEnvironmentUtils.java
 create mode 100644 paimon-flink/paimon-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AbstractFlinkTableFactoryTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AppendOnlyTableITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/BatchFileStoreITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/BinaryRowTypeSerializerTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CatalogITCaseBase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CatalogTableITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogModeTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogWithKeyFileStoreTableITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CompositePkAndMultiPartitionedTableITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ComputedColumnAndWatermarkTableITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ContinuousFileStoreITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CreateTableITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/DropTableITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FileStoreITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FileSystemCatalogITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FiniteTestSource.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FlinkCatalogTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FlinkTestBase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ForceCompactionITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FullCompactionFileStoreITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LargeDataITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LogSystemITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LookupChangelogWithAggITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LookupJoinITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/MappingTableITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PartialUpdateITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PreAggregationITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PredicateConverterTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PredicateITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ReadWriteTableITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/RescaleBucketITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/SchemaChangeITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/SerializableRowData.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ShowCreateUtil.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/StreamingReadWriteTableWithKafkaLogITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/StreamingWarehouseITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/ActionITCaseBase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/CompactActionITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/DeleteActionITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/DropPartitionActionITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/MergeIntoActionITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/kafka/KafkaLogSerializationTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/kafka/KafkaLogTestUtils.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/kafka/KafkaTableTestBase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/lookup/LookupTableTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CommittableSerializerTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CommitterOperatorTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CommitterOperatorTestBase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CompactorSinkITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/FileStoreShuffleBucketTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/LogOffsetCommittableTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/SinkSavepointITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/CompactorSourceITCase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/ContinuousFileSplitEnumeratorTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceReaderTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitGeneratorTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitReaderTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitSerializerTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitStateTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/PendingSplitsCheckpointSerializerTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/RecordsFunctionTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/SingleIteratorRecordsTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/StaticFileStoreSplitEnumeratorTest.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/TestChangelogDataReadWrite.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/util/AbstractTestBase.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/util/MiniClusterWithClientExtension.java
 create mode 100644 paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/util/ReadWriteTableTestUtil.java
 rename {flink-table-store-flink/flink-table-store-flink-common => paimon-flink/paimon-flink-common}/src/test/resources/log4j2-test.properties (100%)
 create mode 100644 paimon-flink/pom.xml
 create mode 100644 paimon-format/pom.xml
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/avro/AbstractAvroBulkFormat.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/avro/AvroBuilder.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/avro/AvroBulkWriter.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormatFactory.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/avro/AvroSchemaConverter.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/avro/AvroToRowDataConverters.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/avro/AvroWriterFactory.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/avro/CloseShieldOutputStream.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/avro/JodaConverter.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/avro/RowDataToAvroConverters.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/avro/SeekableInputStreamWrapper.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/fs/HadoopReadOnlyFileSystem.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormatFactory.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/OrcReaderFactory.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/OrcWriterFactory.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/SerializableHadoopConfigWrapper.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/ThreadLocalClassLoaderConfiguration.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcFileStatsExtractor.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcFilters.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/reader/AbstractOrcColumnVector.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcArrayColumnVector.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcBytesColumnVector.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcDecimalColumnVector.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcDoubleColumnVector.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcLegacyTimestampColumnVector.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcLongColumnVector.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcMapColumnVector.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcRowColumnVector.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcSplitReaderUtil.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcTimestampColumnVector.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/writer/OrcBulkWriter.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/writer/PhysicalWriterImpl.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/writer/RowDataVectorizer.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/orc/writer/Vectorizer.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormatFactory.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractor.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputFile.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputStream.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetReaderFactory.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetSchemaConverter.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetUtil.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetWriterFactory.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/AbstractColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ArrayColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/BaseVectorizedColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/BooleanColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ByteColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/BytesColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/DoubleColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/FixedLenBytesColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/FloatColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/IntColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/LongColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/MapColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDataColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDataColumnReaderFactory.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDecimalVector.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDictionary.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetSplitReaderUtil.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetTimestampVector.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/RowColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/RunLengthDecoder.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ShortColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/TimestampColumnReader.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetBuilder.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetBulkWriter.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetRowDataBuilder.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetRowDataWriter.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/PositionOutputStreamAdapter.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/RowDataParquetBuilder.java
 create mode 100644 paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/StreamOutputFile.java
 create mode 100644 paimon-format/src/main/resources/META-INF/NOTICE
 create mode 100644 paimon-format/src/main/resources/META-INF/services/org.apache.paimon.format.FileFormatFactory
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/BulkFileFormatTest.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/avro/AvroBulkFormatTest.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/avro/AvroBulkFormatTestUtils.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/orc/OrcBulkWriterTestUtil.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileFormatTest.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileStatsExtractorTest.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/orc/OrcReaderFactoryTest.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/orc/OrcSplitReaderUtilTest.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/orc/OrcWriterFactoryTest.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/orc/Record.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/orc/RecordVectorizer.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileFormatTest.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractorTest.java
 create mode 100644 paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetReadWriteTest.java
 rename {flink-table-store-format => paimon-format}/src/test/resources/test-data-decimal.orc (100%)
 rename {flink-table-store-format => paimon-format}/src/test/resources/test-data-flat.orc (100%)
 create mode 100644 paimon-hive/paimon-hive-catalog/pom.xml
 create mode 100644 paimon-hive/paimon-hive-catalog/src/main/java/org/apache/flink/table/hive/LegacyHiveClasses.java
 create mode 100644 paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
 create mode 100644 paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
 create mode 100644 paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
 create mode 100644 paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/SerializableHiveConf.java
 create mode 100644 paimon-hive/paimon-hive-catalog/src/main/resources-filtered/META-INF/NOTICE
 create mode 100644 paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.paimon.catalog.CatalogFactory
 create mode 100644 paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/AlterFailHiveMetaStoreClient.java
 create mode 100644 paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/CreateFailHiveMetaStoreClient.java
 create mode 100644 paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/CustomHiveMetastoreClientITCase.java
 create mode 100644 paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
 create mode 100644 paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/TestHiveMetaStoreClient.java
 create mode 100644 paimon-hive/paimon-hive-common/pom.xml
 create mode 100644 paimon-hive/paimon-hive-common/src/main/java/org/apache/paimon/hive/HiveTypeUtils.java
 create mode 100644 paimon-hive/paimon-hive-connector-2.1-cdh-6.3/pom.xml
 create mode 100644 paimon-hive/paimon-hive-connector-2.1/pom.xml
 create mode 100644 paimon-hive/paimon-hive-connector-2.2/pom.xml
 create mode 100644 paimon-hive/paimon-hive-connector-2.3/pom.xml
 create mode 100644 paimon-hive/paimon-hive-connector-3.1/pom.xml
 create mode 100644 paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/PaimonDateObjectInspector.java
 create mode 100644 paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/PaimonTimestampObjectInspector.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/pom.xml
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreHiveStorageHandler.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreSerDe.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreInputFormat.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreOutputFormat.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonJobConf.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonMetaHook.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonSerDe.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonStorageHandler.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/RowDataContainer.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/SearchArgumentToPredicateConverter.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonInputFormat.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonInputSplit.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonOutputFormat.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonRecordReader.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonCharObjectInspector.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonDateObjectInspector.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonDecimalObjectInspector.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonListObjectInspector.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonMapObjectInspector.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonObjectInspectorFactory.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonRowDataObjectInspector.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonStringObjectInspector.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonTimestampObjectInspector.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonVarcharObjectInspector.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/PaimonSerDeTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/PaimonStorageHandlerITCase.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/RandomGenericRowDataGenerator.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/PaimonInputSplitTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/PaimonRecordReaderTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonCharObjectInspectorTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonDateObjectInspectorTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonDecimalObjectInspectorTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonListObjectInspectorTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonMapObjectInspectorTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonRowDataObjectInspectorTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonStringObjectInspectorTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonTimestampObjectInspectorTest.java
 create mode 100644 paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonVarcharObjectInspectorTest.java
 rename {flink-table-store-hive/flink-table-store-hive-connector-common => paimon-hive/paimon-hive-connector-common}/src/test/resources/log4j2-test.properties (100%)
 create mode 100644 paimon-hive/pom.xml
 create mode 100644 paimon-shade/pom.xml
 create mode 100644 paimon-spark/paimon-spark-2/pom.xml
 create mode 100644 paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
 create mode 100644 paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
 create mode 100644 paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
 create mode 100644 paimon-spark/paimon-spark-2/src/main/resources/META-INF.services/org.apache.spark.sql.sources.DataSourceRegister
 create mode 100644 paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
 create mode 100644 paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
 create mode 100644 paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkInternalRowTest.java
 create mode 100644 paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
 create mode 100644 paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkTypeTest.java
 rename {flink-table-store-spark/flink-table-store-spark-2 => paimon-spark/paimon-spark-2}/src/test/resources/log4j2-test.properties (100%)
 create mode 100644 paimon-spark/paimon-spark-3.1/pom.xml
 create mode 100644 paimon-spark/paimon-spark-3.2/pom.xml
 create mode 100644 paimon-spark/paimon-spark-3.3/pom.xml
 create mode 100644 paimon-spark/paimon-spark-common/pom.xml
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkArrayData.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkFilterConverter.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkInternalRow.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkReaderFactory.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkRow.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScan.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTypeUtils.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWrite.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWriteBuilder.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SpecializedGettersReader.java
 create mode 100644 paimon-spark/paimon-spark-common/src/main/resources/META-INF/services/org.apache.spark.sql.sources.DataSourceRegister
 create mode 100644 paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/MinioTestContainer.java
 create mode 100644 paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
 create mode 100644 paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkInternalRowTest.java
 create mode 100644 paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
 create mode 100644 paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
 create mode 100644 paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkS3ITCase.java
 create mode 100644 paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkSchemaEvolutionITCase.java
 create mode 100644 paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkTypeTest.java
 create mode 100644 paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkWriteITCase.java
 rename {flink-table-store-spark/flink-table-store-spark-common => paimon-spark/paimon-spark-common}/src/test/resources/log4j2-test.properties (100%)
 create mode 100644 paimon-spark/pom.xml
 create mode 100644 paimon-test-utils/pom.xml
 create mode 100644 paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/DockerImageVersions.java
 create mode 100644 paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/TestLoggerExtension.java
 create mode 100644 paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/parameterized/Parameter.java
 create mode 100644 paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/parameterized/ParameterizedTestExtension.java
 create mode 100644 paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/parameterized/Parameters.java


[incubator-paimon] 23/32: [core] Rename paimon from flink-table-store

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 268a4f28f881f049cd4ddf7010e3e977b89af014
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 19:38:38 2023 +0800

    [core] Rename paimon from flink-table-store
---
 NOTICE                                             |  2 +-
 README.md                                          |  6 +-
 docs/content/engines/flink.md                      | 10 +--
 docs/content/engines/hive.md                       | 20 +++---
 docs/content/engines/spark2.md                     |  8 +--
 docs/content/engines/spark3.md                     | 14 ++--
 docs/content/engines/trino.md                      |  4 +-
 docs/content/filesystems/oss.md                    | 12 ++--
 docs/content/filesystems/s3.md                     | 12 ++--
 docs/content/how-to/creating-catalogs.md           |  6 +-
 docs/content/how-to/writing-tables.md              | 20 +++---
 docs/content/maintenance/write-performance.md      |  4 +-
 .../partials/docs/inject/content-before.html       |  4 +-
 .../paimon-cluster-benchmark/README.md             | 16 ++---
 paimon-benchmark/paimon-cluster-benchmark/pom.xml  | 10 +--
 .../src/main/assemblies/bin.xml                    |  4 +-
 paimon-benchmark/paimon-micro-benchmarks/pom.xml   | 12 ++--
 paimon-benchmark/pom.xml                           |  8 +--
 paimon-codegen-loader/pom.xml                      | 30 ++++----
 .../org/apache/paimon/codegen/CodeGenLoader.java   |  2 +-
 paimon-codegen/pom.xml                             | 12 ++--
 paimon-common/pom.xml                              | 12 ++--
 .../org/apache/paimon/plugin/PluginLoader.java     |  3 +-
 paimon-core/pom.xml                                | 24 +++----
 paimon-docs/pom.xml                                | 16 ++---
 .../configuration/ConfigOptionsDocGenerator.java   | 10 ++-
 .../ConfigOptionsDocsCompletenessITCase.java       |  2 +-
 paimon-e2e-tests/pom.xml                           | 60 ++++++++--------
 .../tests/FileStoreBuiltInFormatE2eTest.java       |  2 +-
 .../apache/paimon/tests/FlinkActionsE2eTest.java   |  8 +--
 .../java/org/apache/paimon/tests/HiveE2eTest.java  |  3 +-
 .../test/resources-filtered/docker-compose.yaml    | 18 ++---
 paimon-filesystems/paimon-hadoop-shaded/pom.xml    |  8 +--
 .../src/main/resources/META-INF/NOTICE             |  2 +-
 paimon-filesystems/paimon-oss-impl/pom.xml         | 16 ++---
 .../src/main/resources/META-INF/NOTICE             |  2 +-
 paimon-filesystems/paimon-oss/pom.xml              | 22 +++---
 .../main/java/org/apache/paimon/oss/OSSLoader.java |  2 +-
 paimon-filesystems/paimon-s3-impl/pom.xml          | 12 ++--
 .../src/main/resources/META-INF/NOTICE             |  2 +-
 paimon-filesystems/paimon-s3/pom.xml               | 22 +++---
 .../main/java/org/apache/paimon/s3/S3Loader.java   |  2 +-
 paimon-filesystems/pom.xml                         |  8 +--
 paimon-flink/paimon-flink-1.14/pom.xml             | 14 ++--
 paimon-flink/paimon-flink-1.15/pom.xml             | 14 ++--
 paimon-flink/paimon-flink-1.16/pom.xml             | 14 ++--
 paimon-flink/paimon-flink-common/pom.xml           | 20 +++---
 paimon-flink/pom.xml                               | 28 ++++----
 paimon-format/pom.xml                              | 16 ++---
 paimon-format/src/main/resources/META-INF/NOTICE   |  2 +-
 paimon-hive/paimon-hive-catalog/pom.xml            | 28 ++++----
 .../java/org/apache/paimon/hive/HiveCatalog.java   |  2 +-
 .../src/main/resources-filtered/META-INF/NOTICE    |  2 +-
 paimon-hive/paimon-hive-common/pom.xml             | 12 ++--
 .../paimon-hive-connector-2.1-cdh-6.3/pom.xml      | 14 ++--
 paimon-hive/paimon-hive-connector-2.1/pom.xml      | 14 ++--
 paimon-hive/paimon-hive-connector-2.2/pom.xml      | 14 ++--
 paimon-hive/paimon-hive-connector-2.3/pom.xml      | 14 ++--
 paimon-hive/paimon-hive-connector-3.1/pom.xml      | 14 ++--
 paimon-hive/paimon-hive-connector-common/pom.xml   | 26 +++----
 paimon-hive/pom.xml                                |  8 +--
 paimon-shade/pom.xml                               | 32 ++++-----
 paimon-spark/paimon-spark-2/pom.xml                | 14 ++--
 paimon-spark/paimon-spark-3.1/pom.xml              | 14 ++--
 paimon-spark/paimon-spark-3.2/pom.xml              | 14 ++--
 paimon-spark/paimon-spark-3.3/pom.xml              | 14 ++--
 paimon-spark/paimon-spark-common/pom.xml           | 10 +--
 paimon-spark/pom.xml                               | 20 +++---
 paimon-test-utils/pom.xml                          |  8 +--
 pom.xml                                            | 18 ++---
 tools/releasing/create_binary_release.sh           | 80 +++++++++++-----------
 tools/releasing/create_source_release.sh           | 10 +--
 72 files changed, 479 insertions(+), 483 deletions(-)

diff --git a/NOTICE b/NOTICE
index 2178d8888..714c0f854 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1,4 +1,4 @@
-Apache Flink Table Store (flink-table-store)
+Apache Paimon (incubating)
 Copyright 2014-2022 The Apache Software Foundation
 
 This product includes software developed at
diff --git a/README.md b/README.md
index 273d75997..d281cba99 100644
--- a/README.md
+++ b/README.md
@@ -6,16 +6,16 @@ Flink Table Store is developed under the umbrella of [Apache Flink](https://flin
 
 ## Documentation & Getting Started
 
-Please check out the full [documentation](https://nightlies.apache.org/flink/flink-table-store-docs-master/), hosted by the
+Please check out the full [documentation](https://nightlies.apache.org/flink/paimon-docs-master/), hosted by the
 [ASF](https://www.apache.org/), for detailed information and user guides.
 
-Check our [quick-start](https://nightlies.apache.org/flink/flink-table-store-docs-master/docs/try-table-store/quick-start/) guide for simple setup instructions to get you started with the table store.
+Check our [quick-start](https://nightlies.apache.org/flink/paimon-docs-master/docs/try-table-store/quick-start/) guide for simple setup instructions to get you started with the table store.
 
 ## Building
 
 Run the `mvn clean package -DskipTests` command to build the project.
 
-Then you will find a JAR file for Flink engine with all shaded dependencies: `flink-table-store-flink/flink-table-store-flink-**/target/flink-table-store-flink-**-<version>.jar`.
+Then you will find a JAR file for Flink engine with all shaded dependencies: `paimon-flink/paimon-flink-**/target/paimon-flink-**-<version>.jar`.
 
 ## Contributing
 
diff --git a/docs/content/engines/flink.md b/docs/content/engines/flink.md
index 4e839a56c..5d603ce3c 100644
--- a/docs/content/engines/flink.md
+++ b/docs/content/engines/flink.md
@@ -38,9 +38,9 @@ Download the jar file with corresponding version.
 
 | Version | Jar                                                                                                                                                                                |
 |---|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| Flink 1.16 | [flink-table-store-flink-1.16-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-flink-1.16-{{< version >}}.jar) |
-| Flink 1.15 | [flink-table-store-flink-1.15-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-flink-1.15-{{< version >}}.jar) |
-| Flink 1.14 | [flink-table-store-flink-1.14-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-flink-1.14-{{< version >}}.jar) |
+| Flink 1.16 | [paimon-flink-1.16-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-flink-1.16-{{< version >}}.jar) |
+| Flink 1.15 | [paimon-flink-1.15-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-flink-1.15-{{< version >}}.jar) |
+| Flink 1.14 | [paimon-flink-1.14-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-flink-1.14-{{< version >}}.jar) |
 
 You can also manually build bundled jar from the source code.
 
@@ -57,7 +57,7 @@ To build from source code, either [download the source of a release](https://fli
 Build bundled jar with the following command.
 - `mvn clean install -DskipTests`
 
-You can find the bundled jar in `./flink-table-store-flink/flink-table-store-flink-<flink-version>/target/flink-table-store-flink-<flink-version>-{{< version >}}.jar`.
+You can find the bundled jar in `./paimon-flink/paimon-flink-<flink-version>/target/paimon-flink-<flink-version>-{{< version >}}.jar`.
 
 ## Quick Start
 
@@ -74,7 +74,7 @@ tar -xzf flink-*.tgz
 Copy table store bundled jar to the `lib` directory of your Flink home.
 
 ```bash
-cp flink-table-store-flink-*.jar <FLINK_HOME>/lib/
+cp paimon-flink-*.jar <FLINK_HOME>/lib/
 ```
 
 **Step 3: Copy Hadoop Bundled Jar**
diff --git a/docs/content/engines/hive.md b/docs/content/engines/hive.md
index a960c2b1c..933b5b9bd 100644
--- a/docs/content/engines/hive.md
+++ b/docs/content/engines/hive.md
@@ -44,11 +44,11 @@ Download the jar file with corresponding version.
 
 |                  | Jar                                                                                                                                                                                                                |
 |------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| Hive 3.1         | [flink-table-store-hive-connector-3.1-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-hive-connector-3.1-{{< version >}}.jar)                 |
-| Hive 2.3         | [flink-table-store-hive-connector-2.3-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-hive-connector-2.3-{{< version >}}.jar)                 |
-| Hive 2.2         | [flink-table-store-hive-connector-2.2-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-hive-connector-2.2-{{< version >}}.jar)                 |
-| Hive 2.1         | [flink-table-store-hive-connector-2.1-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-hive-connector-2.1-{{< version >}}.jar)                 |
-| Hive 2.1-cdh-6.3 | [flink-table-store-hive-connector-2.1-cdh-6.3-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-hive-connector-2.1-cdh-6.3-{{< version >}}.jar) |
+| Hive 3.1         | [paimon-hive-connector-3.1-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-hive-connector-3.1-{{< version >}}.jar)                 |
+| Hive 2.3         | [paimon-hive-connector-2.3-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-hive-connector-2.3-{{< version >}}.jar)                 |
+| Hive 2.2         | [paimon-hive-connector-2.2-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-hive-connector-2.2-{{< version >}}.jar)                 |
+| Hive 2.1         | [paimon-hive-connector-2.1-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-hive-connector-2.1-{{< version >}}.jar)                 |
+| Hive 2.1-cdh-6.3 | [paimon-hive-connector-2.1-cdh-6.3-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-hive-connector-2.1-cdh-6.3-{{< version >}}.jar) |
 
 You can also manually build bundled jar from the source code.
 
@@ -65,12 +65,12 @@ To build from source code, either [download the source of a release](https://fli
 Build bundled jar with the following command.
 `mvn clean install -Dmaven.test.skip=true`
 
-You can find Hive connector jar in `./flink-table-store-hive/flink-table-store-hive-connector-<hive-version>/target/flink-table-store-hive-connector-<hive-version>-{{< version >}}.jar`.
+You can find Hive connector jar in `./paimon-hive/paimon-hive-connector-<hive-version>/target/paimon-hive-connector-<hive-version>-{{< version >}}.jar`.
 
 There are several ways to add this jar to Hive.
 
-* You can create an `auxlib` folder under the root directory of Hive, and copy `flink-table-store-hive-connector-{{< version >}}.jar` into `auxlib`.
-* You can also copy this jar to a path accessible by Hive, then use `add jar /path/to/flink-table-store-hive-connector-{{< version >}}.jar` to enable table store support in Hive. Note that this method is not recommended. If you're using the MR execution engine and running a join statement, you may be faced with the exception `org.apache.hive.com.esotericsoftware.kryo.kryoexception: unable to find class`.
+* You can create an `auxlib` folder under the root directory of Hive, and copy `paimon-hive-connector-{{< version >}}.jar` into `auxlib`.
+* You can also copy this jar to a path accessible by Hive, then use `add jar /path/to/paimon-hive-connector-{{< version >}}.jar` to enable table store support in Hive. Note that this method is not recommended. If you're using the MR execution engine and running a join statement, you may be faced with the exception `org.apache.hive.com.esotericsoftware.kryo.kryoexception: unable to find class`.
 
 NOTE: If you are using HDFS, make sure that the environment variable `HADOOP_HOME` or `HADOOP_CONF_DIR` is set.
 
@@ -131,7 +131,7 @@ SELECT * FROM test_table;
 Run the following Hive SQL in Hive CLI to access the created table.
 
 ```sql
--- Assume that flink-table-store-hive-connector-<hive-version>-{{< version >}}.jar is already in auxlib directory.
+-- Assume that paimon-hive-connector-<hive-version>-{{< version >}}.jar is already in auxlib directory.
 -- List tables in Hive
 -- (you might need to switch to "default" database if you're not there by default)
 
@@ -158,7 +158,7 @@ OK
 To access existing table store table, you can also register them as external tables in Hive. Run the following Hive SQL in Hive CLI.
 
 ```sql
--- Assume that flink-table-store-hive-connector-{{< version >}}.jar is already in auxlib directory.
+-- Assume that paimon-hive-connector-{{< version >}}.jar is already in auxlib directory.
 -- Let's use the test_table created in the above section.
 -- To create an external table, you don't need to specify any column or table properties.
 -- Pointing the location to the path of table is enough.
diff --git a/docs/content/engines/spark2.md b/docs/content/engines/spark2.md
index 4ab5a739f..2d99e1fdf 100644
--- a/docs/content/engines/spark2.md
+++ b/docs/content/engines/spark2.md
@@ -36,7 +36,7 @@ Table Store supports Spark 2.4+. It is highly recommended to use Spark 2.4+ vers
 
 {{< stable >}}
 
-Download [flink-table-store-spark-2-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-spark-2-{{< version >}}.jar).
+Download [paimon-spark-2-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-spark-2-{{< version >}}.jar).
 
 You can also manually build bundled jar from the source code.
 
@@ -56,7 +56,7 @@ Build bundled jar with the following command.
 mvn clean install -DskipTests
 ```
 
-You can find the bundled jar in `./flink-table-store-spark/flink-table-store-spark-2/target/flink-table-store-spark-2-{{< version >}}.jar`.
+You can find the bundled jar in `./paimon-spark/paimon-spark-2/target/paimon-spark-2-{{< version >}}.jar`.
 
 ## Quick Start
 
@@ -77,10 +77,10 @@ After the guide, all table files should be stored under the path `/tmp/table_sto
 You can append path to table store jar file to the `--jars` argument when starting `spark-shell`.
 
 ```bash
-spark-shell ... --jars /path/to/flink-table-store-spark-2-{{< version >}}.jar
+spark-shell ... --jars /path/to/paimon-spark-2-{{< version >}}.jar
 ```
 
-Alternatively, you can copy `flink-table-store-spark-2-{{< version >}}.jar` under `spark/jars` in your Spark installation directory.
+Alternatively, you can copy `paimon-spark-2-{{< version >}}.jar` under `spark/jars` in your Spark installation directory.
 
 **Step 3: Query Table**
 
diff --git a/docs/content/engines/spark3.md b/docs/content/engines/spark3.md
index 323ba8db7..df2111f70 100644
--- a/docs/content/engines/spark3.md
+++ b/docs/content/engines/spark3.md
@@ -38,9 +38,9 @@ Download the jar file with corresponding version.
 
 | Version   | Jar                                                                                                                                                                              |
 |-----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| Spark 3.3 | [flink-table-store-spark-3.3-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-spark-3.3-{{< version >}}.jar) |
-| Spark 3.2 | [flink-table-store-spark-3.2-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-spark-3.2-{{< version >}}.jar) |
-| Spark 3.1 | [flink-table-store-spark-3.1-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-spark-3.1-{{< version >}}.jar) |
+| Spark 3.3 | [paimon-spark-3.3-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-spark-3.3-{{< version >}}.jar) |
+| Spark 3.2 | [paimon-spark-3.2-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-spark-3.2-{{< version >}}.jar) |
+| Spark 3.1 | [paimon-spark-3.1-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-spark-3.1-{{< version >}}.jar) |
 
 You can also manually build bundled jar from the source code.
 
@@ -60,7 +60,7 @@ Build bundled jar with the following command.
 mvn clean install -DskipTests
 ```
 
-For Spark 3.3, you can find the bundled jar in `./flink-table-store-spark/flink-table-store-spark-3.3/target/flink-table-store-spark-3.3-{{< version >}}.jar`.
+For Spark 3.3, you can find the bundled jar in `./paimon-spark/paimon-spark-3.3/target/paimon-spark-3.3-{{< version >}}.jar`.
 
 ## Quick Start
 
@@ -75,10 +75,10 @@ If you are using HDFS, make sure that the environment variable `HADOOP_HOME` or
 Append path to table store jar file to the `--jars` argument when starting `spark-sql`.
 
 ```bash
-spark-sql ... --jars /path/to/flink-table-store-spark-3.3-{{< version >}}.jar
+spark-sql ... --jars /path/to/paimon-spark-3.3-{{< version >}}.jar
 ```
 
-Alternatively, you can copy `flink-table-store-spark-3.3-{{< version >}}.jar` under `spark/jars` in your Spark installation directory.
+Alternatively, you can copy `paimon-spark-3.3-{{< version >}}.jar` under `spark/jars` in your Spark installation directory.
 
 **Step 2: Specify Table Store Catalog**
 
@@ -138,7 +138,7 @@ SELECT * FROM my_table;
 If you don't want to use Table Store catalog, you can also run `spark-shell` and query the table with Scala API.
 
 ```bash
-spark-shell ... --jars /path/to/flink-table-store-spark-3.3-{{< version >}}.jar
+spark-shell ... --jars /path/to/paimon-spark-3.3-{{< version >}}.jar
 ```
 
 ```scala
diff --git a/docs/content/engines/trino.md b/docs/content/engines/trino.md
index 6f17861ef..37cb93a86 100644
--- a/docs/content/engines/trino.md
+++ b/docs/content/engines/trino.md
@@ -26,6 +26,6 @@ under the License.
 
 # Trino
 
-Because Trino's dependency is JDK 11, it is not possible to include the trino connector in [flink-table-store](https://github.com/apache/flink-table-store).
+Because Trino's dependency is JDK 11, it is not possible to include the trino connector in [paimon](https://github.com/apache/incubator-paimon).
 
-See [flink-table-store-trino](https://github.com/JingsongLi/flink-table-store-trino).
+See [paimon-trino](https://github.com/JingsongLi/paimon-trino).
diff --git a/docs/content/filesystems/oss.md b/docs/content/filesystems/oss.md
index 9de958a9c..a4224f275 100644
--- a/docs/content/filesystems/oss.md
+++ b/docs/content/filesystems/oss.md
@@ -30,7 +30,7 @@ under the License.
 
 ## Download
 
-[Download](https://repo.maven.apache.org/maven2/org/apache/flink/flink-table-store-oss/{{< version >}}/flink-table-store-oss-{{< version >}}.jar)
+[Download](https://repo.maven.apache.org/maven2/org/apache/flink/paimon-oss/{{< version >}}/paimon-oss-{{< version >}}.jar)
 flink table store shaded jar.
 
 {{< /stable >}}
@@ -48,7 +48,7 @@ mvn clean install -DskipTests
 ```
 
 You can find the shaded jars under
-`./flink-table-store-filesystems/flink-table-store-oss/target/flink-table-store-oss-{{< version >}}.jar`.
+`./paimon-filesystems/paimon-oss/target/paimon-oss-{{< version >}}.jar`.
 
 {{< /unstable >}}
 
@@ -58,7 +58,7 @@ You can find the shaded jars under
 
 {{< tab "Flink" >}}
 
-Put `flink-table-store-oss-{{< version >}}.jar` into `lib` directory of your Flink home, and create catalog:
+Put `paimon-oss-{{< version >}}.jar` into `lib` directory of your Flink home, and create catalog:
 
 ```sql
 CREATE CATALOG my_catalog WITH (
@@ -74,7 +74,7 @@ CREATE CATALOG my_catalog WITH (
 
 {{< tab "Spark" >}}
 
-Place `flink-table-store-oss-{{< version >}}.jar` together with `flink-table-store-spark-{{< version >}}.jar` under Spark's jars directory, and start like
+Place `paimon-oss-{{< version >}}.jar` together with `paimon-spark-{{< version >}}.jar` under Spark's jars directory, and start like
 
 ```shell
 spark-sql \ 
@@ -91,7 +91,7 @@ spark-sql \
 
 NOTE: You need to ensure that Hive metastore can access `oss`.
 
-Place `flink-table-store-oss-{{< version >}}.jar` together with `flink-table-store-hive-connector-{{< version >}}.jar` under Hive's auxlib directory, and start like
+Place `paimon-oss-{{< version >}}.jar` together with `paimon-hive-connector-{{< version >}}.jar` under Hive's auxlib directory, and start like
 
 ```sql
 SET tablestore.fs.oss.endpoint=oss-cn-hangzhou.aliyuncs.com;
@@ -109,7 +109,7 @@ SELECT COUNT(1) FROM test_table;
 
 {{< tab "Trino" >}}
 
-Place `flink-table-store-oss-{{< version >}}.jar` together with `flink-table-store-trino-{{< version >}}.jar` under `plugin/tablestore` directory.
+Place `paimon-oss-{{< version >}}.jar` together with `paimon-trino-{{< version >}}.jar` under `plugin/tablestore` directory.
 
 Add options in `etc/catalog/tablestore.properties`.
 ```shell
diff --git a/docs/content/filesystems/s3.md b/docs/content/filesystems/s3.md
index a0ed85508..b32ab814e 100644
--- a/docs/content/filesystems/s3.md
+++ b/docs/content/filesystems/s3.md
@@ -30,7 +30,7 @@ under the License.
 
 ## Download
 
-[Download](https://repo.maven.apache.org/maven2/org/apache/flink/flink-table-store-s3/{{< version >}}/flink-table-store-s3-{{< version >}}.jar)
+[Download](https://repo.maven.apache.org/maven2/org/apache/flink/paimon-s3/{{< version >}}/paimon-s3-{{< version >}}.jar)
 flink table store shaded jar.
 
 {{< /stable >}}
@@ -48,7 +48,7 @@ mvn clean install -DskipTests
 ```
 
 You can find the shaded jars under
-`./flink-table-store-filesystems/flink-table-store-s3/target/flink-table-store-s3-{{< version >}}.jar`.
+`./paimon-filesystems/paimon-s3/target/paimon-s3-{{< version >}}.jar`.
 
 {{< /unstable >}}
 
@@ -58,7 +58,7 @@ You can find the shaded jars under
 
 {{< tab "Flink" >}}
 
-Put `flink-table-store-s3-{{< version >}}.jar` into `lib` directory of your Flink home, and create catalog:
+Put `paimon-s3-{{< version >}}.jar` into `lib` directory of your Flink home, and create catalog:
 
 ```sql
 CREATE CATALOG my_catalog WITH (
@@ -74,7 +74,7 @@ CREATE CATALOG my_catalog WITH (
 
 {{< tab "Spark" >}}
 
-Place `flink-table-store-s3-{{< version >}}.jar` together with `flink-table-store-spark-{{< version >}}.jar` under Spark's jars directory, and start like
+Place `paimon-s3-{{< version >}}.jar` together with `paimon-spark-{{< version >}}.jar` under Spark's jars directory, and start like
 
 ```shell
 spark-sql \ 
@@ -91,7 +91,7 @@ spark-sql \
 
 NOTE: You need to ensure that Hive metastore can access `s3`.
 
-Place `flink-table-store-s3-{{< version >}}.jar` together with `flink-table-store-hive-connector-{{< version >}}.jar` under Hive's auxlib directory, and start like
+Place `paimon-s3-{{< version >}}.jar` together with `paimon-hive-connector-{{< version >}}.jar` under Hive's auxlib directory, and start like
 
 ```sql
 SET tablestore.s3.endpoint=your-endpoint-hostname;
@@ -109,7 +109,7 @@ SELECT COUNT(1) FROM test_table;
 
 {{< tab "Trino" >}}
 
-Place `flink-table-store-s3-{{< version >}}.jar` together with `flink-table-store-trino-{{< version >}}.jar` under `plugin/tablestore` directory.
+Place `paimon-s3-{{< version >}}.jar` together with `paimon-trino-{{< version >}}.jar` under `plugin/tablestore` directory.
 
 Add options in `etc/catalog/tablestore.properties`.
 ```shell
diff --git a/docs/content/how-to/creating-catalogs.md b/docs/content/how-to/creating-catalogs.md
index df89481fe..3c4915c06 100644
--- a/docs/content/how-to/creating-catalogs.md
+++ b/docs/content/how-to/creating-catalogs.md
@@ -84,7 +84,7 @@ Download the jar file with corresponding version.
 
 | Version    | Jar                                                                                                                                                                                    |
 |------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| Hive 2 & 3 | [flink-table-store-hive-catalog-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/flink-table-store-{{< version >}}/flink-table-store-hive-catalog-{{< version >}}.jar) |
+| Hive 2 & 3 | [paimon-hive-catalog-{{< version >}}.jar](https://www.apache.org/dyn/closer.lua/flink/paimon-{{< version >}}/paimon-hive-catalog-{{< version >}}.jar) |
 
 You can also manually build bundled jar from the source code.
 
@@ -101,7 +101,7 @@ To build from source code, either [download the source of a release](https://fli
 Build bundled jar with the following command.
 `mvn clean install -Dmaven.test.skip=true`
 
-You can find Hive catalog jar in `./flink-table-store-hive/flink-table-store-hive-catalog/target/flink-table-store-hive-catalog-{{< version >}}.jar`.
+You can find Hive catalog jar in `./paimon-hive/paimon-hive-catalog/target/paimon-hive-catalog-{{< version >}}.jar`.
 
 ### Registering Hive Catalog
 
@@ -112,7 +112,7 @@ You can find Hive catalog jar in `./flink-table-store-hive/flink-table-store-hiv
 To enable Table Store Hive catalog support in Flink, you can pick one of the following two methods.
 
 * Copy Table Store Hive catalog jar file into the `lib` directory of your Flink installation directory. Note that this must be done before starting your Flink cluster.
-* If you're using Flink's SQL client, append `--jar /path/to/flink-table-store-hive-catalog-{{< version >}}.jar` to the starting command of SQL client.
+* If you're using Flink's SQL client, append `--jar /path/to/paimon-hive-catalog-{{< version >}}.jar` to the starting command of SQL client.
 
 The following Flink SQL registers and uses a Table Store Hive catalog named `my_hive`. Metadata and table files are stored under `hdfs://path/to/warehouse`. In addition, metadata is also stored in Hive metastore.
 
diff --git a/docs/content/how-to/writing-tables.md b/docs/content/how-to/writing-tables.md
index eb90f7a8a..5a3c72c74 100644
--- a/docs/content/how-to/writing-tables.md
+++ b/docs/content/how-to/writing-tables.md
@@ -206,7 +206,7 @@ Run the following command to submit a drop-partition job for the table.
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
-    /path/to/flink-table-store-flink-**-{{< version >}}.jar \
+    /path/to/paimon-flink-**-{{< version >}}.jar \
     drop-partition \
     --warehouse <warehouse-path> \
     --database <database-name> \
@@ -224,7 +224,7 @@ For more information of drop-partition, see
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
-    /path/to/flink-table-store-flink-**-{{< version >}}.jar \
+    /path/to/paimon-flink-**-{{< version >}}.jar \
     drop-partition --help
 ```
 
@@ -246,7 +246,7 @@ Run the following command to submit a 'delete' job for the table.
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
-    /path/to/flink-table-store-flink-**-{{< version >}}.jar \
+    /path/to/paimon-flink-**-{{< version >}}.jar \
     delete \
     --warehouse <warehouse-path> \
     --database <database-name> \
@@ -265,7 +265,7 @@ For more information of 'delete', see
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
-    /path/to/flink-table-store-flink-**-{{< version >}}.jar \
+    /path/to/paimon-flink-**-{{< version >}}.jar \
     delete --help
 ```
 
@@ -314,7 +314,7 @@ Run the following command to submit a 'merge-into' job for the table.
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
-    /path/to/flink-table-store-flink-**-{{< version >}}.jar \
+    /path/to/paimon-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
     --database <database-name> \
@@ -341,7 +341,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 ./flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
-    /path/to/flink-table-store-flink-**-{{< version >}}.jar \
+    /path/to/paimon-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
     --database <database-name> \
@@ -359,7 +359,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 ./flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
-    /path/to/flink-table-store-flink-**-{{< version >}}.jar \
+    /path/to/paimon-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
     --database <database-name> \
@@ -376,7 +376,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 ./flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
-    /path/to/flink-table-store-flink-**-{{< version >}}.jar \
+    /path/to/paimon-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
     --database <database-name> \
@@ -394,7 +394,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 ./flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
-    /path/to/flink-table-store-flink-**-{{< version >}}.jar \
+    /path/to/paimon-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
     --database <database-name> \
@@ -453,7 +453,7 @@ For more information of 'merge-into', see
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
-    /path/to/flink-table-store-flink-**-{{< version >}}.jar \
+    /path/to/paimon-flink-**-{{< version >}}.jar \
     merge-into --help
 ```
 {{< /tab >}}
diff --git a/docs/content/maintenance/write-performance.md b/docs/content/maintenance/write-performance.md
index 81300661f..587a2ddee 100644
--- a/docs/content/maintenance/write-performance.md
+++ b/docs/content/maintenance/write-performance.md
@@ -156,7 +156,7 @@ Run the following command to submit a compaction job for the table.
 ```bash
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
-    /path/to/flink-table-store-flink-**-{{< version >}}.jar \
+    /path/to/paimon-flink-**-{{< version >}}.jar \
     compact \
     --warehouse <warehouse-path> \
     --database <database-name> \
@@ -176,7 +176,7 @@ For more usage of the compact action, see
 ```bash
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
-    /path/to/flink-table-store-flink-**-{{< version >}}.jar \
+    /path/to/paimon-flink-**-{{< version >}}.jar \
     compact --help
 ```
 
diff --git a/docs/layouts/partials/docs/inject/content-before.html b/docs/layouts/partials/docs/inject/content-before.html
index 9e96a2185..f4096b2a0 100644
--- a/docs/layouts/partials/docs/inject/content-before.html
+++ b/docs/layouts/partials/docs/inject/content-before.html
@@ -23,14 +23,14 @@ under the License.
 {{ if $.Site.Params.ShowOutDatedWarning }}
 <article class="markdown">
     <blockquote style="border-color:#f66">
-        {{ markdownify "This documentation is for an out-of-date version of Apache Flink Table Store. We recommend you use the latest [stable version](https://ci.apache.org/projects/flink/flink-table-store-docs-stable/)."}}
+        {{ markdownify "This documentation is for an out-of-date version of Apache Flink Table Store. We recommend you use the latest [stable version](https://ci.apache.org/projects/flink/paimon-docs-stable/)."}}
     </blockquote>
 </article>
 {{ end }}
 {{ if (not $.Site.Params.IsStable) }}
 <article class="markdown">
     <blockquote style="border-color:#f66">
-        {{ markdownify "This documentation is for an unreleased version of Apache Flink Table Store. We recommend you use the latest [stable version](https://ci.apache.org/projects/flink/flink-table-store-docs-stable/)."}}
+        {{ markdownify "This documentation is for an unreleased version of Apache Flink Table Store. We recommend you use the latest [stable version](https://ci.apache.org/projects/flink/paimon-docs-stable/)."}}
     </blockquote>
 </article>
 {{ end }}
diff --git a/paimon-benchmark/paimon-cluster-benchmark/README.md b/paimon-benchmark/paimon-cluster-benchmark/README.md
index e2fd9e462..5d15b3a61 100644
--- a/paimon-benchmark/paimon-cluster-benchmark/README.md
+++ b/paimon-benchmark/paimon-cluster-benchmark/README.md
@@ -22,15 +22,15 @@ This is the cluster benchmark module for Flink Table Store. Inspired by [Nexmark
 
 ### Setup Benchmark
 * Build this module with command `mvn clean package`.
-* Copy `target/flink-table-store-benchmark-bin/flink-table-store-benchmark` to the master node of your EMR cluster.
-* Modify `flink-table-store-benchmark/conf/benchmark.yaml` on the master node. You must change these config options:
+* Copy `target/paimon-benchmark-bin/paimon-benchmark` to the master node of your EMR cluster.
+* Modify `paimon-benchmark/conf/benchmark.yaml` on the master node. You must change these config options:
   * `benchmark.metric.reporter.host` and `flink.rest.address`: set these to the address of master node of your EMR cluster.
   *  `benchmark.sink.path` is the path to which queries insert records. This should point to a non-existing path. Contents of this path will be removed before each test.
-* Copy `flink-table-store-benchmark` to every worker node of your EMR cluster.
-* Run `flink-table-store-benchmark/bin/setup_cluster.sh` in master node. This activates the CPU metrics collector in worker nodes. Note that if you restart your Flink cluster, you must also restart the CPU metrics collectors. To stop CPU metrics collectors, run `flink-table-store-benchmark/bin/shutdown_cluster.sh` in master node.
+* Copy `paimon-benchmark` to every worker node of your EMR cluster.
+* Run `paimon-benchmark/bin/setup_cluster.sh` in master node. This activates the CPU metrics collector in worker nodes. Note that if you restart your Flink cluster, you must also restart the CPU metrics collectors. To stop CPU metrics collectors, run `paimon-benchmark/bin/shutdown_cluster.sh` in master node.
 
 ### Run Benchmark
-* Run `flink-table-store-benchmark/bin/run_benchmark.sh <query> <sink>` to run `<query>` for `<sink>`. Currently `<query>` can be `q1` or `all`, and sink can only be `table_store`.
+* Run `paimon-benchmark/bin/run_benchmark.sh <query> <sink>` to run `<query>` for `<sink>`. Currently `<query>` can be `q1` or `all`, and sink can only be `table_store`.
 * By default, each query writes for 30 minutes and then reads all records back from the sink to measure read throughput. 
 
 ## Queries
@@ -50,15 +50,15 @@ Results of each query consist of the following aspects:
 * Max Data Freshness: Max time elapsed from the starting point of the last successful checkpoint.
 
 ## How to Add New Queries
-1. Add your query to `flink-table-store-benchmark/queries` as a SQL script.
-2. Modify `flink-table-store-benchmark/queries/queries.yaml` to set the properties of this test. Supported properties are:
+1. Add your query to `paimon-benchmark/queries` as a SQL script.
+2. Modify `paimon-benchmark/queries/queries.yaml` to set the properties of this test. Supported properties are:
   * `sql`: An array of SQL scripts. These SQL scripts will run in the given order. Each SQL script will stop only after it produces enough number of rows.
   * `row-num`: Number of rows produced from the source for each SQL scripts.
 
 Note that each query must contain a `-- __SINK_DDL_BEGIN__` and `-- __SINK_DDL_END__` so that this DDL can be used for both write and read tests. See existing queries for detail.
 
 ## How to Add New Sinks
-Just add your sink to `flink-table-store-benchmark/sinks` as a yaml file, which supports the following properties:
+Just add your sink to `paimon-benchmark/sinks` as a yaml file, which supports the following properties:
   * `before`: A SQL script which is appended before each test. This property is useful if your sink needs initialization (for example if your sink needs a special catalog).
   * `sink-name`: Name of the sink table. This property will replace the `${SINK_NAME}` in each query.
   * `sink-properties`: The `WITH` option of the sink. This property will replace the `${DDL_TEMPLATE}` in each query.
diff --git a/paimon-benchmark/paimon-cluster-benchmark/pom.xml b/paimon-benchmark/paimon-cluster-benchmark/pom.xml
index 79a0e93bc..f2cf6f620 100644
--- a/paimon-benchmark/paimon-cluster-benchmark/pom.xml
+++ b/paimon-benchmark/paimon-cluster-benchmark/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-benchmark</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-benchmark</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-cluster-benchmark</artifactId>
-    <name>Flink Table Store : Benchmark : Cluster</name>
+    <artifactId>paimon-cluster-benchmark</artifactId>
+    <name>Paimon : Benchmark : Cluster</name>
 
     <dependencies>
         <dependency>
@@ -116,7 +116,7 @@ under the License.
                             <descriptors>
                                 <descriptor>src/main/assemblies/bin.xml</descriptor>
                             </descriptors>
-                            <finalName>flink-table-store-benchmark-bin</finalName>
+                            <finalName>paimon-benchmark-bin</finalName>
                             <appendAssemblyId>false</appendAssemblyId>
                         </configuration>
                     </execution>
diff --git a/paimon-benchmark/paimon-cluster-benchmark/src/main/assemblies/bin.xml b/paimon-benchmark/paimon-cluster-benchmark/src/main/assemblies/bin.xml
index 900e63c78..d21d121c0 100644
--- a/paimon-benchmark/paimon-cluster-benchmark/src/main/assemblies/bin.xml
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/assemblies/bin.xml
@@ -26,12 +26,12 @@ under the License.
     </formats>
 
     <includeBaseDirectory>true</includeBaseDirectory>
-    <baseDirectory>flink-table-store-benchmark</baseDirectory>
+    <baseDirectory>paimon-benchmark</baseDirectory>
 
     <files>
         <!-- copy jars -->
         <file>
-            <source>target/flink-table-store-cluster-benchmark-${project.version}-jar-with-dependencies.jar</source>
+            <source>target/paimon-cluster-benchmark-${project.version}-jar-with-dependencies.jar</source>
             <outputDirectory>lib/</outputDirectory>
             <fileMode>0644</fileMode>
         </file>
diff --git a/paimon-benchmark/paimon-micro-benchmarks/pom.xml b/paimon-benchmark/paimon-micro-benchmarks/pom.xml
index 473dff714..a242d1c49 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/pom.xml
+++ b/paimon-benchmark/paimon-micro-benchmarks/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-benchmark</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-benchmark</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-micro-benchmarks</artifactId>
-    <name>Flink Table Store : Benchmark : Micro</name>
+    <artifactId>paimon-micro-benchmarks</artifactId>
+    <name>Paimon : Benchmark : Micro</name>
 
     <dependencies>
 
@@ -119,8 +119,8 @@ under the License.
         <!-- Flink Table Store dependencies -->
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-shade</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-shade</artifactId>
             <version>${project.version}</version>
         </dependency>
     </dependencies>
diff --git a/paimon-benchmark/pom.xml b/paimon-benchmark/pom.xml
index c5d6cdaab..156d7d1cc 100644
--- a/paimon-benchmark/pom.xml
+++ b/paimon-benchmark/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-benchmark</artifactId>
-    <name>Flink Table Store : Benchmark</name>
+    <artifactId>paimon-benchmark</artifactId>
+    <name>Paimon : Benchmark</name>
 
     <packaging>pom</packaging>
 
diff --git a/paimon-codegen-loader/pom.xml b/paimon-codegen-loader/pom.xml
index 44b281681..98584f7a5 100644
--- a/paimon-codegen-loader/pom.xml
+++ b/paimon-codegen-loader/pom.xml
@@ -23,33 +23,33 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-codegen-loader</artifactId>
-    <name>Flink Table Store : Code Gen Loader</name>
+    <artifactId>paimon-codegen-loader</artifactId>
+    <name>Paimon : Code Gen Loader</name>
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
 
         <dependency>
-            <!-- Ensures that flink-table-store-codegen is built beforehand, in order to bundle the jar -->
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-codegen</artifactId>
+            <!-- Ensures that paimon-codegen is built beforehand, in order to bundle the jar -->
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-codegen</artifactId>
             <version>${project.version}</version>
-            <!-- We don't want any production code from flink-table-store-core to reference flink-table-store-codegen directly -->
+            <!-- We don't want any production code from paimon-core to reference paimon-codegen directly -->
             <scope>runtime</scope>
-            <!-- Prevent dependency from being accessible to modules depending on flink-table-store-core -->
+            <!-- Prevent dependency from being accessible to modules depending on paimon-core -->
             <optional>true</optional>
             <exclusions>
-                <!-- Prevent akka and scala from being visible to other modules depending on flink-table-store-core -->
+                <!-- Prevent akka and scala from being visible to other modules depending on paimon-core -->
                 <exclusion>
                     <groupId>*</groupId>
                     <artifactId>*</artifactId>
@@ -73,12 +73,12 @@ under the License.
                         <configuration>
                             <artifactItems>
                                 <artifactItem>
-                                    <groupId>org.apache.flink</groupId>
-                                    <artifactId>flink-table-store-codegen</artifactId>
+                                    <groupId>org.apache.paimon</groupId>
+                                    <artifactId>paimon-codegen</artifactId>
                                     <version>${project.version}</version>
                                     <type>jar</type>
                                     <overWrite>true</overWrite>
-                                    <destFileName>flink-table-store-codegen.jar</destFileName>
+                                    <destFileName>paimon-codegen.jar</destFileName>
                                 </artifactItem>
                             </artifactItems>
                             <outputDirectory>${project.build.directory}/classes</outputDirectory>
diff --git a/paimon-codegen-loader/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java b/paimon-codegen-loader/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
index 9a1310a40..50f8ecd4f 100644
--- a/paimon-codegen-loader/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
+++ b/paimon-codegen-loader/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
@@ -23,7 +23,7 @@ import org.apache.paimon.plugin.PluginLoader;
 /** Copied and modified from the flink-table-planner-loader module. */
 public class CodeGenLoader {
 
-    private static final String FLINK_TABLE_STORE_CODEGEN_FAT_JAR = "flink-table-store-codegen.jar";
+    private static final String FLINK_TABLE_STORE_CODEGEN_FAT_JAR = "paimon-codegen.jar";
 
     // Singleton lazy initialization
 
diff --git a/paimon-codegen/pom.xml b/paimon-codegen/pom.xml
index 5940493cb..efc70f6b1 100644
--- a/paimon-codegen/pom.xml
+++ b/paimon-codegen/pom.xml
@@ -23,18 +23,18 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-codegen</artifactId>
-    <name>Flink Table Store : Code Gen</name>
+    <artifactId>paimon-codegen</artifactId>
+    <name>Paimon : Code Gen</name>
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
         </dependency>
 
diff --git a/paimon-common/pom.xml b/paimon-common/pom.xml
index 8741523bf..81ee71868 100644
--- a/paimon-common/pom.xml
+++ b/paimon-common/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-common</artifactId>
-    <name>Flink Table Store : Common</name>
+    <artifactId>paimon-common</artifactId>
+    <name>Paimon : Common</name>
 
     <properties>
         <antlr4.version>4.7</antlr4.version>
@@ -112,8 +112,8 @@ under the License.
         <!-- Test -->
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-test-utils</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-test-utils</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
diff --git a/paimon-common/src/main/java/org/apache/paimon/plugin/PluginLoader.java b/paimon-common/src/main/java/org/apache/paimon/plugin/PluginLoader.java
index 4e6c5cf54..43199c452 100644
--- a/paimon-common/src/main/java/org/apache/paimon/plugin/PluginLoader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/plugin/PluginLoader.java
@@ -85,8 +85,7 @@ public class PluginLoader {
                             OWNER_CLASSPATH,
                             COMPONENT_CLASSPATH);
         } catch (IOException e) {
-            throw new RuntimeException(
-                    "Could not initialize the flink-table-store-codegen loader.", e);
+            throw new RuntimeException("Could not initialize the paimon-codegen loader.", e);
         }
     }
 
diff --git a/paimon-core/pom.xml b/paimon-core/pom.xml
index 15ccd5cc8..02496caef 100644
--- a/paimon-core/pom.xml
+++ b/paimon-core/pom.xml
@@ -23,24 +23,24 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-core</artifactId>
-    <name>Flink Table Store : Core</name>
+    <artifactId>paimon-core</artifactId>
+    <name>Paimon : Core</name>
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-codegen-loader</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-codegen-loader</artifactId>
             <version>${project.version}</version>
         </dependency>
 
@@ -61,16 +61,16 @@ under the License.
         <!-- test dependencies -->
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
             <type>test-jar</type>
             <scope>test</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-format</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-format</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
diff --git a/paimon-docs/pom.xml b/paimon-docs/pom.xml
index 4d40e50e8..e2093622e 100644
--- a/paimon-docs/pom.xml
+++ b/paimon-docs/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-docs</artifactId>
-    <name>Flink Table Store : Docs</name>
+    <artifactId>paimon-docs</artifactId>
+    <name>Paimon : Docs</name>
 
     <properties>
         <generated.docs.dir>./docs/layouts/shortcodes/generated</generated.docs.dir>
@@ -39,15 +39,15 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-core</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-core</artifactId>
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-flink-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-flink-common</artifactId>
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
diff --git a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
index 6c0f6dffd..eb49797b0 100644
--- a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
+++ b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
@@ -70,14 +70,12 @@ public class ConfigOptionsDocGenerator {
 
     static final OptionsClassLocation[] LOCATIONS =
             new OptionsClassLocation[] {
-                new OptionsClassLocation("flink-table-store-common", "org.apache.paimon.options"),
-                new OptionsClassLocation("flink-table-store-core", "org.apache.flink.table.store"),
+                new OptionsClassLocation("paimon-common", "org.apache.paimon.options"),
+                new OptionsClassLocation("paimon-core", "org.apache.flink.table.store"),
                 new OptionsClassLocation(
-                        "flink-table-store-flink/flink-table-store-flink-common",
-                        "org.apache.paimon.connector"),
+                        "paimon-flink/paimon-flink-common", "org.apache.paimon.connector"),
                 new OptionsClassLocation(
-                        "flink-table-store-flink/flink-table-store-flink-common",
-                        "org.apache.paimon.connector.kafka")
+                        "paimon-flink/paimon-flink-common", "org.apache.paimon.connector.kafka")
             };
     static final String DEFAULT_PATH_PREFIX = "src/main/java";
 
diff --git a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
index 0135878c7..bfc042232 100644
--- a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
@@ -197,7 +197,7 @@ public class ConfigOptionsDocsCompletenessITCase {
             StringBuilder stringBuilder =
                     new StringBuilder(
                             "Documentation is outdated, please regenerate it according to the"
-                                    + " instructions in flink-table-store-docs/README.md.");
+                                    + " instructions in paimon-docs/README.md.");
             stringBuilder.append(System.lineSeparator());
             stringBuilder.append("\tProblems:");
             for (String problem : problems) {
diff --git a/paimon-e2e-tests/pom.xml b/paimon-e2e-tests/pom.xml
index 298362c44..6833e4195 100644
--- a/paimon-e2e-tests/pom.xml
+++ b/paimon-e2e-tests/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-e2e-tests</artifactId>
-    <name>Flink Table Store : End to End Tests</name>
+    <artifactId>paimon-e2e-tests</artifactId>
+    <name>Paimon : End to End Tests</name>
 
     <properties>
         <flink.shaded.hadoop.version>2.8.3-10.0</flink.shaded.hadoop.version>
@@ -40,29 +40,29 @@ under the License.
         <!-- Add dependencies to affect the order of mvn build -->
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-flink-${test.flink.main.version}</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-flink-${test.flink.main.version}</artifactId>
             <version>${project.version}</version>
             <scope>runtime</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-hive-catalog</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-hive-catalog</artifactId>
             <version>${project.version}</version>
             <scope>runtime</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-hive-connector-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-hive-connector-common</artifactId>
             <version>${project.version}</version>
             <scope>runtime</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-spark-3.2</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-spark-3.2</artifactId>
             <version>${project.version}</version>
             <scope>runtime</scope>
         </dependency>
@@ -101,43 +101,43 @@ under the License.
                 <configuration>
                     <artifactItems>
                         <artifactItem>
-                            <groupId>org.apache.flink</groupId>
-                            <artifactId>flink-table-store-flink-${test.flink.main.version}</artifactId>
+                            <groupId>org.apache.paimon</groupId>
+                            <artifactId>paimon-flink-${test.flink.main.version}</artifactId>
                             <version>${project.version}</version>
-                            <destFileName>flink-table-store.jar</destFileName>
+                            <destFileName>paimon-flink.jar</destFileName>
                             <type>jar</type>
                             <overWrite>true</overWrite>
-                            <outputDirectory>/tmp/flink-table-store-e2e-tests-jars
+                            <outputDirectory>/tmp/paimon-e2e-tests-jars
                             </outputDirectory>
                         </artifactItem>
                         <artifactItem>
-                            <groupId>org.apache.flink</groupId>
-                            <artifactId>flink-table-store-hive-catalog</artifactId>
+                            <groupId>org.apache.paimon</groupId>
+                            <artifactId>paimon-hive-catalog</artifactId>
                             <version>${project.version}</version>
-                            <destFileName>flink-table-store-hive-catalog.jar</destFileName>
+                            <destFileName>paimon-hive-catalog.jar</destFileName>
                             <type>jar</type>
                             <overWrite>true</overWrite>
-                            <outputDirectory>/tmp/flink-table-store-e2e-tests-jars
+                            <outputDirectory>/tmp/paimon-e2e-tests-jars
                             </outputDirectory>
                         </artifactItem>
                         <artifactItem>
-                            <groupId>org.apache.flink</groupId>
-                            <artifactId>flink-table-store-hive-connector-common</artifactId>
+                            <groupId>org.apache.paimon</groupId>
+                            <artifactId>paimon-hive-connector-common</artifactId>
                             <version>${project.version}</version>
-                            <destFileName>flink-table-store-hive-connector.jar</destFileName>
+                            <destFileName>paimon-hive-connector.jar</destFileName>
                             <type>jar</type>
                             <overWrite>true</overWrite>
-                            <outputDirectory>/tmp/flink-table-store-e2e-tests-jars
+                            <outputDirectory>/tmp/paimon-e2e-tests-jars
                             </outputDirectory>
                         </artifactItem>
                         <artifactItem>
-                            <groupId>org.apache.flink</groupId>
-                            <artifactId>flink-table-store-spark-3.2</artifactId>
+                            <groupId>org.apache.paimon</groupId>
+                            <artifactId>paimon-spark-3.2</artifactId>
                             <version>${project.version}</version>
-                            <destFileName>flink-table-store-spark.jar</destFileName>
+                            <destFileName>paimon-spark.jar</destFileName>
                             <type>jar</type>
                             <overWrite>true</overWrite>
-                            <outputDirectory>/tmp/flink-table-store-e2e-tests-jars
+                            <outputDirectory>/tmp/paimon-e2e-tests-jars
                             </outputDirectory>
                         </artifactItem>
                         <artifactItem>
@@ -147,7 +147,7 @@ under the License.
                             <destFileName>bundled-hadoop.jar</destFileName>
                             <type>jar</type>
                             <overWrite>true</overWrite>
-                            <outputDirectory>/tmp/flink-table-store-e2e-tests-jars
+                            <outputDirectory>/tmp/paimon-e2e-tests-jars
                             </outputDirectory>
                         </artifactItem>
                         <!-- test table store with kafka sql jar -->
@@ -158,7 +158,7 @@ under the License.
                             <destFileName>flink-sql-connector-kafka.jar</destFileName>
                             <type>jar</type>
                             <overWrite>true</overWrite>
-                            <outputDirectory>/tmp/flink-table-store-e2e-tests-jars
+                            <outputDirectory>/tmp/paimon-e2e-tests-jars
                             </outputDirectory>
                         </artifactItem>
                     </artifactItems>
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
index e481acb69..0c2424290 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
@@ -22,7 +22,7 @@ import org.junit.jupiter.api.Test;
 
 import java.util.UUID;
 
-/** Test that file store supports format included in flink-table-store-format. */
+/** Test that file store supports format included in paimon-format. */
 public class FileStoreBuiltInFormatE2eTest extends E2eTestBase {
 
     @Test
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
index 91dc2f6ab..98ebd66ad 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
@@ -108,7 +108,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "execution.checkpointing.interval=1s",
                         "-Dclassloader.resolve-order=parent-first",
                         "--detached",
-                        "lib/flink-table-store.jar",
+                        "lib/paimon-flink.jar",
                         "compact",
                         "--warehouse",
                         warehousePath,
@@ -170,7 +170,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "-c",
                         "org.apache.paimon.connector.action.FlinkActions",
                         "-Dclassloader.resolve-order=parent-first",
-                        "lib/flink-table-store.jar",
+                        "lib/paimon-flink.jar",
                         "drop-partition",
                         "--warehouse",
                         warehousePath,
@@ -230,7 +230,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "-c",
                         "org.apache.paimon.connector.action.FlinkActions",
                         "-Dclassloader.resolve-order=parent-first",
-                        "lib/flink-table-store.jar",
+                        "lib/paimon-flink.jar",
                         "delete",
                         "--warehouse",
                         warehousePath,
@@ -298,7 +298,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "-c",
                         "org.apache.paimon.connector.action.FlinkActions",
                         "-Dclassloader.resolve-order=parent-first",
-                        "lib/flink-table-store.jar",
+                        "lib/paimon-flink.jar",
                         "merge-into",
                         "--warehouse",
                         warehousePath,
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
index c3d9ff1a0..1a8215ac9 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
@@ -35,8 +35,7 @@ import java.util.UUID;
 @DisabledIfSystemProperty(named = "test.flink.version", matches = "1.14.*")
 public class HiveE2eTest extends E2eReaderTestBase {
 
-    private static final String TABLE_STORE_HIVE_CONNECTOR_JAR_NAME =
-            "flink-table-store-hive-connector.jar";
+    private static final String TABLE_STORE_HIVE_CONNECTOR_JAR_NAME = "paimon-hive-connector.jar";
 
     public HiveE2eTest() {
         super(false, true, false);
diff --git a/paimon-e2e-tests/src/test/resources-filtered/docker-compose.yaml b/paimon-e2e-tests/src/test/resources-filtered/docker-compose.yaml
index 50a6956cb..536882a61 100644
--- a/paimon-e2e-tests/src/test/resources-filtered/docker-compose.yaml
+++ b/paimon-e2e-tests/src/test/resources-filtered/docker-compose.yaml
@@ -28,8 +28,8 @@ services:
     image: apache/flink:${test.flink.version}-java8
     volumes:
       - testdata:/test-data
-      - /tmp/flink-table-store-e2e-tests-jars:/jars
-    entrypoint: /bin/bash -c "cp /jars/flink-table-store.jar /jars/bundled-hadoop.jar /jars/flink-table-store-hive-catalog.jar /jars/flink-sql-connector-kafka.jar /opt/flink/lib && /docker-entrypoint.sh jobmanager"
+      - /tmp/paimon-e2e-tests-jars:/jars
+    entrypoint: /bin/bash -c "cp /jars/paimon-flink.jar /jars/bundled-hadoop.jar /jars/paimon-hive-catalog.jar /jars/flink-sql-connector-kafka.jar /opt/flink/lib && /docker-entrypoint.sh jobmanager"
     env_file:
       - ./flink.env
     networks:
@@ -43,8 +43,8 @@ services:
     image: apache/flink:${test.flink.version}-java8
     volumes:
       - testdata:/test-data
-      - /tmp/flink-table-store-e2e-tests-jars:/jars
-    entrypoint: /bin/bash -c "cp /jars/flink-table-store.jar /jars/bundled-hadoop.jar /jars/flink-table-store-hive-catalog.jar /jars/flink-sql-connector-kafka.jar /opt/flink/lib && /docker-entrypoint.sh taskmanager"
+      - /tmp/paimon-e2e-tests-jars:/jars
+    entrypoint: /bin/bash -c "cp /jars/paimon-flink.jar /jars/bundled-hadoop.jar /jars/paimon-hive-catalog.jar /jars/flink-sql-connector-kafka.jar /opt/flink/lib && /docker-entrypoint.sh taskmanager"
     env_file:
       - ./flink.env
     networks:
@@ -132,7 +132,7 @@ services:
     image: bde2020/hive:2.3.2-postgresql-metastore
     volumes:
       - testdata:/test-data
-      - /tmp/flink-table-store-e2e-tests-jars:/jars
+      - /tmp/paimon-e2e-tests-jars:/jars
     networks:
       testnetwork:
         aliases:
@@ -178,11 +178,11 @@ services:
     image: bde2020/spark-master:3.3.0-hadoop3.3
     volumes:
       - testdata:/test-data
-      - /tmp/flink-table-store-e2e-tests-jars:/jars
+      - /tmp/paimon-e2e-tests-jars:/jars
     ports:
       - "8080:8080"
       - "7077:7077"
-    entrypoint: /bin/bash -c "cp /jars/flink-table-store.jar /jars/flink-table-store-spark.jar /spark/jars/ && sh /master.sh"
+    entrypoint: /bin/bash -c "cp /jars/paimon-flink.jar /jars/paimon-spark.jar /spark/jars/ && sh /master.sh"
     environment:
       - INIT_DAEMON_STEP=setup_spark
 
@@ -192,10 +192,10 @@ services:
       - spark-master
     volumes:
       - testdata:/test-data
-      - /tmp/flink-table-store-e2e-tests-jars:/jars
+      - /tmp/paimon-e2e-tests-jars:/jars
     ports:
       - "8081:8081"
-    entrypoint: /bin/bash -c "cp /jars/flink-table-store.jar /jars/flink-table-store-spark.jar /spark/jars/ && sh /worker.sh"
+    entrypoint: /bin/bash -c "cp /jars/paimon-flink.jar /jars/paimon-spark.jar /spark/jars/ && sh /worker.sh"
     environment:
       - "SPARK_MASTER=spark://spark-master:7077"
 
diff --git a/paimon-filesystems/paimon-hadoop-shaded/pom.xml b/paimon-filesystems/paimon-hadoop-shaded/pom.xml
index 522f28044..ea0aa34f5 100644
--- a/paimon-filesystems/paimon-hadoop-shaded/pom.xml
+++ b/paimon-filesystems/paimon-hadoop-shaded/pom.xml
@@ -22,13 +22,13 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-filesystems</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-filesystems</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-hadoop-shaded</artifactId>
-    <name>Flink Table Store : FileSystems : Hadoop Shaded</name>
+    <artifactId>paimon-hadoop-shaded</artifactId>
+    <name>Paimon : FileSystems : Hadoop Shaded</name>
 
     <packaging>jar</packaging>
 
diff --git a/paimon-filesystems/paimon-hadoop-shaded/src/main/resources/META-INF/NOTICE b/paimon-filesystems/paimon-hadoop-shaded/src/main/resources/META-INF/NOTICE
index 523ea82f1..1208f5609 100644
--- a/paimon-filesystems/paimon-hadoop-shaded/src/main/resources/META-INF/NOTICE
+++ b/paimon-filesystems/paimon-hadoop-shaded/src/main/resources/META-INF/NOTICE
@@ -1,4 +1,4 @@
-flink-table-store-hadoop-shaded
+paimon-hadoop-shaded
 Copyright 2014-2022 The Apache Software Foundation
 
 This project includes software developed at
diff --git a/paimon-filesystems/paimon-oss-impl/pom.xml b/paimon-filesystems/paimon-oss-impl/pom.xml
index 8ba60cb84..0eeefee00 100644
--- a/paimon-filesystems/paimon-oss-impl/pom.xml
+++ b/paimon-filesystems/paimon-oss-impl/pom.xml
@@ -22,13 +22,13 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-filesystems</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-filesystems</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-oss-impl</artifactId>
-    <name>Flink Table Store : FileSystems : OSS : Impl</name>
+    <artifactId>paimon-oss-impl</artifactId>
+    <name>Paimon : FileSystems : OSS : Impl</name>
     <packaging>jar</packaging>
 
     <properties>
@@ -37,15 +37,15 @@
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-hadoop-shaded</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-hadoop-shaded</artifactId>
             <version>${project.version}</version>
         </dependency>
 
diff --git a/paimon-filesystems/paimon-oss-impl/src/main/resources/META-INF/NOTICE b/paimon-filesystems/paimon-oss-impl/src/main/resources/META-INF/NOTICE
index 1ecf7177d..8ca5b15c4 100644
--- a/paimon-filesystems/paimon-oss-impl/src/main/resources/META-INF/NOTICE
+++ b/paimon-filesystems/paimon-oss-impl/src/main/resources/META-INF/NOTICE
@@ -1,4 +1,4 @@
-flink-table-store-oss-impl
+paimon-oss-impl
 Copyright 2014-2022 The Apache Software Foundation
 
 This project includes software developed at
diff --git a/paimon-filesystems/paimon-oss/pom.xml b/paimon-filesystems/paimon-oss/pom.xml
index 9d70a94ef..349336ab1 100644
--- a/paimon-filesystems/paimon-oss/pom.xml
+++ b/paimon-filesystems/paimon-oss/pom.xml
@@ -22,26 +22,26 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-filesystems</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-filesystems</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-oss</artifactId>
-    <name>Flink Table Store : FileSystems : OSS</name>
+    <artifactId>paimon-oss</artifactId>
+    <name>Paimon : FileSystems : OSS</name>
     <packaging>jar</packaging>
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-oss-impl</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-oss-impl</artifactId>
             <version>${project.version}</version>
             <scope>runtime</scope>
             <optional>true</optional>
@@ -69,12 +69,12 @@
                         <configuration>
                             <artifactItems>
                                 <artifactItem>
-                                    <groupId>org.apache.flink</groupId>
-                                    <artifactId>flink-table-store-oss-impl</artifactId>
+                                    <groupId>org.apache.paimon</groupId>
+                                    <artifactId>paimon-oss-impl</artifactId>
                                     <version>${project.version}</version>
                                     <type>jar</type>
                                     <overWrite>true</overWrite>
-                                    <destFileName>flink-table-store-plugin-oss.jar</destFileName>
+                                    <destFileName>paimon-plugin-oss.jar</destFileName>
                                 </artifactItem>
                             </artifactItems>
                             <outputDirectory>${project.build.directory}/classes</outputDirectory>
diff --git a/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java b/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
index c7353a739..9a5c4cdd4 100644
--- a/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
+++ b/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
@@ -29,7 +29,7 @@ import org.apache.paimon.plugin.PluginLoader;
 /** A {@link PluginLoader} to load oss. */
 public class OSSLoader implements FileIOLoader {
 
-    private static final String OSS_JAR = "flink-table-store-plugin-oss.jar";
+    private static final String OSS_JAR = "paimon-plugin-oss.jar";
 
     private static final String OSS_CLASS = "org.apache.paimon.oss.OSSFileIO";
 
diff --git a/paimon-filesystems/paimon-s3-impl/pom.xml b/paimon-filesystems/paimon-s3-impl/pom.xml
index 518904346..5fbdf29c5 100644
--- a/paimon-filesystems/paimon-s3-impl/pom.xml
+++ b/paimon-filesystems/paimon-s3-impl/pom.xml
@@ -22,13 +22,13 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-filesystems</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-filesystems</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-s3-impl</artifactId>
-    <name>Flink Table Store : FileSystems : S3 : Impl</name>
+    <artifactId>paimon-s3-impl</artifactId>
+    <name>Paimon : FileSystems : S3 : Impl</name>
     <packaging>jar</packaging>
 
     <properties>
@@ -67,8 +67,8 @@
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
diff --git a/paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/NOTICE b/paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/NOTICE
index c4a782ce6..7248ce2f6 100644
--- a/paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/NOTICE
+++ b/paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/NOTICE
@@ -1,4 +1,4 @@
-flink-table-store-s3-impl
+paimon-s3-impl
 Copyright 2014-2022 The Apache Software Foundation
 
 This project bundles the following dependencies under the Apache Software License 2.0 (http://www.apache.org/licenses/LICENSE-2.0.txt)
diff --git a/paimon-filesystems/paimon-s3/pom.xml b/paimon-filesystems/paimon-s3/pom.xml
index e37ee0321..2a779d9f2 100644
--- a/paimon-filesystems/paimon-s3/pom.xml
+++ b/paimon-filesystems/paimon-s3/pom.xml
@@ -22,26 +22,26 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-filesystems</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-filesystems</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-s3</artifactId>
-    <name>Flink Table Store : FileSystems : S3</name>
+    <artifactId>paimon-s3</artifactId>
+    <name>Paimon : FileSystems : S3</name>
     <packaging>jar</packaging>
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-s3-impl</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-s3-impl</artifactId>
             <version>${project.version}</version>
             <scope>runtime</scope>
             <optional>true</optional>
@@ -69,12 +69,12 @@
                         <configuration>
                             <artifactItems>
                                 <artifactItem>
-                                    <groupId>org.apache.flink</groupId>
-                                    <artifactId>flink-table-store-s3-impl</artifactId>
+                                    <groupId>org.apache.paimon</groupId>
+                                    <artifactId>paimon-s3-impl</artifactId>
                                     <version>${project.version}</version>
                                     <type>jar</type>
                                     <overWrite>true</overWrite>
-                                    <destFileName>flink-table-store-plugin-s3.jar</destFileName>
+                                    <destFileName>paimon-plugin-s3.jar</destFileName>
                                 </artifactItem>
                             </artifactItems>
                             <outputDirectory>${project.build.directory}/classes</outputDirectory>
diff --git a/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java b/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
index 56b053e33..a82367373 100644
--- a/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
+++ b/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
@@ -29,7 +29,7 @@ import org.apache.paimon.plugin.PluginLoader;
 /** A {@link PluginLoader} to load oss. */
 public class S3Loader implements FileIOLoader {
 
-    private static final String S3_JAR = "flink-table-store-plugin-s3.jar";
+    private static final String S3_JAR = "paimon-plugin-s3.jar";
 
     private static final String S3_CLASS = "org.apache.paimon.s3.S3FileIO";
 
diff --git a/paimon-filesystems/pom.xml b/paimon-filesystems/pom.xml
index 08d3cbb4a..8710839aa 100644
--- a/paimon-filesystems/pom.xml
+++ b/paimon-filesystems/pom.xml
@@ -22,13 +22,13 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-filesystems</artifactId>
-    <name>Flink Table Store : FileSystems : </name>
+    <artifactId>paimon-filesystems</artifactId>
+    <name>Paimon : FileSystems : </name>
     <packaging>pom</packaging>
 
     <modules>
diff --git a/paimon-flink/paimon-flink-1.14/pom.xml b/paimon-flink/paimon-flink-1.14/pom.xml
index 7a4d97bec..e6dec3289 100644
--- a/paimon-flink/paimon-flink-1.14/pom.xml
+++ b/paimon-flink/paimon-flink-1.14/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-flink</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-flink</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-flink-1.14</artifactId>
-    <name>Flink Table Store : Flink : 1.14</name>
+    <artifactId>paimon-flink-1.14</artifactId>
+    <name>Paimon : Flink : 1.14</name>
 
     <properties>
         <flink.version>1.14.6</flink.version>
@@ -38,8 +38,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-flink-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-flink-common</artifactId>
             <version>${project.version}</version>
             <exclusions>
                 <exclusion>
@@ -146,7 +146,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-flink-common</include>
+                                    <include>org.apache.flink:paimon-flink-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-flink/paimon-flink-1.15/pom.xml b/paimon-flink/paimon-flink-1.15/pom.xml
index 13917113f..11b6c9808 100644
--- a/paimon-flink/paimon-flink-1.15/pom.xml
+++ b/paimon-flink/paimon-flink-1.15/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-flink</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-flink</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-flink-1.15</artifactId>
-    <name>Flink Table Store : Flink : 1.15</name>
+    <artifactId>paimon-flink-1.15</artifactId>
+    <name>Paimon : Flink : 1.15</name>
 
     <properties>
         <flink.version>1.15.3</flink.version>
@@ -38,8 +38,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-flink-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-flink-common</artifactId>
             <version>${project.version}</version>
             <exclusions>
                 <exclusion>
@@ -153,7 +153,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-flink-common</include>
+                                    <include>org.apache.flink:paimon-flink-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-flink/paimon-flink-1.16/pom.xml b/paimon-flink/paimon-flink-1.16/pom.xml
index 944c4bf5f..e091ea14d 100644
--- a/paimon-flink/paimon-flink-1.16/pom.xml
+++ b/paimon-flink/paimon-flink-1.16/pom.xml
@@ -23,15 +23,15 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-flink</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-flink</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
     <packaging>jar</packaging>
 
-    <artifactId>flink-table-store-flink-1.16</artifactId>
-    <name>Flink Table Store : Flink : 1.16</name>
+    <artifactId>paimon-flink-1.16</artifactId>
+    <name>Paimon : Flink : 1.16</name>
 
     <properties>
         <flink.version>1.16.1</flink.version>
@@ -39,8 +39,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-flink-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-flink-common</artifactId>
             <version>${project.version}</version>
         </dependency>
     </dependencies>
@@ -60,7 +60,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-flink-common</include>
+                                    <include>org.apache.flink:paimon-flink-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-flink/paimon-flink-common/pom.xml b/paimon-flink/paimon-flink-common/pom.xml
index b911fbe64..e0d7380fa 100644
--- a/paimon-flink/paimon-flink-common/pom.xml
+++ b/paimon-flink/paimon-flink-common/pom.xml
@@ -23,15 +23,15 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-flink</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-flink</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
     <packaging>jar</packaging>
 
-    <artifactId>flink-table-store-flink-common</artifactId>
-    <name>Flink Table Store : Flink : Common</name>
+    <artifactId>paimon-flink-common</artifactId>
+    <name>Paimon : Flink : Common</name>
 
     <properties>
         <flink.version>1.16.1</flink.version>
@@ -125,8 +125,8 @@ under the License.
         <!-- test dependencies -->
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
             <type>test-jar</type>
             <scope>test</scope>
@@ -256,10 +256,10 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-common</include>
-                                    <include>org.apache.flink:flink-table-store-core</include>
-                                    <include>org.apache.flink:flink-table-store-format</include>
-                                    <include>org.apache.flink:flink-table-store-codegen-loader</include>
+                                    <include>org.apache.flink:paimon-common</include>
+                                    <include>org.apache.flink:paimon-core</include>
+                                    <include>org.apache.flink:paimon-format</include>
+                                    <include>org.apache.flink:paimon-codegen-loader</include>
                                 </includes>
                             </artifactSet>
                             <relocations>
diff --git a/paimon-flink/pom.xml b/paimon-flink/pom.xml
index f3cc62853..98d502f17 100644
--- a/paimon-flink/pom.xml
+++ b/paimon-flink/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-flink</artifactId>
-    <name>Flink Table Store : Flink</name>
+    <artifactId>paimon-flink</artifactId>
+    <name>Paimon : Flink</name>
 
     <packaging>pom</packaging>
 
@@ -42,32 +42,32 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-codegen-loader</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-codegen-loader</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-core</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-core</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-format</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-format</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-core</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-core</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
             <type>test-jar</type>
diff --git a/paimon-format/pom.xml b/paimon-format/pom.xml
index 532c2c672..eb8f140b2 100644
--- a/paimon-format/pom.xml
+++ b/paimon-format/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-format</artifactId>
-    <name>Flink Table Store : Format</name>
+    <artifactId>paimon-format</artifactId>
+    <name>Paimon : Format</name>
 
     <properties>
         <parquet.version>1.12.3</parquet.version>
@@ -41,8 +41,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
@@ -181,8 +181,8 @@ under the License.
         <!-- test dependencies -->
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
             <type>test-jar</type>
             <scope>test</scope>
diff --git a/paimon-format/src/main/resources/META-INF/NOTICE b/paimon-format/src/main/resources/META-INF/NOTICE
index d98fe55d1..40698b483 100644
--- a/paimon-format/src/main/resources/META-INF/NOTICE
+++ b/paimon-format/src/main/resources/META-INF/NOTICE
@@ -1,4 +1,4 @@
-flink-table-store-format
+paimon-format
 Copyright 2014-2022 The Apache Software Foundation
 
 This product includes software developed at
diff --git a/paimon-hive/paimon-hive-catalog/pom.xml b/paimon-hive/paimon-hive-catalog/pom.xml
index f0cb93ebc..8413984d8 100644
--- a/paimon-hive/paimon-hive-catalog/pom.xml
+++ b/paimon-hive/paimon-hive-catalog/pom.xml
@@ -23,27 +23,27 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-hive</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-hive</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-hive-catalog</artifactId>
-    <name>Flink Table Store : Hive Catalog</name>
+    <artifactId>paimon-hive-catalog</artifactId>
+    <name>Paimon : Hive Catalog</name>
 
     <packaging>jar</packaging>
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-core</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-core</artifactId>
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-hive-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-hive-common</artifactId>
             <version>${project.version}</version>
         </dependency>
 
@@ -124,15 +124,15 @@ under the License.
         <!-- test dependencies -->
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-flink-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-flink-common</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-hive-connector-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-hive-connector-common</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
@@ -489,7 +489,7 @@ under the License.
         <!--
         Why we need this test dependency:
         IDEA reads classes from the same project from target/classes of that module,
-        so even though we've packaged and shaded avro classes into flink-table-store-format.jar
+        so even though we've packaged and shaded avro classes into paimon-format.jar
         we still have to include this test dependency here.
 
         Why do we put this test dependency before the provided hive-exec:
@@ -577,7 +577,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes>
-                                    <include>org.apache.flink:flink-table-store-hive-common</include>
+                                    <include>org.apache.flink:paimon-hive-common</include>
                                     <include>org.apache.thrift:libthrift</include>
                                     <include>org.apache.thrift:libfb303</include>
                                     <include>com.google.guava:guava</include>
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
index a07d870d3..43340e0ee 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
@@ -69,7 +69,7 @@ import static org.apache.paimon.utils.Preconditions.checkState;
 public class HiveCatalog extends AbstractCatalog {
     private static final Logger LOG = LoggerFactory.getLogger(HiveCatalog.class);
 
-    // we don't include flink-table-store-hive-connector as dependencies because it depends on
+    // we don't include paimon-hive-connector as dependencies because it depends on
     // hive-exec
     private static final String INPUT_FORMAT_CLASS_NAME =
             "org.apache.paimon.hive.mapred.TableStoreInputFormat";
diff --git a/paimon-hive/paimon-hive-catalog/src/main/resources-filtered/META-INF/NOTICE b/paimon-hive/paimon-hive-catalog/src/main/resources-filtered/META-INF/NOTICE
index 465ec1979..b011e413e 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/resources-filtered/META-INF/NOTICE
+++ b/paimon-hive/paimon-hive-catalog/src/main/resources-filtered/META-INF/NOTICE
@@ -1,4 +1,4 @@
-flink-table-store-hive-catalog
+paimon-hive-catalog
 Copyright 2014-2022 The Apache Software Foundation
 
 This product includes software developed at
diff --git a/paimon-hive/paimon-hive-common/pom.xml b/paimon-hive/paimon-hive-common/pom.xml
index d6eb92e31..b8d1ff638 100644
--- a/paimon-hive/paimon-hive-common/pom.xml
+++ b/paimon-hive/paimon-hive-common/pom.xml
@@ -23,20 +23,20 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-hive</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-hive</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-hive-common</artifactId>
-    <name>Flink Table Store : Hive Common</name>
+    <artifactId>paimon-hive-common</artifactId>
+    <name>Paimon : Hive Common</name>
 
     <packaging>jar</packaging>
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
diff --git a/paimon-hive/paimon-hive-connector-2.1-cdh-6.3/pom.xml b/paimon-hive/paimon-hive-connector-2.1-cdh-6.3/pom.xml
index 90c7e5ca7..5bd77abad 100644
--- a/paimon-hive/paimon-hive-connector-2.1-cdh-6.3/pom.xml
+++ b/paimon-hive/paimon-hive-connector-2.1-cdh-6.3/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-hive</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-hive</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-hive-connector-2.1-cdh-6.3</artifactId>
-    <name>Flink Table Store : Hive Connector : 2.1-cdh-6.3</name>
+    <artifactId>paimon-hive-connector-2.1-cdh-6.3</artifactId>
+    <name>Paimon : Hive Connector : 2.1-cdh-6.3</name>
 
     <packaging>jar</packaging>
 
@@ -39,8 +39,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-hive-connector-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-hive-connector-common</artifactId>
             <version>${project.version}</version>
         </dependency>
     </dependencies>
@@ -60,7 +60,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-hive-connector-common</include>
+                                    <include>org.apache.flink:paimon-hive-connector-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-hive/paimon-hive-connector-2.1/pom.xml b/paimon-hive/paimon-hive-connector-2.1/pom.xml
index f23434d15..05dde38d5 100644
--- a/paimon-hive/paimon-hive-connector-2.1/pom.xml
+++ b/paimon-hive/paimon-hive-connector-2.1/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-hive</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-hive</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-hive-connector-2.1</artifactId>
-    <name>Flink Table Store : Hive Connector : 2.1</name>
+    <artifactId>paimon-hive-connector-2.1</artifactId>
+    <name>Paimon : Hive Connector : 2.1</name>
 
     <packaging>jar</packaging>
 
@@ -39,8 +39,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-hive-connector-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-hive-connector-common</artifactId>
             <version>${project.version}</version>
         </dependency>
     </dependencies>
@@ -60,7 +60,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-hive-connector-common</include>
+                                    <include>org.apache.flink:paimon-hive-connector-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-hive/paimon-hive-connector-2.2/pom.xml b/paimon-hive/paimon-hive-connector-2.2/pom.xml
index b4236ee56..71ad5496c 100644
--- a/paimon-hive/paimon-hive-connector-2.2/pom.xml
+++ b/paimon-hive/paimon-hive-connector-2.2/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-hive</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-hive</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-hive-connector-2.2</artifactId>
-    <name>Flink Table Store : Hive Connector : 2.2</name>
+    <artifactId>paimon-hive-connector-2.2</artifactId>
+    <name>Paimon : Hive Connector : 2.2</name>
 
     <packaging>jar</packaging>
 
@@ -39,8 +39,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-hive-connector-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-hive-connector-common</artifactId>
             <version>${project.version}</version>
         </dependency>
     </dependencies>
@@ -60,7 +60,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-hive-connector-common</include>
+                                    <include>org.apache.flink:paimon-hive-connector-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-hive/paimon-hive-connector-2.3/pom.xml b/paimon-hive/paimon-hive-connector-2.3/pom.xml
index 23cf733b5..aa2f41611 100644
--- a/paimon-hive/paimon-hive-connector-2.3/pom.xml
+++ b/paimon-hive/paimon-hive-connector-2.3/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-hive</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-hive</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-hive-connector-2.3</artifactId>
-    <name>Flink Table Store : Hive Connector : 2.3</name>
+    <artifactId>paimon-hive-connector-2.3</artifactId>
+    <name>Paimon : Hive Connector : 2.3</name>
 
     <packaging>jar</packaging>
 
@@ -39,8 +39,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-hive-connector-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-hive-connector-common</artifactId>
             <version>${project.version}</version>
         </dependency>
     </dependencies>
@@ -60,7 +60,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-hive-connector-common</include>
+                                    <include>org.apache.flink:paimon-hive-connector-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-hive/paimon-hive-connector-3.1/pom.xml b/paimon-hive/paimon-hive-connector-3.1/pom.xml
index b5b95d453..af9578398 100644
--- a/paimon-hive/paimon-hive-connector-3.1/pom.xml
+++ b/paimon-hive/paimon-hive-connector-3.1/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-hive</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-hive</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-hive-connector-3.1</artifactId>
-    <name>Flink Table Store : Hive Connector : 3.1</name>
+    <artifactId>paimon-hive-connector-3.1</artifactId>
+    <name>Paimon : Hive Connector : 3.1</name>
 
     <packaging>jar</packaging>
 
@@ -39,8 +39,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-hive-connector-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-hive-connector-common</artifactId>
             <version>${project.version}</version>
         </dependency>
 
@@ -98,7 +98,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-hive-connector-common</include>
+                                    <include>org.apache.flink:paimon-hive-connector-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-hive/paimon-hive-connector-common/pom.xml b/paimon-hive/paimon-hive-connector-common/pom.xml
index 3e8a7900a..199262020 100644
--- a/paimon-hive/paimon-hive-connector-common/pom.xml
+++ b/paimon-hive/paimon-hive-connector-common/pom.xml
@@ -23,27 +23,27 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-hive</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-hive</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-hive-connector-common</artifactId>
-    <name>Flink Table Store : Hive Connector Common</name>
+    <artifactId>paimon-hive-connector-common</artifactId>
+    <name>Paimon : Hive Connector Common</name>
 
     <packaging>jar</packaging>
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-hive-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-hive-common</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <!-- Flink All dependencies -->
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-shade</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-shade</artifactId>
             <version>${project.version}</version>
         </dependency>
 
@@ -84,7 +84,7 @@ under the License.
         <!--
         Why we need this test dependency:
         IDEA reads classes from the same project from target/classes of that module,
-        so even though we've packaged and shaded avro classes into flink-table-store-format.jar
+        so even though we've packaged and shaded avro classes into paimon-format.jar
         we still have to include this test dependency here.
 
         Why do we put this test dependency before the provided hive-exec:
@@ -139,8 +139,8 @@ under the License.
         <!-- test dependencies -->
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-core</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-core</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
             <type>test-jar</type>
@@ -520,8 +520,8 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-hive-common</include>
-                                    <include>org.apache.flink:flink-table-store-shade</include>
+                                    <include>org.apache.flink:paimon-hive-common</include>
+                                    <include>org.apache.flink:paimon-shade</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-hive/pom.xml b/paimon-hive/pom.xml
index c39f101d6..fc888bbb2 100644
--- a/paimon-hive/pom.xml
+++ b/paimon-hive/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-hive</artifactId>
-    <name>Flink Table Store : Hive</name>
+    <artifactId>paimon-hive</artifactId>
+    <name>Paimon : Hive</name>
 
     <packaging>pom</packaging>
 
diff --git a/paimon-shade/pom.xml b/paimon-shade/pom.xml
index 67292623d..67451b585 100644
--- a/paimon-shade/pom.xml
+++ b/paimon-shade/pom.xml
@@ -23,43 +23,43 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-shade</artifactId>
-    <name>Flink Table Store : Shade</name>
+    <artifactId>paimon-shade</artifactId>
+    <name>Paimon : Shade</name>
 
     <packaging>jar</packaging>
 
     <dependencies>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-common</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-core</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-core</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <!-- codegen runtime dependencies -->
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-codegen-loader</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-codegen-loader</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <!-- format runtime dependencies -->
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-format</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-format</artifactId>
             <version>${project.version}</version>
         </dependency>
 
@@ -117,10 +117,10 @@ under the License.
                                     <include>org.apache.flink:flink-shaded-asm-9</include>
 
                                     <!-- Flink Table Store -->
-                                    <include>org.apache.flink:flink-table-store-common</include>
-                                    <include>org.apache.flink:flink-table-store-core</include>
-                                    <include>org.apache.flink:flink-table-store-format</include>
-                                    <include>org.apache.flink:flink-table-store-codegen-loader</include>
+                                    <include>org.apache.flink:paimon-common</include>
+                                    <include>org.apache.flink:paimon-core</include>
+                                    <include>org.apache.flink:paimon-format</include>
+                                    <include>org.apache.flink:paimon-codegen-loader</include>
 
                                     <!-- Others, not shade to reduce conflicting -->
                                     <!-- <include>org.xerial.snappy:snappy-java</include> -->
diff --git a/paimon-spark/paimon-spark-2/pom.xml b/paimon-spark/paimon-spark-2/pom.xml
index 7207d74fd..34dd7dc1c 100644
--- a/paimon-spark/paimon-spark-2/pom.xml
+++ b/paimon-spark/paimon-spark-2/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <groupId>org.apache.flink</groupId>
-        <artifactId>flink-table-store-spark</artifactId>
+        <groupId>org.apache.paimon</groupId>
+        <artifactId>paimon-spark</artifactId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-spark-2</artifactId>
-    <name>Flink Table Store : Spark : 2</name>
+    <artifactId>paimon-spark-2</artifactId>
+    <name>Paimon : Spark : 2</name>
 
     <properties>
         <spark2.version>2.4.8</spark2.version>
@@ -38,8 +38,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-spark-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-spark-common</artifactId>
             <version>${project.version}</version>
             <exclusions>
                 <exclusion>
@@ -101,7 +101,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-spark-common</include>
+                                    <include>org.apache.flink:paimon-spark-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-spark/paimon-spark-3.1/pom.xml b/paimon-spark/paimon-spark-3.1/pom.xml
index 45fe23bf1..6ed901dc2 100644
--- a/paimon-spark/paimon-spark-3.1/pom.xml
+++ b/paimon-spark/paimon-spark-3.1/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <groupId>org.apache.flink</groupId>
-        <artifactId>flink-table-store-spark</artifactId>
+        <groupId>org.apache.paimon</groupId>
+        <artifactId>paimon-spark</artifactId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-spark-3.1</artifactId>
-    <name>Flink Table Store : Spark : 3.1</name>
+    <artifactId>paimon-spark-3.1</artifactId>
+    <name>Paimon : Spark : 3.1</name>
 
     <properties>
         <spark.version>3.1.3</spark.version>
@@ -37,8 +37,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-spark-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-spark-common</artifactId>
             <version>${project.version}</version>
         </dependency>
 
@@ -74,7 +74,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-spark-common</include>
+                                    <include>org.apache.flink:paimon-spark-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-spark/paimon-spark-3.2/pom.xml b/paimon-spark/paimon-spark-3.2/pom.xml
index 4f2610c1c..ee7c85f78 100644
--- a/paimon-spark/paimon-spark-3.2/pom.xml
+++ b/paimon-spark/paimon-spark-3.2/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <groupId>org.apache.flink</groupId>
-        <artifactId>flink-table-store-spark</artifactId>
+        <groupId>org.apache.paimon</groupId>
+        <artifactId>paimon-spark</artifactId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-spark-3.2</artifactId>
-    <name>Flink Table Store : Spark : 3.2</name>
+    <artifactId>paimon-spark-3.2</artifactId>
+    <name>Paimon : Spark : 3.2</name>
 
     <properties>
         <spark.version>3.2.2</spark.version>
@@ -37,8 +37,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-spark-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-spark-common</artifactId>
             <version>${project.version}</version>
         </dependency>
 
@@ -74,7 +74,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-spark-common</include>
+                                    <include>org.apache.flink:paimon-spark-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-spark/paimon-spark-3.3/pom.xml b/paimon-spark/paimon-spark-3.3/pom.xml
index a03ebd1d3..a0bc22fb2 100644
--- a/paimon-spark/paimon-spark-3.3/pom.xml
+++ b/paimon-spark/paimon-spark-3.3/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <groupId>org.apache.flink</groupId>
-        <artifactId>flink-table-store-spark</artifactId>
+        <groupId>org.apache.paimon</groupId>
+        <artifactId>paimon-spark</artifactId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-spark-3.3</artifactId>
-    <name>Flink Table Store : Spark : 3.3</name>
+    <artifactId>paimon-spark-3.3</artifactId>
+    <name>Paimon : Spark : 3.3</name>
 
     <properties>
         <spark.version>3.3.0</spark.version>
@@ -37,8 +37,8 @@ under the License.
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-spark-common</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-spark-common</artifactId>
             <version>${project.version}</version>
         </dependency>
 
@@ -74,7 +74,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-spark-common</include>
+                                    <include>org.apache.flink:paimon-spark-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-spark/paimon-spark-common/pom.xml b/paimon-spark/paimon-spark-common/pom.xml
index 1303a81c7..c898a8f9a 100644
--- a/paimon-spark/paimon-spark-common/pom.xml
+++ b/paimon-spark/paimon-spark-common/pom.xml
@@ -23,15 +23,15 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-spark</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-spark</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
     <packaging>jar</packaging>
 
-    <artifactId>flink-table-store-spark-common</artifactId>
-    <name>Flink Table Store : Spark : Common</name>
+    <artifactId>paimon-spark-common</artifactId>
+    <name>Paimon : Spark : Common</name>
 
     <properties>
         <spark.version>3.2.2</spark.version>
@@ -74,7 +74,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:flink-table-store-shade</include>
+                                    <include>org.apache.flink:paimon-shade</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-spark/pom.xml b/paimon-spark/pom.xml
index 1283cab61..a618cbfce 100644
--- a/paimon-spark/pom.xml
+++ b/paimon-spark/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-spark</artifactId>
-    <name>Flink Table Store : Spark</name>
+    <artifactId>paimon-spark</artifactId>
+    <name>Paimon : Spark</name>
 
     <packaging>pom</packaging>
 
@@ -49,23 +49,23 @@ under the License.
         <!-- Flink All dependencies -->
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-shade</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-shade</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <!-- Test -->
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-test-utils</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-test-utils</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.apache.flink</groupId>
-            <artifactId>flink-table-store-s3</artifactId>
+            <groupId>org.apache.paimon</groupId>
+            <artifactId>paimon-s3</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
diff --git a/paimon-test-utils/pom.xml b/paimon-test-utils/pom.xml
index 3b3261d83..d77fe4c89 100644
--- a/paimon-test-utils/pom.xml
+++ b/paimon-test-utils/pom.xml
@@ -23,13 +23,13 @@ under the License.
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <artifactId>flink-table-store-parent</artifactId>
-        <groupId>org.apache.flink</groupId>
+        <artifactId>paimon-parent</artifactId>
+        <groupId>org.apache.paimon</groupId>
         <version>0.4-SNAPSHOT</version>
     </parent>
 
-    <artifactId>flink-table-store-test-utils</artifactId>
-    <name>Flink Table Store : Test utils</name>
+    <artifactId>paimon-test-utils</artifactId>
+    <name>Paimon : Test utils</name>
 
     <dependencies>
         <dependency>
diff --git a/pom.xml b/pom.xml
index d0876bed6..9c3cf4d05 100644
--- a/pom.xml
+++ b/pom.xml
@@ -28,9 +28,9 @@ under the License.
         <version>23</version>
     </parent>
 
-    <artifactId>flink-table-store-parent</artifactId>
-    <groupId>org.apache.flink</groupId>
-    <name>Flink Table Store</name>
+    <artifactId>paimon-parent</artifactId>
+    <groupId>org.apache.paimon</groupId>
+    <name>Paimon : </name>
     <version>0.4-SNAPSHOT</version>
     <packaging>pom</packaging>
 
@@ -46,9 +46,9 @@ under the License.
     </licenses>
 
     <scm>
-        <url>https://github.com/apache/flink-table-store</url>
-        <connection>git@github.com:apache/flink-table-store.git</connection>
-        <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/flink-table-store.git</developerConnection>
+        <url>https://github.com/apache/incubator-paimon</url>
+        <connection>git@github.com:apache/incubator-paimon.git</connection>
+        <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/incubator-paimon.git</developerConnection>
     </scm>
 
     <modules>
@@ -552,7 +552,7 @@ under the License.
                                     </includes>
                                     <message>
                                         Direct dependencies on flink-table-planner are not allowed.
-                                        You should depend on either Table API modules, flink-table-planner-loader or flink-table-store-codegen-loader.
+                                        You should depend on either Table API modules, flink-table-planner-loader or paimon-codegen-loader.
                                     </message>
                                 </bannedDependencies>
                             </rules>
@@ -659,8 +659,8 @@ under the License.
                         <configuration>
                             <property>rootDir</property>
                             <project>
-                                <groupId>org.apache.flink</groupId>
-                                <artifactId>flink-table-store-parent</artifactId>
+                                <groupId>org.apache.paimon</groupId>
+                                <artifactId>paimon-parent</artifactId>
                             </project>
                         </configuration>
                     </execution>
diff --git a/tools/releasing/create_binary_release.sh b/tools/releasing/create_binary_release.sh
index d3dd43746..305d65966 100755
--- a/tools/releasing/create_binary_release.sh
+++ b/tools/releasing/create_binary_release.sh
@@ -56,48 +56,48 @@ mkdir ${RELEASE_DIR}
 ###########################
 
 mvn clean install -Dcheckstyle.skip=true -Dgpg.skip -DskipTests
-cp flink-table-store-flink/flink-table-store-flink-1.16/target/flink-table-store-flink-1.16-${RELEASE_VERSION}.jar ${RELEASE_DIR}
-cp flink-table-store-flink/flink-table-store-flink-1.15/target/flink-table-store-flink-1.15-${RELEASE_VERSION}.jar ${RELEASE_DIR}
-cp flink-table-store-flink/flink-table-store-flink-1.14/target/flink-table-store-flink-1.14-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-flink/paimon-flink-1.16/target/paimon-flink-1.16-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-flink/paimon-flink-1.15/target/paimon-flink-1.15-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-flink/paimon-flink-1.14/target/paimon-flink-1.14-${RELEASE_VERSION}.jar ${RELEASE_DIR}
 
-cp flink-table-store-hive/flink-table-store-hive-catalog/target/flink-table-store-hive-catalog-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-hive/paimon-hive-catalog/target/paimon-hive-catalog-${RELEASE_VERSION}.jar ${RELEASE_DIR}
 
-cp flink-table-store-hive/flink-table-store-hive-connector-3.1/target/flink-table-store-hive-connector-3.1-${RELEASE_VERSION}.jar ${RELEASE_DIR}
-cp flink-table-store-hive/flink-table-store-hive-connector-2.3/target/flink-table-store-hive-connector-2.3-${RELEASE_VERSION}.jar ${RELEASE_DIR}
-cp flink-table-store-hive/flink-table-store-hive-connector-2.2/target/flink-table-store-hive-connector-2.2-${RELEASE_VERSION}.jar ${RELEASE_DIR}
-cp flink-table-store-hive/flink-table-store-hive-connector-2.1/target/flink-table-store-hive-connector-2.1-${RELEASE_VERSION}.jar ${RELEASE_DIR}
-cp flink-table-store-hive/flink-table-store-hive-connector-2.1-cdh-6.3/target/flink-table-store-hive-connector-2.1-cdh-6.3-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-hive/paimon-hive-connector-3.1/target/paimon-hive-connector-3.1-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-hive/paimon-hive-connector-2.3/target/paimon-hive-connector-2.3-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-hive/paimon-hive-connector-2.2/target/paimon-hive-connector-2.2-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-hive/paimon-hive-connector-2.1/target/paimon-hive-connector-2.1-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-hive/paimon-hive-connector-2.1-cdh-6.3/target/paimon-hive-connector-2.1-cdh-6.3-${RELEASE_VERSION}.jar ${RELEASE_DIR}
 
-cp flink-table-store-spark/flink-table-store-spark-3.3/target/flink-table-store-spark-3.3-${RELEASE_VERSION}.jar ${RELEASE_DIR}
-cp flink-table-store-spark/flink-table-store-spark-3.2/target/flink-table-store-spark-3.2-${RELEASE_VERSION}.jar ${RELEASE_DIR}
-cp flink-table-store-spark/flink-table-store-spark-3.1/target/flink-table-store-spark-3.1-${RELEASE_VERSION}.jar ${RELEASE_DIR}
-cp flink-table-store-spark/flink-table-store-spark-2/target/flink-table-store-spark-2-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-spark/paimon-spark-3.3/target/paimon-spark-3.3-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-spark/paimon-spark-3.2/target/paimon-spark-3.2-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-spark/paimon-spark-3.1/target/paimon-spark-3.1-${RELEASE_VERSION}.jar ${RELEASE_DIR}
+cp paimon-spark/paimon-spark-2/target/paimon-spark-2-${RELEASE_VERSION}.jar ${RELEASE_DIR}
 
 cd ${RELEASE_DIR}
-gpg --armor --detach-sig "flink-table-store-flink-1.16-${RELEASE_VERSION}.jar"
-gpg --armor --detach-sig "flink-table-store-flink-1.15-${RELEASE_VERSION}.jar"
-gpg --armor --detach-sig "flink-table-store-flink-1.14-${RELEASE_VERSION}.jar"
-gpg --armor --detach-sig "flink-table-store-hive-catalog-${RELEASE_VERSION}.jar"
-gpg --armor --detach-sig "flink-table-store-hive-connector-3.1-${RELEASE_VERSION}.jar"
-gpg --armor --detach-sig "flink-table-store-hive-connector-2.3-${RELEASE_VERSION}.jar"
-gpg --armor --detach-sig "flink-table-store-hive-connector-2.2-${RELEASE_VERSION}.jar"
-gpg --armor --detach-sig "flink-table-store-hive-connector-2.1-${RELEASE_VERSION}.jar"
-gpg --armor --detach-sig "flink-table-store-hive-connector-2.1-cdh-6.3-${RELEASE_VERSION}.jar"
-gpg --armor --detach-sig "flink-table-store-spark-3.3-${RELEASE_VERSION}.jar"
-gpg --armor --detach-sig "flink-table-store-spark-3.2-${RELEASE_VERSION}.jar"
-gpg --armor --detach-sig "flink-table-store-spark-3.1-${RELEASE_VERSION}.jar"
-gpg --armor --detach-sig "flink-table-store-spark-2-${RELEASE_VERSION}.jar"
-
-$SHASUM "flink-table-store-flink-1.16-${RELEASE_VERSION}.jar" > "flink-table-store-flink-1.16-${RELEASE_VERSION}.jar.sha512"
-$SHASUM "flink-table-store-flink-1.15-${RELEASE_VERSION}.jar" > "flink-table-store-flink-1.15-${RELEASE_VERSION}.jar.sha512"
-$SHASUM "flink-table-store-flink-1.14-${RELEASE_VERSION}.jar" > "flink-table-store-flink-1.14-${RELEASE_VERSION}.jar.sha512"
-$SHASUM "flink-table-store-hive-catalog-${RELEASE_VERSION}.jar" > "flink-table-store-hive-catalog-${RELEASE_VERSION}.jar.sha512"
-$SHASUM "flink-table-store-hive-connector-3.1-${RELEASE_VERSION}.jar" > "flink-table-store-hive-connector-3.1-${RELEASE_VERSION}.jar.sha512"
-$SHASUM "flink-table-store-hive-connector-2.3-${RELEASE_VERSION}.jar" > "flink-table-store-hive-connector-2.3-${RELEASE_VERSION}.jar.sha512"
-$SHASUM "flink-table-store-hive-connector-2.2-${RELEASE_VERSION}.jar" > "flink-table-store-hive-connector-2.2-${RELEASE_VERSION}.jar.sha512"
-$SHASUM "flink-table-store-hive-connector-2.1-${RELEASE_VERSION}.jar" > "flink-table-store-hive-connector-2.1-${RELEASE_VERSION}.jar.sha512"
-$SHASUM "flink-table-store-hive-connector-2.1-cdh-6.3-${RELEASE_VERSION}.jar" > "flink-table-store-hive-connector-2.1-cdh-6.3-${RELEASE_VERSION}.jar.sha512"
-$SHASUM "flink-table-store-spark-3.3-${RELEASE_VERSION}.jar" > "flink-table-store-spark-3.3-${RELEASE_VERSION}.jar.sha512"
-$SHASUM "flink-table-store-spark-3.2-${RELEASE_VERSION}.jar" > "flink-table-store-spark-3.2-${RELEASE_VERSION}.jar.sha512"
-$SHASUM "flink-table-store-spark-3.1-${RELEASE_VERSION}.jar" > "flink-table-store-spark-3.1-${RELEASE_VERSION}.jar.sha512"
-$SHASUM "flink-table-store-spark-2-${RELEASE_VERSION}.jar" > "flink-table-store-spark-2-${RELEASE_VERSION}.jar.sha512"
+gpg --armor --detach-sig "paimon-flink-1.16-${RELEASE_VERSION}.jar"
+gpg --armor --detach-sig "paimon-flink-1.15-${RELEASE_VERSION}.jar"
+gpg --armor --detach-sig "paimon-flink-1.14-${RELEASE_VERSION}.jar"
+gpg --armor --detach-sig "paimon-hive-catalog-${RELEASE_VERSION}.jar"
+gpg --armor --detach-sig "paimon-hive-connector-3.1-${RELEASE_VERSION}.jar"
+gpg --armor --detach-sig "paimon-hive-connector-2.3-${RELEASE_VERSION}.jar"
+gpg --armor --detach-sig "paimon-hive-connector-2.2-${RELEASE_VERSION}.jar"
+gpg --armor --detach-sig "paimon-hive-connector-2.1-${RELEASE_VERSION}.jar"
+gpg --armor --detach-sig "paimon-hive-connector-2.1-cdh-6.3-${RELEASE_VERSION}.jar"
+gpg --armor --detach-sig "paimon-spark-3.3-${RELEASE_VERSION}.jar"
+gpg --armor --detach-sig "paimon-spark-3.2-${RELEASE_VERSION}.jar"
+gpg --armor --detach-sig "paimon-spark-3.1-${RELEASE_VERSION}.jar"
+gpg --armor --detach-sig "paimon-spark-2-${RELEASE_VERSION}.jar"
+
+$SHASUM "paimon-flink-1.16-${RELEASE_VERSION}.jar" > "paimon-flink-1.16-${RELEASE_VERSION}.jar.sha512"
+$SHASUM "paimon-flink-1.15-${RELEASE_VERSION}.jar" > "paimon-flink-1.15-${RELEASE_VERSION}.jar.sha512"
+$SHASUM "paimon-flink-1.14-${RELEASE_VERSION}.jar" > "paimon-flink-1.14-${RELEASE_VERSION}.jar.sha512"
+$SHASUM "paimon-hive-catalog-${RELEASE_VERSION}.jar" > "paimon-hive-catalog-${RELEASE_VERSION}.jar.sha512"
+$SHASUM "paimon-hive-connector-3.1-${RELEASE_VERSION}.jar" > "paimon-hive-connector-3.1-${RELEASE_VERSION}.jar.sha512"
+$SHASUM "paimon-hive-connector-2.3-${RELEASE_VERSION}.jar" > "paimon-hive-connector-2.3-${RELEASE_VERSION}.jar.sha512"
+$SHASUM "paimon-hive-connector-2.2-${RELEASE_VERSION}.jar" > "paimon-hive-connector-2.2-${RELEASE_VERSION}.jar.sha512"
+$SHASUM "paimon-hive-connector-2.1-${RELEASE_VERSION}.jar" > "paimon-hive-connector-2.1-${RELEASE_VERSION}.jar.sha512"
+$SHASUM "paimon-hive-connector-2.1-cdh-6.3-${RELEASE_VERSION}.jar" > "paimon-hive-connector-2.1-cdh-6.3-${RELEASE_VERSION}.jar.sha512"
+$SHASUM "paimon-spark-3.3-${RELEASE_VERSION}.jar" > "paimon-spark-3.3-${RELEASE_VERSION}.jar.sha512"
+$SHASUM "paimon-spark-3.2-${RELEASE_VERSION}.jar" > "paimon-spark-3.2-${RELEASE_VERSION}.jar.sha512"
+$SHASUM "paimon-spark-3.1-${RELEASE_VERSION}.jar" > "paimon-spark-3.1-${RELEASE_VERSION}.jar.sha512"
+$SHASUM "paimon-spark-2-${RELEASE_VERSION}.jar" > "paimon-spark-2-${RELEASE_VERSION}.jar.sha512"
diff --git a/tools/releasing/create_source_release.sh b/tools/releasing/create_source_release.sh
index 17318515b..99b27a062 100755
--- a/tools/releasing/create_source_release.sh
+++ b/tools/releasing/create_source_release.sh
@@ -55,7 +55,7 @@ fi
 ###########################
 
 RELEASE_DIR=${PROJECT_ROOT}/release
-CLONE_DIR=${RELEASE_DIR}/flink-table-store-tmp-clone
+CLONE_DIR=${RELEASE_DIR}/paimon-tmp-clone
 
 rm -rf ${RELEASE_DIR}
 mkdir ${RELEASE_DIR}
@@ -75,12 +75,12 @@ rsync -a \
   --exclude "target" \
   --exclude ".idea" --exclude "*.iml" \
   --exclude ".travis.yml" \
-  . flink-table-store-${RELEASE_VERSION}
+  . paimon-${RELEASE_VERSION}
 
-tar czf ${RELEASE_DIR}/flink-table-store-${RELEASE_VERSION}-src.tgz flink-table-store-${RELEASE_VERSION}
-gpg --armor --detach-sig ${RELEASE_DIR}/flink-table-store-${RELEASE_VERSION}-src.tgz
+tar czf ${RELEASE_DIR}/paimon-${RELEASE_VERSION}-src.tgz paimon-${RELEASE_VERSION}
+gpg --armor --detach-sig ${RELEASE_DIR}/paimon-${RELEASE_VERSION}-src.tgz
 cd ${RELEASE_DIR}
-${SHASUM} flink-table-store-${RELEASE_VERSION}-src.tgz > flink-table-store-${RELEASE_VERSION}-src.tgz.sha512
+${SHASUM} paimon-${RELEASE_VERSION}-src.tgz > paimon-${RELEASE_VERSION}-src.tgz.sha512
 
 rm -rf ${CLONE_DIR}
 


[incubator-paimon] 07/32: [core] Rename paimon format

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 91c3c5cc04e2f0429419d97597028ba1b0292e3f
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 12:31:59 2023 +0800

    [core] Rename paimon format
---
 .../flink/table/store/file/predicate/And.java      |   2 +-
 .../store/file/predicate/CompoundPredicate.java    |   2 +-
 .../flink/table/store/file/predicate/Equal.java    |   3 ++-
 .../table/store/file/predicate/GreaterOrEqual.java |   3 ++-
 .../table/store/file/predicate/GreaterThan.java    |   3 ++-
 .../flink/table/store/file/predicate/In.java       |   3 ++-
 .../table/store/file/predicate/IsNotNull.java      |   3 ++-
 .../flink/table/store/file/predicate/IsNull.java   |   3 ++-
 .../table/store/file/predicate/LeafFunction.java   |   3 ++-
 .../table/store/file/predicate/LeafPredicate.java  |   3 ++-
 .../store/file/predicate/LeafUnaryFunction.java    |   3 ++-
 .../table/store/file/predicate/LessOrEqual.java    |   3 ++-
 .../flink/table/store/file/predicate/LessThan.java |   3 ++-
 .../flink/table/store/file/predicate/NotEqual.java |   3 ++-
 .../flink/table/store/file/predicate/NotIn.java    |   3 ++-
 .../predicate/NullFalseLeafBinaryFunction.java     |   3 ++-
 .../flink/table/store/file/predicate/Or.java       |   2 +-
 .../table/store/file/predicate/Predicate.java      |   3 ++-
 .../table/store/file/predicate/StartsWith.java     |   3 ++-
 .../table/store => paimon}/format/FieldStats.java  |   2 +-
 .../format/FieldStatsCollector.java                |   2 +-
 .../table/store => paimon}/format/FileFormat.java  |   2 +-
 .../store => paimon}/format/FileFormatFactory.java |   2 +-
 .../format/FileStatsExtractor.java                 |   2 +-
 .../format/FormatReaderFactory.java                |   2 +-
 .../store => paimon}/format/FormatWriter.java      |   2 +-
 .../format/FormatWriterFactory.java                |   2 +-
 .../format/FileStatsExtractorTestBase.java         |   4 ++--
 .../org/apache/flink/table/store/CoreOptions.java  |   3 ++-
 .../table/store/file/AppendOnlyFileStore.java      |   3 ++-
 .../flink/table/store/file/KeyValueFileStore.java  |   3 ++-
 .../table/store/file/append/AppendOnlyWriter.java  |   3 ++-
 .../file/io/KeyValueDataFileRecordReader.java      |   3 ++-
 .../store/file/io/KeyValueDataFileWriter.java      |   6 +++---
 .../store/file/io/KeyValueFileReaderFactory.java   |   5 +++--
 .../store/file/io/KeyValueFileWriterFactory.java   |   7 ++++---
 .../store/file/io/RowDataFileRecordReader.java     |   3 ++-
 .../table/store/file/io/RowDataFileWriter.java     |   5 +++--
 .../store/file/io/RowDataRollingFileWriter.java    |   3 ++-
 .../table/store/file/io/SingleFileWriter.java      |   4 ++--
 .../file/io/StatsCollectingSingleFileWriter.java   |   9 +++++----
 .../table/store/file/manifest/ManifestFile.java    |   9 +++++----
 .../table/store/file/manifest/ManifestList.java    |   9 +++++----
 .../file/operation/AppendOnlyFileStoreRead.java    |   5 +++--
 .../file/operation/AppendOnlyFileStoreWrite.java   |   3 ++-
 .../file/operation/KeyValueFileStoreRead.java      |   3 ++-
 .../file/operation/KeyValueFileStoreWrite.java     |   2 +-
 .../table/store/file/stats/BinaryTableStats.java   |   3 ++-
 .../file/stats/FieldStatsArraySerializer.java      |   3 ++-
 .../table/store/file/utils/BulkFormatMapping.java  |   5 +++--
 .../flink/table/store/file/utils/FileUtils.java    |   3 ++-
 .../flink/table/store/table/system/FilesTable.java |   3 ++-
 .../format/FileFormatDiscover.java                 |   2 +-
 .../table/store => paimon}/format/FormatKey.java   |   2 +-
 .../flink/table/store/file/FileFormatTest.java     |   6 +++---
 .../store/file/append/AppendOnlyWriterTest.java    |   4 ++--
 .../store/file/format/FileFormatSuffixTest.java    |   2 +-
 .../file/format/FileStatsExtractingAvroFormat.java |   9 +++++----
 .../FileStatsExtractingAvroFormatFactory.java      |   5 +++--
 .../store/file/format/FlushingFileFormat.java      |   9 +++++----
 .../store/file/io/DataFileTestDataGenerator.java   |   3 ++-
 .../table/store/file/io/RollingFileWriterTest.java |   2 +-
 .../store/file/manifest/ManifestFileMetaTest.java  |   2 +-
 .../store/file/manifest/ManifestFileTest.java      |   2 +-
 .../store/file/manifest/ManifestListTest.java      |   2 +-
 .../file/manifest/ManifestTestDataGenerator.java   |   3 ++-
 .../table/store/file/mergetree/MergeTreeTest.java  |   2 +-
 .../store/file/predicate/PredicateBuilderTest.java |   2 +-
 .../table/store/file/predicate/PredicateTest.java  |   2 +-
 .../store/file/stats/BinaryTableStatsTest.java     |   2 +-
 .../file/stats/FieldStatsArraySerializerTest.java  |   2 +-
 .../store/file/stats/FieldStatsCollectorTest.java  |   4 ++--
 .../table/store/file/stats/StatsTestUtils.java     |   3 ++-
 .../store/file/stats/TestFileStatsExtractor.java   |  11 ++++++-----
 ...hangelogWithKeyTableColumnTypeFileMetaTest.java |   2 +-
 .../store/table/ColumnTypeFileMetaTestBase.java    |   2 +-
 .../table/store/table/FileMetaFilterTestBase.java  |   2 +-
 ...ore.org.apache.paimon.format.FileFormatFactory} |   0
 .../paimon/connector/ForceCompactionITCase.java    |   2 +-
 .../paimon/connector/PredicateConverterTest.java   |   2 +-
 .../source/TestChangelogDataReadWrite.java         |   3 ++-
 .../pom.xml                                        |   0
 .../format/avro/AbstractAvroBulkFormat.java        |   4 ++--
 .../apache/paimon}/format/avro/AvroBuilder.java    |   2 +-
 .../apache/paimon}/format/avro/AvroBulkWriter.java |   2 +-
 .../apache/paimon}/format/avro/AvroFileFormat.java |  10 +++++-----
 .../paimon}/format/avro/AvroFileFormatFactory.java |   7 ++++---
 .../paimon}/format/avro/AvroSchemaConverter.java   |   2 +-
 .../format/avro/AvroToRowDataConverters.java       |   4 ++--
 .../paimon}/format/avro/AvroWriterFactory.java     |   2 +-
 .../format/avro/CloseShieldOutputStream.java       |   2 +-
 .../apache/paimon}/format/avro/JodaConverter.java  |   2 +-
 .../format/avro/RowDataToAvroConverters.java       |   4 ++--
 .../format/avro/SeekableInputStreamWrapper.java    |   2 +-
 .../format/fs/HadoopReadOnlyFileSystem.java        |   2 +-
 .../apache/paimon}/format/orc/OrcFileFormat.java   |  22 ++++++++++-----------
 .../paimon}/format/orc/OrcFileFormatFactory.java   |   5 +++--
 .../paimon}/format/orc/OrcReaderFactory.java       |  12 +++++------
 .../paimon}/format/orc/OrcWriterFactory.java       |  12 +++++------
 .../orc/SerializableHadoopConfigWrapper.java       |   2 +-
 .../orc/ThreadLocalClassLoaderConfiguration.java   |   2 +-
 .../format/orc/filter/OrcFileStatsExtractor.java   |   8 ++++----
 .../paimon}/format/orc/filter/OrcFilters.java      |   2 +-
 .../orc/filter/OrcPredicateFunctionVisitor.java    |   2 +-
 .../format/orc/reader/AbstractOrcColumnVector.java |   2 +-
 .../format/orc/reader/OrcArrayColumnVector.java    |   2 +-
 .../format/orc/reader/OrcBytesColumnVector.java    |   2 +-
 .../format/orc/reader/OrcDecimalColumnVector.java  |   2 +-
 .../format/orc/reader/OrcDoubleColumnVector.java   |   2 +-
 .../orc/reader/OrcLegacyTimestampColumnVector.java |   2 +-
 .../format/orc/reader/OrcLongColumnVector.java     |   2 +-
 .../format/orc/reader/OrcMapColumnVector.java      |   2 +-
 .../format/orc/reader/OrcRowColumnVector.java      |   2 +-
 .../format/orc/reader/OrcSplitReaderUtil.java      |   2 +-
 .../orc/reader/OrcTimestampColumnVector.java       |   2 +-
 .../paimon}/format/orc/writer/OrcBulkWriter.java   |   4 ++--
 .../format/orc/writer/PhysicalWriterImpl.java      |   2 +-
 .../format/orc/writer/RowDataVectorizer.java       |   2 +-
 .../paimon}/format/orc/writer/Vectorizer.java      |   2 +-
 .../paimon}/format/parquet/ParquetFileFormat.java  |  15 +++++++-------
 .../format/parquet/ParquetFileFormatFactory.java   |   4 ++--
 .../format/parquet/ParquetFileStatsExtractor.java  |   8 ++++----
 .../paimon}/format/parquet/ParquetInputFile.java   |   2 +-
 .../paimon}/format/parquet/ParquetInputStream.java |   2 +-
 .../format/parquet/ParquetReaderFactory.java       |  14 ++++++-------
 .../format/parquet/ParquetSchemaConverter.java     |   2 +-
 .../apache/paimon}/format/parquet/ParquetUtil.java |   2 +-
 .../format/parquet/ParquetWriterFactory.java       |  12 +++++------
 .../parquet/reader/AbstractColumnReader.java       |   2 +-
 .../format/parquet/reader/ArrayColumnReader.java   |   2 +-
 .../parquet/reader/BaseVectorizedColumnReader.java |   2 +-
 .../format/parquet/reader/BooleanColumnReader.java |   2 +-
 .../format/parquet/reader/ByteColumnReader.java    |   2 +-
 .../format/parquet/reader/BytesColumnReader.java   |   2 +-
 .../format/parquet/reader/ColumnReader.java        |   2 +-
 .../format/parquet/reader/DoubleColumnReader.java  |   2 +-
 .../parquet/reader/FixedLenBytesColumnReader.java  |   4 ++--
 .../format/parquet/reader/FloatColumnReader.java   |   2 +-
 .../format/parquet/reader/IntColumnReader.java     |   2 +-
 .../format/parquet/reader/LongColumnReader.java    |   2 +-
 .../format/parquet/reader/MapColumnReader.java     |   2 +-
 .../parquet/reader/ParquetDataColumnReader.java    |   2 +-
 .../reader/ParquetDataColumnReaderFactory.java     |   2 +-
 .../parquet/reader/ParquetDecimalVector.java       |   4 ++--
 .../format/parquet/reader/ParquetDictionary.java   |   4 ++--
 .../parquet/reader/ParquetSplitReaderUtil.java     |   4 ++--
 .../parquet/reader/ParquetTimestampVector.java     |   2 +-
 .../format/parquet/reader/RowColumnReader.java     |   2 +-
 .../format/parquet/reader/RunLengthDecoder.java    |   2 +-
 .../format/parquet/reader/ShortColumnReader.java   |   2 +-
 .../parquet/reader/TimestampColumnReader.java      |   2 +-
 .../format/parquet/writer/ParquetBuilder.java      |   2 +-
 .../format/parquet/writer/ParquetBulkWriter.java   |   4 ++--
 .../parquet/writer/ParquetRowDataBuilder.java      |   4 ++--
 .../parquet/writer/ParquetRowDataWriter.java       |  12 +++++------
 .../writer/PositionOutputStreamAdapter.java        |   2 +-
 .../parquet/writer/RowDataParquetBuilder.java      |   2 +-
 .../format/parquet/writer/StreamOutputFile.java    |   2 +-
 .../src/main/resources/META-INF/NOTICE             |   0
 ...tore.org.apache.paimon.format.FileFormatFactory |   6 +++---
 .../apache/paimon}/format/BulkFileFormatTest.java  |   2 +-
 .../paimon}/format/avro/AvroBulkFormatTest.java    |   4 ++--
 .../format/avro/AvroBulkFormatTestUtils.java       |   2 +-
 .../paimon}/format/orc/OrcBulkWriterTestUtil.java  |   2 +-
 .../paimon}/format/orc/OrcFileFormatTest.java      |   4 ++--
 .../format/orc/OrcFileStatsExtractorTest.java      |   9 +++++----
 .../paimon}/format/orc/OrcFilterConverterTest.java |   6 +++---
 .../paimon}/format/orc/OrcReaderFactoryTest.java   |   4 ++--
 .../paimon}/format/orc/OrcSplitReaderUtilTest.java |   6 +++---
 .../paimon}/format/orc/OrcWriterFactoryTest.java   |   6 +++---
 .../java/org/apache/paimon}/format/orc/Record.java |   2 +-
 .../paimon}/format/orc/RecordVectorizer.java       |   5 ++---
 .../format/parquet/ParquetFileFormatTest.java      |   6 +++---
 .../parquet/ParquetFileStatsExtractorTest.java     |   9 +++++----
 .../format/parquet/ParquetReadWriteTest.java       |   6 +++---
 .../src/test/resources/test-data-decimal.orc       | Bin
 .../src/test/resources/test-data-flat.orc          | Bin
 pom.xml                                            |   2 +-
 178 files changed, 345 insertions(+), 296 deletions(-)

diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/And.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/And.java
index b0c4effc3..62fa35c0c 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/And.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/And.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
+import org.apache.paimon.format.FieldStats;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/CompoundPredicate.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/CompoundPredicate.java
index 2f3577baf..6f7ae73bd 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/CompoundPredicate.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/CompoundPredicate.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
+import org.apache.paimon.format.FieldStats;
 
 import java.io.Serializable;
 import java.util.List;
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Equal.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Equal.java
index ff6ce63f1..5fefdf3c6 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Equal.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Equal.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 import java.util.Optional;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterOrEqual.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterOrEqual.java
index bd8d14ebe..f011a3fa6 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterOrEqual.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterOrEqual.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 import java.util.Optional;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterThan.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterThan.java
index 594264819..bc785f690 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterThan.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterThan.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 import java.util.Optional;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/In.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/In.java
index 224dfdb46..98041a76a 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/In.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/In.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 import java.util.Optional;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNotNull.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNotNull.java
index 19cab378e..ff00f2aef 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNotNull.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNotNull.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 import java.util.Optional;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNull.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNull.java
index 5f819a596..6d3a82df4 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNull.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNull.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 import java.util.Optional;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafFunction.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafFunction.java
index 2b23fe50e..f15ca92f3 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafFunction.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafFunction.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.io.Serializable;
 import java.util.List;
 import java.util.Optional;
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java
index 6d179b537..da74f71dd 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java
@@ -21,11 +21,12 @@ package org.apache.flink.table.store.file.predicate;
 import org.apache.flink.table.store.data.serializer.InternalSerializers;
 import org.apache.flink.table.store.data.serializer.ListSerializer;
 import org.apache.flink.table.store.data.serializer.NullableSerializer;
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.io.DataInputViewStreamWrapper;
 import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.io.IOException;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafUnaryFunction.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafUnaryFunction.java
index f8c1623b5..557be4edd 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafUnaryFunction.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafUnaryFunction.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 
 /** Function to test a field. */
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessOrEqual.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessOrEqual.java
index 74394b789..078924c9c 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessOrEqual.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessOrEqual.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 import java.util.Optional;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessThan.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessThan.java
index c7246dc3d..5e007eaa9 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessThan.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessThan.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 import java.util.Optional;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotEqual.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotEqual.java
index a7684a0a7..fe26e693e 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotEqual.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotEqual.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 import java.util.Optional;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotIn.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotIn.java
index 5be1b4f11..0ab90b636 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotIn.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotIn.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 import java.util.Optional;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NullFalseLeafBinaryFunction.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NullFalseLeafBinaryFunction.java
index 24e2af3d6..97b6d9c42 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NullFalseLeafBinaryFunction.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NullFalseLeafBinaryFunction.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 
 /** Function to test a field with a literal. */
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Or.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Or.java
index 6995d8ea0..d553e9c25 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Or.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Or.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
+import org.apache.paimon.format.FieldStats;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java
index 0c201bdb4..5b6d07284 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java
@@ -19,7 +19,8 @@
 package org.apache.flink.table.store.file.predicate;
 
 import org.apache.flink.table.store.annotation.Experimental;
-import org.apache.flink.table.store.format.FieldStats;
+
+import org.apache.paimon.format.FieldStats;
 
 import java.io.Serializable;
 import java.util.Optional;
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java
index 695ae777b..476c0a77a 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java
+++ b/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java
@@ -19,9 +19,10 @@
 package org.apache.flink.table.store.file.predicate;
 
 import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.List;
 import java.util.Optional;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FieldStats.java b/flink-table-store-common/src/main/java/org/apache/paimon/format/FieldStats.java
similarity index 97%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FieldStats.java
rename to flink-table-store-common/src/main/java/org/apache/paimon/format/FieldStats.java
index 78c9a678d..8c2659700 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FieldStats.java
+++ b/flink-table-store-common/src/main/java/org/apache/paimon/format/FieldStats.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format;
+package org.apache.paimon.format;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FieldStatsCollector.java b/flink-table-store-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
similarity index 98%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FieldStatsCollector.java
rename to flink-table-store-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
index b19acf641..3c4e7b31e 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FieldStatsCollector.java
+++ b/flink-table-store-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format;
+package org.apache.paimon.format;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.serializer.InternalSerializers;
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FileFormat.java b/flink-table-store-common/src/main/java/org/apache/paimon/format/FileFormat.java
similarity index 99%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FileFormat.java
rename to flink-table-store-common/src/main/java/org/apache/paimon/format/FileFormat.java
index e0a8045d5..1a24acef7 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FileFormat.java
+++ b/flink-table-store-common/src/main/java/org/apache/paimon/format/FileFormat.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format;
+package org.apache.paimon.format;
 
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.options.ConfigOption;
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FileFormatFactory.java b/flink-table-store-common/src/main/java/org/apache/paimon/format/FileFormatFactory.java
similarity index 95%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FileFormatFactory.java
rename to flink-table-store-common/src/main/java/org/apache/paimon/format/FileFormatFactory.java
index 10bcf60f0..8046abb10 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FileFormatFactory.java
+++ b/flink-table-store-common/src/main/java/org/apache/paimon/format/FileFormatFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format;
+package org.apache.paimon.format;
 
 import org.apache.flink.table.store.options.Options;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FileStatsExtractor.java b/flink-table-store-common/src/main/java/org/apache/paimon/format/FileStatsExtractor.java
similarity index 96%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FileStatsExtractor.java
rename to flink-table-store-common/src/main/java/org/apache/paimon/format/FileStatsExtractor.java
index 8f22ed6f9..938c5826d 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FileStatsExtractor.java
+++ b/flink-table-store-common/src/main/java/org/apache/paimon/format/FileStatsExtractor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format;
+package org.apache.paimon.format;
 
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FormatReaderFactory.java b/flink-table-store-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
similarity index 96%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FormatReaderFactory.java
rename to flink-table-store-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
index 505060650..18beddb0d 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FormatReaderFactory.java
+++ b/flink-table-store-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format;
+package org.apache.paimon.format;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.fs.FileIO;
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FormatWriter.java b/flink-table-store-common/src/main/java/org/apache/paimon/format/FormatWriter.java
similarity index 98%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FormatWriter.java
rename to flink-table-store-common/src/main/java/org/apache/paimon/format/FormatWriter.java
index 846cf7949..054fd32c4 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FormatWriter.java
+++ b/flink-table-store-common/src/main/java/org/apache/paimon/format/FormatWriter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format;
+package org.apache.paimon.format;
 
 import org.apache.flink.table.store.data.InternalRow;
 
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FormatWriterFactory.java b/flink-table-store-common/src/main/java/org/apache/paimon/format/FormatWriterFactory.java
similarity index 97%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FormatWriterFactory.java
rename to flink-table-store-common/src/main/java/org/apache/paimon/format/FormatWriterFactory.java
index 95d05567e..23996a2d2 100644
--- a/flink-table-store-common/src/main/java/org/apache/flink/table/store/format/FormatWriterFactory.java
+++ b/flink-table-store-common/src/main/java/org/apache/paimon/format/FormatWriterFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format;
+package org.apache.paimon.format;
 
 import org.apache.flink.table.store.fs.PositionOutputStream;
 
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/format/FileStatsExtractorTestBase.java b/flink-table-store-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
similarity index 98%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/format/FileStatsExtractorTestBase.java
rename to flink-table-store-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
index ceec75952..2a7cac4d6 100644
--- a/flink-table-store-common/src/test/java/org/apache/flink/table/store/format/FileStatsExtractorTestBase.java
+++ b/flink-table-store-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format;
+package org.apache.paimon.format;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.Decimal;
@@ -58,7 +58,7 @@ import java.util.concurrent.ThreadLocalRandom;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link org.apache.flink.table.store.format.FileStatsExtractor}. */
+/** Tests for {@link org.apache.paimon.format.FileStatsExtractor}. */
 public abstract class FileStatsExtractorTestBase {
 
     @TempDir java.nio.file.Path tempDir;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
index 6cb9ebe17..bfe7e7363 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
@@ -21,7 +21,6 @@ package org.apache.flink.table.store;
 import org.apache.flink.table.store.annotation.Documentation.ExcludeFromDocumentation;
 import org.apache.flink.table.store.annotation.Documentation.Immutable;
 import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.options.ConfigOption;
 import org.apache.flink.table.store.options.MemorySize;
@@ -30,6 +29,8 @@ import org.apache.flink.table.store.options.description.DescribedEnum;
 import org.apache.flink.table.store.options.description.Description;
 import org.apache.flink.table.store.options.description.InlineElement;
 
+import org.apache.paimon.format.FileFormat;
+
 import java.io.Serializable;
 import java.lang.reflect.Field;
 import java.time.Duration;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
index 77b5361ee..d27cd241c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
@@ -24,10 +24,11 @@ import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreRead;
 import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreScan;
 import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreWrite;
 import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.format.FileFormatDiscover;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FileFormatDiscover;
+
 import java.util.Comparator;
 
 /** {@link FileStore} for reading and writing {@link InternalRow}. */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
index 9956a40ba..2e36b01a3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
@@ -27,10 +27,11 @@ import org.apache.flink.table.store.file.operation.KeyValueFileStoreWrite;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.KeyComparatorSupplier;
-import org.apache.flink.table.store.format.FileFormatDiscover;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FileFormatDiscover;
+
 import java.util.Comparator;
 import java.util.function.Supplier;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
index 91005835a..5e5ccc6f6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
@@ -28,13 +28,14 @@ import org.apache.flink.table.store.file.io.NewFilesIncrement;
 import org.apache.flink.table.store.file.io.RowDataRollingFileWriter;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.format.FileFormat;
+
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
index 19e79bcfe..3ce46bc39 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
@@ -23,12 +23,13 @@ import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.KeyValueSerializer;
 import org.apache.flink.table.store.file.casting.CastFieldGetter;
 import org.apache.flink.table.store.file.utils.FileUtils;
-import org.apache.flink.table.store.format.FormatReaderFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FormatReaderFactory;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
index 670aacb7a..ecca7e9c3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
@@ -24,13 +24,13 @@ import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.format.FieldStats;
-import org.apache.flink.table.store.format.FileStatsExtractor;
-import org.apache.flink.table.store.format.FormatWriterFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.format.FileStatsExtractor;
+import org.apache.paimon.format.FormatWriterFactory;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
index 0478cca96..aba295763 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
@@ -26,13 +26,14 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.BulkFormatMapping;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.format.FileFormatDiscover;
-import org.apache.flink.table.store.format.FormatKey;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Projection;
 
+import org.apache.paimon.format.FileFormatDiscover;
+import org.apache.paimon.format.FormatKey;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
index df78e00a5..fb5de46a7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
@@ -23,13 +23,14 @@ import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.KeyValueSerializer;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FileStatsExtractor;
-import org.apache.flink.table.store.format.FormatWriterFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FileStatsExtractor;
+import org.apache.paimon.format.FormatWriterFactory;
+
 import javax.annotation.Nullable;
 
 import java.util.Map;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
index c2ab0000d..6829c5a81 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
@@ -21,11 +21,12 @@ package org.apache.flink.table.store.file.io;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.casting.CastFieldGetter;
 import org.apache.flink.table.store.file.utils.FileUtils;
-import org.apache.flink.table.store.format.FormatReaderFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 
+import org.apache.paimon.format.FormatReaderFactory;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
index 069b7b166..f016628b6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
@@ -22,13 +22,14 @@ package org.apache.flink.table.store.file.io;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.format.FileStatsExtractor;
-import org.apache.flink.table.store.format.FormatWriterFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
 
+import org.apache.paimon.format.FileStatsExtractor;
+import org.apache.paimon.format.FormatWriterFactory;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
index e8d6325f8..e615611b5 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
@@ -20,11 +20,12 @@
 package org.apache.flink.table.store.file.io;
 
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
 
+import org.apache.paimon.format.FileFormat;
+
 /** {@link RollingFileWriter} for data files containing {@link InternalRow}. */
 public class RowDataRollingFileWriter extends RollingFileWriter<InternalRow, DataFileMeta> {
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
index a85fce4d9..f2cdaa593 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
@@ -20,13 +20,13 @@
 package org.apache.flink.table.store.file.io;
 
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FormatWriter;
-import org.apache.flink.table.store.format.FormatWriterFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.PositionOutputStream;
 import org.apache.flink.table.store.utils.IOUtils;
 
+import org.apache.paimon.format.FormatWriter;
+import org.apache.paimon.format.FormatWriterFactory;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
index 0a88e5979..11f2e25dd 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
@@ -20,15 +20,16 @@
 package org.apache.flink.table.store.file.io;
 
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FieldStats;
-import org.apache.flink.table.store.format.FieldStatsCollector;
-import org.apache.flink.table.store.format.FileStatsExtractor;
-import org.apache.flink.table.store.format.FormatWriterFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.format.FieldStatsCollector;
+import org.apache.paimon.format.FileStatsExtractor;
+import org.apache.paimon.format.FormatWriterFactory;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
index daf2d50d0..3fc8103e7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
@@ -26,14 +26,15 @@ import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.flink.table.store.file.utils.VersionedObjectSerializer;
-import org.apache.flink.table.store.format.FieldStatsCollector;
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FormatReaderFactory;
-import org.apache.flink.table.store.format.FormatWriterFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FieldStatsCollector;
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FormatReaderFactory;
+import org.apache.paimon.format.FormatWriterFactory;
+
 import java.io.IOException;
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java
index 8efa7cb41..4ccf895c6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java
@@ -21,15 +21,16 @@ package org.apache.flink.table.store.file.manifest;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.flink.table.store.file.utils.VersionedObjectSerializer;
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FormatReaderFactory;
-import org.apache.flink.table.store.format.FormatWriter;
-import org.apache.flink.table.store.format.FormatWriterFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.PositionOutputStream;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FormatReaderFactory;
+import org.apache.paimon.format.FormatWriter;
+import org.apache.paimon.format.FormatWriterFactory;
+
 import java.io.IOException;
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
index bf5a589c1..012bbfe1c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
@@ -30,14 +30,15 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.BulkFormatMapping;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.format.FileFormatDiscover;
-import org.apache.flink.table.store.format.FormatKey;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Projection;
 
+import org.apache.paimon.format.FileFormatDiscover;
+import org.apache.paimon.format.FormatKey;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
index e46a4e8ae..97f19177f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
@@ -32,13 +32,14 @@ import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.RecordWriter;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
 
+import org.apache.paimon.format.FileFormat;
+
 import javax.annotation.Nullable;
 
 import java.util.Collections;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
index 4586e8167..1fe564220 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
@@ -35,13 +35,14 @@ import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.format.FileFormatDiscover;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.ProjectedRow;
 
+import org.apache.paimon.format.FileFormatDiscover;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
index cd5822a4e..a5838ba5e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
@@ -45,11 +45,11 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.format.FileFormatDiscover;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.lookup.hash.HashLookupStoreFactory;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FileFormatDiscover;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java
index b4586e696..e01cd8dcc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java
@@ -23,7 +23,8 @@ import org.apache.flink.table.store.data.GenericArray;
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.data.InternalArray;
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FieldStats;
+
+import org.apache.paimon.format.FieldStats;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java
index 62578f316..ca5e58a5f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java
@@ -22,7 +22,6 @@ import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.casting.CastExecutor;
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.DataField;
@@ -30,6 +29,8 @@ import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.RowDataUtils;
 
+import org.apache.paimon.format.FieldStats;
+
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java
index 98de6a2b8..848fb6a1d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java
@@ -25,12 +25,13 @@ import org.apache.flink.table.store.file.schema.IndexCastMapping;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaEvolutionUtil;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.format.FileFormatDiscover;
-import org.apache.flink.table.store.format.FormatReaderFactory;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Projection;
 
+import org.apache.paimon.format.FileFormatDiscover;
+import org.apache.paimon.format.FormatReaderFactory;
+
 import javax.annotation.Nullable;
 
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
index 432987868..8650d3020 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
@@ -19,12 +19,13 @@
 package org.apache.flink.table.store.file.utils;
 
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FormatReaderFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.FileStatus;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 
+import org.apache.paimon.format.FormatReaderFactory;
+
 import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java
index d6039a6ea..d4109c852 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java
@@ -31,7 +31,6 @@ import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.flink.table.store.file.stats.FieldStatsConverters;
 import org.apache.flink.table.store.file.utils.IteratorRecordReader;
 import org.apache.flink.table.store.file.utils.SerializationUtils;
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.ReadonlyTable;
@@ -52,6 +51,8 @@ import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
+import org.apache.paimon.format.FieldStats;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/format/FileFormatDiscover.java b/flink-table-store-core/src/main/java/org/apache/paimon/format/FileFormatDiscover.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/format/FileFormatDiscover.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/format/FileFormatDiscover.java
index 8a98573b6..1900e1f1b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/format/FileFormatDiscover.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/format/FileFormatDiscover.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format;
+package org.apache.paimon.format;
 
 import org.apache.flink.table.store.CoreOptions;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/format/FormatKey.java b/flink-table-store-core/src/main/java/org/apache/paimon/format/FormatKey.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/format/FormatKey.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/format/FormatKey.java
index 42f7799c6..cbbbf7bab 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/format/FormatKey.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/format/FormatKey.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format;
+package org.apache.paimon.format;
 
 import java.util.Objects;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
index 27c0734d2..52fa7abf2 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
@@ -21,9 +21,6 @@ package org.apache.flink.table.store.file;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FormatWriter;
-import org.apache.flink.table.store.format.FormatWriterFactory;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.PositionOutputStream;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
@@ -32,6 +29,9 @@ import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FormatWriter;
+import org.apache.paimon.format.FormatWriterFactory;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
index fcd1ecdb2..61074926d 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
@@ -30,8 +30,6 @@ import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.ExecutorThreadFactory;
 import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.format.FieldStats;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.options.Options;
@@ -41,6 +39,8 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 import org.apache.flink.table.store.utils.Pair;
 
+import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
index 9024ac42e..1675564b0 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
@@ -27,7 +27,6 @@ import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.flink.table.store.file.io.KeyValueFileReadWriteTest;
 import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.options.Options;
@@ -36,6 +35,7 @@ import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java
index c9f46517b..5f6429918 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java
@@ -20,13 +20,14 @@ package org.apache.flink.table.store.file.format;
 
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.stats.TestFileStatsExtractor;
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FileStatsExtractor;
-import org.apache.flink.table.store.format.FormatReaderFactory;
-import org.apache.flink.table.store.format.FormatWriterFactory;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FileStatsExtractor;
+import org.apache.paimon.format.FormatReaderFactory;
+import org.apache.paimon.format.FormatWriterFactory;
+
 import javax.annotation.Nullable;
 
 import java.util.List;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormatFactory.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormatFactory.java
index e955ba0a0..db163a2de 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormatFactory.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormatFactory.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.format;
 
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FileFormatFactory;
 import org.apache.flink.table.store.options.Options;
 
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FileFormatFactory;
+
 /** Factory to create {@link FileStatsExtractingAvroFormat}. */
 public class FileStatsExtractingAvroFormatFactory implements FileFormatFactory {
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
index 0cf29391c..460edb144 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
@@ -20,13 +20,14 @@ package org.apache.flink.table.store.file.format;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FormatReaderFactory;
-import org.apache.flink.table.store.format.FormatWriter;
-import org.apache.flink.table.store.format.FormatWriterFactory;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FormatReaderFactory;
+import org.apache.paimon.format.FormatWriter;
+import org.apache.paimon.format.FormatWriterFactory;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestDataGenerator.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestDataGenerator.java
index 1f796e1ce..d049a5255 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestDataGenerator.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestDataGenerator.java
@@ -22,7 +22,8 @@ import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.TestKeyValueGenerator;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.format.FieldStatsCollector;
+
+import org.apache.paimon.format.FieldStatsCollector;
 
 import java.util.ArrayList;
 import java.util.HashMap;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
index 9c4529afe..8b11236a0 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
@@ -21,7 +21,6 @@ package org.apache.flink.table.store.file.io;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.options.Options;
@@ -30,6 +29,7 @@ import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
 
+import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
index 287d6c78a..ae5ef1de5 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
@@ -27,7 +27,6 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.stats.StatsTestUtils;
 import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.FileIOFinder;
 import org.apache.flink.table.store.fs.Path;
@@ -36,6 +35,7 @@ import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileTest.java
index 601bb0d6c..058f7eabf 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileTest.java
@@ -23,13 +23,13 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.stats.StatsTestUtils;
 import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.FileIOFinder;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.options.Options;
 
+import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestListTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestListTest.java
index 79835c764..7558f37b3 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestListTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestListTest.java
@@ -22,12 +22,12 @@ import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.TestKeyValueGenerator;
 import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.FileIOFinder;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.options.Options;
 
+import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java
index 439abf9ea..857b98449 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java
@@ -23,9 +23,10 @@ import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.TestKeyValueGenerator;
 import org.apache.flink.table.store.file.io.DataFileTestDataGenerator;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.format.FieldStatsCollector;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.format.FieldStatsCollector;
+
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.LinkedList;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
index 3dcb34532..faa262b11 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
@@ -43,7 +43,6 @@ import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.FileStatus;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
@@ -57,6 +56,7 @@ import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateBuilderTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateBuilderTest.java
index 7ed72cd1c..5f7634c29 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateBuilderTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateBuilderTest.java
@@ -18,10 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateTest.java
index 0bd84f6c1..fa90d9624 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateTest.java
@@ -18,10 +18,10 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java
index 43303c9f8..924c64d97 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java
@@ -21,10 +21,10 @@ package org.apache.flink.table.store.file.stats;
 import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.data.BinaryRowWriter;
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java
index 957ede012..f94d710f1 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java
@@ -22,10 +22,10 @@ import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.casting.CastExecutor;
 import org.apache.flink.table.store.file.schema.SchemaEvolutionUtil;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.IntType;
 
+import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java
index 1fe39dae5..4601a7525 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java
@@ -21,13 +21,13 @@ package org.apache.flink.table.store.file.stats;
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.GenericArray;
 import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.format.FieldStats;
-import org.apache.flink.table.store.format.FieldStatsCollector;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.format.FieldStatsCollector;
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/StatsTestUtils.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/StatsTestUtils.java
index 45510bb7d..39f29b851 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/StatsTestUtils.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/StatsTestUtils.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.stats;
 
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FieldStats;
+
 import java.util.ArrayList;
 import java.util.List;
 import java.util.function.Function;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
index 9521597df..d793b8ee2 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
@@ -21,15 +21,16 @@ package org.apache.flink.table.store.file.stats;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.flink.table.store.file.utils.ObjectSerializer;
-import org.apache.flink.table.store.format.FieldStats;
-import org.apache.flink.table.store.format.FieldStatsCollector;
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FileStatsExtractor;
-import org.apache.flink.table.store.format.FormatReaderFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.format.FieldStatsCollector;
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FileStatsExtractor;
+import org.apache.paimon.format.FormatReaderFactory;
+
 import java.io.IOException;
 import java.util.List;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
index 5efc53d9e..94427d158 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
@@ -27,9 +27,9 @@ import org.apache.flink.table.store.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.table.source.DataSplit;
 
+import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java
index f040e6ccc..d0993eed0 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java
@@ -25,9 +25,9 @@ import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.table.source.DataSplit;
 
+import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileMetaFilterTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileMetaFilterTestBase.java
index f823669c5..eb79076c1 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileMetaFilterTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileMetaFilterTestBase.java
@@ -22,9 +22,9 @@ import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.store.table.source.DataSplit;
 
+import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 
 import java.util.HashSet;
diff --git a/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.format.FileFormatFactory b/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
similarity index 100%
rename from flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.format.FileFormatFactory
rename to flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
index 38c5c13b9..20bfc525c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
@@ -24,13 +24,13 @@ import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
 import org.apache.flink.table.store.file.manifest.ManifestList;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
index 0e35def13..3688d1770 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
@@ -28,7 +28,6 @@ import org.apache.flink.table.functions.FunctionDefinition;
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.format.FieldStats;
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.logical.BigIntType;
 import org.apache.flink.table.types.logical.DoubleType;
@@ -37,6 +36,7 @@ import org.apache.flink.table.types.logical.RowType;
 import org.apache.flink.table.types.logical.VarCharType;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.Arguments;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
index df4e01ab3..4d6043e57 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
@@ -37,7 +37,6 @@ import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.RecordWriter;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.format.FileFormat;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.options.Options;
@@ -52,6 +51,8 @@ import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.FileFormat;
+
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Comparator;
diff --git a/flink-table-store-format/pom.xml b/paimon-format/pom.xml
similarity index 100%
rename from flink-table-store-format/pom.xml
rename to paimon-format/pom.xml
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AbstractAvroBulkFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AbstractAvroBulkFormat.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AbstractAvroBulkFormat.java
rename to paimon-format/src/main/java/org/apache/paimon/format/avro/AbstractAvroBulkFormat.java
index 845390c00..ec245fb1a 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AbstractAvroBulkFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AbstractAvroBulkFormat.java
@@ -16,10 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FormatReaderFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
@@ -32,6 +31,7 @@ import org.apache.avro.file.DataFileReader;
 import org.apache.avro.file.SeekableInput;
 import org.apache.avro.generic.GenericDatumReader;
 import org.apache.avro.io.DatumReader;
+import org.apache.paimon.format.FormatReaderFactory;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroBuilder.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroBuilder.java
similarity index 96%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroBuilder.java
rename to paimon-format/src/main/java/org/apache/paimon/format/avro/AvroBuilder.java
index 9e1a18b33..6bc40cc37 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroBuilder.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import org.apache.avro.file.DataFileWriter;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroBulkWriter.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroBulkWriter.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroBulkWriter.java
rename to paimon-format/src/main/java/org/apache/paimon/format/avro/AvroBulkWriter.java
index 9e4b73c68..946a71f91 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroBulkWriter.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroBulkWriter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import org.apache.avro.file.DataFileWriter;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
similarity index 95%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroFileFormat.java
rename to paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
index 41acd9c0c..5af2cb8b4 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
@@ -16,15 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FormatReaderFactory;
-import org.apache.flink.table.store.format.FormatWriter;
-import org.apache.flink.table.store.format.FormatWriterFactory;
 import org.apache.flink.table.store.fs.PositionOutputStream;
 import org.apache.flink.table.store.options.ConfigOption;
 import org.apache.flink.table.store.options.ConfigOptions;
@@ -40,6 +36,10 @@ import org.apache.avro.generic.GenericData;
 import org.apache.avro.generic.GenericDatumWriter;
 import org.apache.avro.generic.GenericRecord;
 import org.apache.avro.io.DatumWriter;
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FormatReaderFactory;
+import org.apache.paimon.format.FormatWriter;
+import org.apache.paimon.format.FormatWriterFactory;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroFileFormatFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormatFactory.java
similarity index 87%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroFileFormatFactory.java
rename to paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormatFactory.java
index fb190a92e..c9b569ad4 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroFileFormatFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormatFactory.java
@@ -16,12 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FileFormatFactory;
 import org.apache.flink.table.store.options.Options;
 
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FileFormatFactory;
+
 /** Factory to create {@link AvroFileFormat}. */
 public class AvroFileFormatFactory implements FileFormatFactory {
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroSchemaConverter.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroSchemaConverter.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroSchemaConverter.java
rename to paimon-format/src/main/java/org/apache/paimon/format/avro/AvroSchemaConverter.java
index c8f36860e..3822e902e 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroSchemaConverter.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroSchemaConverter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.DataType;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroToRowDataConverters.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroToRowDataConverters.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroToRowDataConverters.java
rename to paimon-format/src/main/java/org/apache/paimon/format/avro/AvroToRowDataConverters.java
index bb6bc50e8..3e1b18c6a 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroToRowDataConverters.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroToRowDataConverters.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.Decimal;
@@ -47,7 +47,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.flink.table.store.format.avro.AvroSchemaConverter.extractValueTypeToAvroMap;
+import static org.apache.paimon.format.avro.AvroSchemaConverter.extractValueTypeToAvroMap;
 
 /** Tool class used to convert from Avro {@link GenericRecord} to {@link InternalRow}. * */
 public class AvroToRowDataConverters {
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroWriterFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroWriterFactory.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroWriterFactory.java
rename to paimon-format/src/main/java/org/apache/paimon/format/avro/AvroWriterFactory.java
index 6d9255d1d..b3d2e020c 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/AvroWriterFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroWriterFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import org.apache.flink.table.store.fs.PositionOutputStream;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/CloseShieldOutputStream.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/CloseShieldOutputStream.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/CloseShieldOutputStream.java
rename to paimon-format/src/main/java/org/apache/paimon/format/avro/CloseShieldOutputStream.java
index d29970f2f..684667755 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/CloseShieldOutputStream.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/CloseShieldOutputStream.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import java.io.IOException;
 import java.io.OutputStream;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/JodaConverter.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/JodaConverter.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/JodaConverter.java
rename to paimon-format/src/main/java/org/apache/paimon/format/avro/JodaConverter.java
index 4a333d52e..f1e168109 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/JodaConverter.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/JodaConverter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import org.joda.time.DateTime;
 import org.joda.time.DateTimeFieldType;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/RowDataToAvroConverters.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/RowDataToAvroConverters.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/RowDataToAvroConverters.java
rename to paimon-format/src/main/java/org/apache/paimon/format/avro/RowDataToAvroConverters.java
index edec5f145..d163c558b 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/RowDataToAvroConverters.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/RowDataToAvroConverters.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import org.apache.flink.table.store.data.Decimal;
 import org.apache.flink.table.store.data.InternalArray;
@@ -40,7 +40,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.flink.table.store.format.avro.AvroSchemaConverter.extractValueTypeToAvroMap;
+import static org.apache.paimon.format.avro.AvroSchemaConverter.extractValueTypeToAvroMap;
 
 /** Tool class used to convert from {@link InternalRow} to Avro {@link GenericRecord}. */
 public class RowDataToAvroConverters {
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/SeekableInputStreamWrapper.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/SeekableInputStreamWrapper.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/SeekableInputStreamWrapper.java
rename to paimon-format/src/main/java/org/apache/paimon/format/avro/SeekableInputStreamWrapper.java
index 9122bbc07..ddc23db31 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/avro/SeekableInputStreamWrapper.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/SeekableInputStreamWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import org.apache.flink.table.store.fs.SeekableInputStream;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/fs/HadoopReadOnlyFileSystem.java b/paimon-format/src/main/java/org/apache/paimon/format/fs/HadoopReadOnlyFileSystem.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/fs/HadoopReadOnlyFileSystem.java
rename to paimon-format/src/main/java/org/apache/paimon/format/fs/HadoopReadOnlyFileSystem.java
index 14aadb53f..d7025475c 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/fs/HadoopReadOnlyFileSystem.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/fs/HadoopReadOnlyFileSystem.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.fs;
+package org.apache.paimon.format.fs;
 
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.utils.IOUtils;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
similarity index 90%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcFileFormat.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
index 13c3dac64..3b028d67c 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
@@ -16,21 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
 import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FileStatsExtractor;
-import org.apache.flink.table.store.format.FormatReaderFactory;
-import org.apache.flink.table.store.format.FormatWriterFactory;
-import org.apache.flink.table.store.format.orc.filter.OrcFileStatsExtractor;
-import org.apache.flink.table.store.format.orc.filter.OrcFilters;
-import org.apache.flink.table.store.format.orc.filter.OrcPredicateFunctionVisitor;
-import org.apache.flink.table.store.format.orc.reader.OrcSplitReaderUtil;
-import org.apache.flink.table.store.format.orc.writer.RowDataVectorizer;
-import org.apache.flink.table.store.format.orc.writer.Vectorizer;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.DataField;
@@ -44,6 +34,16 @@ import org.apache.flink.table.store.utils.Projection;
 
 import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch;
 import org.apache.orc.TypeDescription;
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FileStatsExtractor;
+import org.apache.paimon.format.FormatReaderFactory;
+import org.apache.paimon.format.FormatWriterFactory;
+import org.apache.paimon.format.orc.filter.OrcFileStatsExtractor;
+import org.apache.paimon.format.orc.filter.OrcFilters;
+import org.apache.paimon.format.orc.filter.OrcPredicateFunctionVisitor;
+import org.apache.paimon.format.orc.reader.OrcSplitReaderUtil;
+import org.apache.paimon.format.orc.writer.RowDataVectorizer;
+import org.apache.paimon.format.orc.writer.Vectorizer;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcFileFormatFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormatFactory.java
similarity index 94%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcFileFormatFactory.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormatFactory.java
index e16b03158..22ca20a99 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcFileFormatFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormatFactory.java
@@ -16,11 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.format.FileFormatFactory;
 import org.apache.flink.table.store.options.Options;
 
+import org.apache.paimon.format.FileFormatFactory;
+
 import java.util.Properties;
 
 /** Factory to create {@link OrcFileFormat}. */
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcReaderFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcReaderFactory.java
similarity index 96%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcReaderFactory.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/OrcReaderFactory.java
index 51c3b045a..da8772ca0 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcReaderFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcReaderFactory.java
@@ -16,16 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.columnar.ColumnVector;
 import org.apache.flink.table.store.data.columnar.ColumnarRow;
 import org.apache.flink.table.store.data.columnar.ColumnarRowIterator;
 import org.apache.flink.table.store.data.columnar.VectorizedColumnBatch;
-import org.apache.flink.table.store.format.FormatReaderFactory;
-import org.apache.flink.table.store.format.fs.HadoopReadOnlyFileSystem;
-import org.apache.flink.table.store.format.orc.filter.OrcFilters;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader.RecordIterator;
@@ -42,15 +39,18 @@ import org.apache.orc.OrcFile;
 import org.apache.orc.RecordReader;
 import org.apache.orc.StripeInformation;
 import org.apache.orc.TypeDescription;
+import org.apache.paimon.format.FormatReaderFactory;
+import org.apache.paimon.format.fs.HadoopReadOnlyFileSystem;
+import org.apache.paimon.format.orc.filter.OrcFilters;
 
 import javax.annotation.Nullable;
 
 import java.io.IOException;
 import java.util.List;
 
-import static org.apache.flink.table.store.format.orc.reader.AbstractOrcColumnVector.createFlinkVector;
-import static org.apache.flink.table.store.format.orc.reader.OrcSplitReaderUtil.toOrcType;
 import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.format.orc.reader.AbstractOrcColumnVector.createFlinkVector;
+import static org.apache.paimon.format.orc.reader.OrcSplitReaderUtil.toOrcType;
 
 /** An ORC reader that produces a stream of {@link ColumnarRow} records. */
 public class OrcReaderFactory implements FormatReaderFactory {
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcWriterFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcWriterFactory.java
similarity index 92%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcWriterFactory.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/OrcWriterFactory.java
index 946da4651..947667795 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/OrcWriterFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcWriterFactory.java
@@ -16,15 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
 import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FormatWriter;
-import org.apache.flink.table.store.format.FormatWriterFactory;
-import org.apache.flink.table.store.format.orc.writer.OrcBulkWriter;
-import org.apache.flink.table.store.format.orc.writer.PhysicalWriterImpl;
-import org.apache.flink.table.store.format.orc.writer.Vectorizer;
 import org.apache.flink.table.store.fs.PositionOutputStream;
 
 import org.apache.hadoop.conf.Configuration;
@@ -32,6 +27,11 @@ import org.apache.hadoop.fs.Path;
 import org.apache.orc.OrcConf;
 import org.apache.orc.OrcFile;
 import org.apache.orc.impl.WriterImpl;
+import org.apache.paimon.format.FormatWriter;
+import org.apache.paimon.format.FormatWriterFactory;
+import org.apache.paimon.format.orc.writer.OrcBulkWriter;
+import org.apache.paimon.format.orc.writer.PhysicalWriterImpl;
+import org.apache.paimon.format.orc.writer.Vectorizer;
 
 import java.io.IOException;
 import java.util.HashMap;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/SerializableHadoopConfigWrapper.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/SerializableHadoopConfigWrapper.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/SerializableHadoopConfigWrapper.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/SerializableHadoopConfigWrapper.java
index 82c061d41..4b6a279f3 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/SerializableHadoopConfigWrapper.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/SerializableHadoopConfigWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
 import org.apache.flink.table.store.io.DataInputDeserializer;
 import org.apache.flink.table.store.io.DataOutputSerializer;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/ThreadLocalClassLoaderConfiguration.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/ThreadLocalClassLoaderConfiguration.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/ThreadLocalClassLoaderConfiguration.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/ThreadLocalClassLoaderConfiguration.java
index 63126b2a8..d03845896 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/ThreadLocalClassLoaderConfiguration.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/ThreadLocalClassLoaderConfiguration.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
 import org.apache.hadoop.conf.Configuration;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/filter/OrcFileStatsExtractor.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcFileStatsExtractor.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/filter/OrcFileStatsExtractor.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcFileStatsExtractor.java
index 1b9c025e2..d5d873ae3 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/filter/OrcFileStatsExtractor.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcFileStatsExtractor.java
@@ -16,14 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.filter;
+package org.apache.paimon.format.orc.filter;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.Decimal;
 import org.apache.flink.table.store.data.Timestamp;
-import org.apache.flink.table.store.format.FieldStats;
-import org.apache.flink.table.store.format.FileStatsExtractor;
-import org.apache.flink.table.store.format.orc.OrcReaderFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.DataField;
@@ -43,6 +40,9 @@ import org.apache.orc.Reader;
 import org.apache.orc.StringColumnStatistics;
 import org.apache.orc.TimestampColumnStatistics;
 import org.apache.orc.TypeDescription;
+import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.format.FileStatsExtractor;
+import org.apache.paimon.format.orc.OrcReaderFactory;
 
 import java.io.IOException;
 import java.sql.Date;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/filter/OrcFilters.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcFilters.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/filter/OrcFilters.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcFilters.java
index b349395d1..4227137ba 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/filter/OrcFilters.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcFilters.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.filter;
+package org.apache.paimon.format.orc.filter;
 
 import org.apache.hadoop.hive.common.type.HiveDecimal;
 import org.apache.hadoop.hive.ql.io.sarg.PredicateLeaf;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/filter/OrcPredicateFunctionVisitor.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/filter/OrcPredicateFunctionVisitor.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
index 6fb58aaf2..04836bd5b 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/filter/OrcPredicateFunctionVisitor.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.filter;
+package org.apache.paimon.format.orc.filter;
 
 import org.apache.flink.table.store.data.Decimal;
 import org.apache.flink.table.store.data.Timestamp;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/AbstractOrcColumnVector.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/AbstractOrcColumnVector.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/AbstractOrcColumnVector.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/reader/AbstractOrcColumnVector.java
index ec50e15fe..a0ed615d2 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/AbstractOrcColumnVector.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/AbstractOrcColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.reader;
+package org.apache.paimon.format.orc.reader;
 
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.DataType;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcArrayColumnVector.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcArrayColumnVector.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcArrayColumnVector.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcArrayColumnVector.java
index ef2590e8e..1152a1b4e 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcArrayColumnVector.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcArrayColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.reader;
+package org.apache.paimon.format.orc.reader;
 
 import org.apache.flink.table.store.data.InternalArray;
 import org.apache.flink.table.store.data.columnar.ColumnVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcBytesColumnVector.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcBytesColumnVector.java
similarity index 96%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcBytesColumnVector.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcBytesColumnVector.java
index a2ef3ecf6..9cd0f8481 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcBytesColumnVector.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcBytesColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.reader;
+package org.apache.paimon.format.orc.reader;
 
 import org.apache.hadoop.hive.ql.exec.vector.BytesColumnVector;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcDecimalColumnVector.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcDecimalColumnVector.java
similarity index 96%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcDecimalColumnVector.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcDecimalColumnVector.java
index 54ac9cacf..18cefd93c 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcDecimalColumnVector.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcDecimalColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.reader;
+package org.apache.paimon.format.orc.reader;
 
 import org.apache.flink.table.store.data.Decimal;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcDoubleColumnVector.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcDoubleColumnVector.java
similarity index 96%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcDoubleColumnVector.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcDoubleColumnVector.java
index 69c335b6a..b9b26fbcb 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcDoubleColumnVector.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcDoubleColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.reader;
+package org.apache.paimon.format.orc.reader;
 
 import org.apache.hadoop.hive.ql.exec.vector.DoubleColumnVector;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcLegacyTimestampColumnVector.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcLegacyTimestampColumnVector.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcLegacyTimestampColumnVector.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcLegacyTimestampColumnVector.java
index 0a96f2fd3..1a57d2bf2 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcLegacyTimestampColumnVector.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcLegacyTimestampColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.reader;
+package org.apache.paimon.format.orc.reader;
 
 import org.apache.flink.table.store.data.Timestamp;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcLongColumnVector.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcLongColumnVector.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcLongColumnVector.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcLongColumnVector.java
index 27b9662f1..1926366dd 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcLongColumnVector.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcLongColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.reader;
+package org.apache.paimon.format.orc.reader;
 
 import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcMapColumnVector.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcMapColumnVector.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcMapColumnVector.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcMapColumnVector.java
index 304b1add1..b8613dd58 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcMapColumnVector.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcMapColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.reader;
+package org.apache.paimon.format.orc.reader;
 
 import org.apache.flink.table.store.data.InternalMap;
 import org.apache.flink.table.store.data.columnar.ColumnVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcRowColumnVector.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcRowColumnVector.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcRowColumnVector.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcRowColumnVector.java
index 7f44ac57d..f58945135 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcRowColumnVector.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcRowColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.reader;
+package org.apache.paimon.format.orc.reader;
 
 import org.apache.flink.table.store.data.columnar.ColumnVector;
 import org.apache.flink.table.store.data.columnar.ColumnarRow;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcSplitReaderUtil.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcSplitReaderUtil.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcSplitReaderUtil.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcSplitReaderUtil.java
index d998b97d9..2a9910d2a 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcSplitReaderUtil.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcSplitReaderUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.reader;
+package org.apache.paimon.format.orc.reader;
 
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.CharType;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcTimestampColumnVector.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcTimestampColumnVector.java
similarity index 96%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcTimestampColumnVector.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcTimestampColumnVector.java
index 3b127a680..689dd41d2 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/reader/OrcTimestampColumnVector.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/reader/OrcTimestampColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.reader;
+package org.apache.paimon.format.orc.reader;
 
 import org.apache.flink.table.store.data.Timestamp;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/OrcBulkWriter.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/writer/OrcBulkWriter.java
similarity index 95%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/OrcBulkWriter.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/writer/OrcBulkWriter.java
index 1ded35add..4acc8a787 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/OrcBulkWriter.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/writer/OrcBulkWriter.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.writer;
+package org.apache.paimon.format.orc.writer;
 
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FormatWriter;
 
 import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch;
 import org.apache.orc.Writer;
+import org.apache.paimon.format.FormatWriter;
 
 import java.io.IOException;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/PhysicalWriterImpl.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/writer/PhysicalWriterImpl.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/PhysicalWriterImpl.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/writer/PhysicalWriterImpl.java
index 6f273b3f0..309f5d7b9 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/PhysicalWriterImpl.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/writer/PhysicalWriterImpl.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.writer;
+package org.apache.paimon.format.orc.writer;
 
 import org.apache.flink.table.store.fs.PositionOutputStream;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/RowDataVectorizer.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/writer/RowDataVectorizer.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/RowDataVectorizer.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/writer/RowDataVectorizer.java
index fbd905d42..bb937ca34 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/RowDataVectorizer.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/writer/RowDataVectorizer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.writer;
+package org.apache.paimon.format.orc.writer;
 
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.data.InternalArray;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/Vectorizer.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/writer/Vectorizer.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/Vectorizer.java
rename to paimon-format/src/main/java/org/apache/paimon/format/orc/writer/Vectorizer.java
index 7957d1d13..c13e2ce41 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/orc/writer/Vectorizer.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/writer/Vectorizer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc.writer;
+package org.apache.paimon.format.orc.writer;
 
 import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch;
 import org.apache.orc.TypeDescription;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
similarity index 83%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetFileFormat.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
index 48ee14129..2f7d24193 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
@@ -16,23 +16,24 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet;
+package org.apache.paimon.format.parquet;
 
 import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FileStatsExtractor;
-import org.apache.flink.table.store.format.FormatReaderFactory;
-import org.apache.flink.table.store.format.FormatWriterFactory;
-import org.apache.flink.table.store.format.parquet.writer.RowDataParquetBuilder;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Projection;
 
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FileStatsExtractor;
+import org.apache.paimon.format.FormatReaderFactory;
+import org.apache.paimon.format.FormatWriterFactory;
+import org.apache.paimon.format.parquet.writer.RowDataParquetBuilder;
+
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.format.parquet.ParquetFileFormatFactory.IDENTIFIER;
+import static org.apache.paimon.format.parquet.ParquetFileFormatFactory.IDENTIFIER;
 
 /** Parquet {@link FileFormat}. */
 public class ParquetFileFormat extends FileFormat {
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetFileFormatFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormatFactory.java
similarity index 94%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetFileFormatFactory.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormatFactory.java
index c8673fc28..a4b17c067 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetFileFormatFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormatFactory.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet;
+package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.format.FileFormatFactory;
 import org.apache.flink.table.store.options.Options;
 
+import org.apache.paimon.format.FileFormatFactory;
 import org.apache.parquet.hadoop.ParquetOutputFormat;
 import org.apache.parquet.hadoop.metadata.CompressionCodecName;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetFileStatsExtractor.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractor.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetFileStatsExtractor.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractor.java
index 699afc924..ad3a97705 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetFileStatsExtractor.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractor.java
@@ -16,13 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet;
+package org.apache.paimon.format.parquet;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.Decimal;
 import org.apache.flink.table.store.data.Timestamp;
-import org.apache.flink.table.store.format.FieldStats;
-import org.apache.flink.table.store.format.FileStatsExtractor;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.DataField;
@@ -31,6 +29,8 @@ import org.apache.flink.table.store.types.LocalZonedTimestampType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.TimestampType;
 
+import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.parquet.column.statistics.BinaryStatistics;
 import org.apache.parquet.column.statistics.BooleanStatistics;
 import org.apache.parquet.column.statistics.DoubleStatistics;
@@ -50,7 +50,7 @@ import java.time.ZoneOffset;
 import java.util.Map;
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.format.parquet.ParquetUtil.assertStatsClass;
+import static org.apache.paimon.format.parquet.ParquetUtil.assertStatsClass;
 
 /** {@link FileStatsExtractor} for parquet files. */
 public class ParquetFileStatsExtractor implements FileStatsExtractor {
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetInputFile.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputFile.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetInputFile.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputFile.java
index 5d7abd553..a5f0e62c1 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetInputFile.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputFile.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet;
+package org.apache.paimon.format.parquet;
 
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.FileStatus;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetInputStream.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputStream.java
similarity index 96%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetInputStream.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputStream.java
index 7299f90df..64059431e 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetInputStream.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputStream.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet;
+package org.apache.paimon.format.parquet;
 
 import org.apache.flink.table.store.fs.SeekableInputStream;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetReaderFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetReaderFactory.java
similarity index 96%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetReaderFactory.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetReaderFactory.java
index e91e43c00..44ecd832f 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetReaderFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetReaderFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet;
+package org.apache.paimon.format.parquet;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.columnar.ColumnVector;
@@ -24,10 +24,6 @@ import org.apache.flink.table.store.data.columnar.ColumnarRow;
 import org.apache.flink.table.store.data.columnar.ColumnarRowIterator;
 import org.apache.flink.table.store.data.columnar.VectorizedColumnBatch;
 import org.apache.flink.table.store.data.columnar.writable.WritableColumnVector;
-import org.apache.flink.table.store.format.FormatReaderFactory;
-import org.apache.flink.table.store.format.parquet.reader.ColumnReader;
-import org.apache.flink.table.store.format.parquet.reader.ParquetDecimalVector;
-import org.apache.flink.table.store.format.parquet.reader.ParquetTimestampVector;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.options.Options;
@@ -37,6 +33,10 @@ import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Pool;
 
+import org.apache.paimon.format.FormatReaderFactory;
+import org.apache.paimon.format.parquet.reader.ColumnReader;
+import org.apache.paimon.format.parquet.reader.ParquetDecimalVector;
+import org.apache.paimon.format.parquet.reader.ParquetTimestampVector;
 import org.apache.parquet.ParquetReadOptions;
 import org.apache.parquet.column.ColumnDescriptor;
 import org.apache.parquet.column.page.PageReadStore;
@@ -57,8 +57,8 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
-import static org.apache.flink.table.store.format.parquet.reader.ParquetSplitReaderUtil.createColumnReader;
-import static org.apache.flink.table.store.format.parquet.reader.ParquetSplitReaderUtil.createWritableColumnVector;
+import static org.apache.paimon.format.parquet.reader.ParquetSplitReaderUtil.createColumnReader;
+import static org.apache.paimon.format.parquet.reader.ParquetSplitReaderUtil.createWritableColumnVector;
 import static org.apache.parquet.hadoop.UnmaterializableRecordCounter.BAD_RECORD_THRESHOLD_CONF_KEY;
 
 /**
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetSchemaConverter.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetSchemaConverter.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetSchemaConverter.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetSchemaConverter.java
index 849545999..3931ebe64 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetSchemaConverter.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetSchemaConverter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet;
+package org.apache.paimon.format.parquet;
 
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.DataType;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetUtil.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetUtil.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetUtil.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetUtil.java
index b86ac853a..e7903d960 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetUtil.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet;
+package org.apache.paimon.format.parquet;
 
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetWriterFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetWriterFactory.java
similarity index 83%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetWriterFactory.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetWriterFactory.java
index 69d4f1a8a..8ce7eb1ce 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/ParquetWriterFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetWriterFactory.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet;
+package org.apache.paimon.format.parquet;
 
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FormatWriter;
-import org.apache.flink.table.store.format.FormatWriterFactory;
-import org.apache.flink.table.store.format.parquet.writer.ParquetBuilder;
-import org.apache.flink.table.store.format.parquet.writer.ParquetBulkWriter;
-import org.apache.flink.table.store.format.parquet.writer.StreamOutputFile;
 import org.apache.flink.table.store.fs.PositionOutputStream;
 
+import org.apache.paimon.format.FormatWriter;
+import org.apache.paimon.format.FormatWriterFactory;
+import org.apache.paimon.format.parquet.writer.ParquetBuilder;
+import org.apache.paimon.format.parquet.writer.ParquetBulkWriter;
+import org.apache.paimon.format.parquet.writer.StreamOutputFile;
 import org.apache.parquet.hadoop.ParquetWriter;
 import org.apache.parquet.io.OutputFile;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/AbstractColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/AbstractColumnReader.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/AbstractColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/AbstractColumnReader.java
index 52812eeca..097889b28 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/AbstractColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/AbstractColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableColumnVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ArrayColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ArrayColumnReader.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ArrayColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ArrayColumnReader.java
index 6b4b76d38..e9b775a2f 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ArrayColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ArrayColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.data.columnar.VectorizedColumnBatch;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/BaseVectorizedColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/BaseVectorizedColumnReader.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/BaseVectorizedColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/BaseVectorizedColumnReader.java
index cbe056009..b5d69572d 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/BaseVectorizedColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/BaseVectorizedColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableColumnVector;
 import org.apache.flink.table.store.types.DataType;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/BooleanColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/BooleanColumnReader.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/BooleanColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/BooleanColumnReader.java
index 17a62610f..09dcab448 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/BooleanColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/BooleanColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableBooleanVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ByteColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ByteColumnReader.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ByteColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ByteColumnReader.java
index 07187f299..a3ce873dc 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ByteColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ByteColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableByteVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/BytesColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/BytesColumnReader.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/BytesColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/BytesColumnReader.java
index 29a4f61a3..d2fff7d4b 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/BytesColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/BytesColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableBytesVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ColumnReader.java
similarity index 95%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ColumnReader.java
index d17ad0d87..587c87db6 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableColumnVector;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/DoubleColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/DoubleColumnReader.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/DoubleColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/DoubleColumnReader.java
index 04bfd7b46..ff8e47e8f 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/DoubleColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/DoubleColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableDoubleVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/FixedLenBytesColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/FixedLenBytesColumnReader.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/FixedLenBytesColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/FixedLenBytesColumnReader.java
index 7fb340b58..e9035d9dd 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/FixedLenBytesColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/FixedLenBytesColumnReader.java
@@ -15,14 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableBytesVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableColumnVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableLongVector;
-import org.apache.flink.table.store.format.parquet.ParquetSchemaConverter;
 
+import org.apache.paimon.format.parquet.ParquetSchemaConverter;
 import org.apache.parquet.column.ColumnDescriptor;
 import org.apache.parquet.column.page.PageReader;
 import org.apache.parquet.io.api.Binary;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/FloatColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/FloatColumnReader.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/FloatColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/FloatColumnReader.java
index 3d45dd304..785f9f402 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/FloatColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/FloatColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableFloatVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/IntColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/IntColumnReader.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/IntColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/IntColumnReader.java
index 9aadf76c4..560bcf2c0 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/IntColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/IntColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/LongColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/LongColumnReader.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/LongColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/LongColumnReader.java
index 7c09d1831..f51bcbfd9 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/LongColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/LongColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableLongVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/MapColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/MapColumnReader.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/MapColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/MapColumnReader.java
index b5e8bacb5..f4f934ebb 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/MapColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/MapColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.ColumnVector;
 import org.apache.flink.table.store.data.columnar.heap.HeapArrayVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDataColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDataColumnReader.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDataColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDataColumnReader.java
index 8b8c9ad08..19e325310 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDataColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDataColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.Timestamp;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDataColumnReaderFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDataColumnReaderFactory.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDataColumnReaderFactory.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDataColumnReaderFactory.java
index 8c2d6e778..86f4ce2fd 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDataColumnReaderFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDataColumnReaderFactory.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.Timestamp;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDecimalVector.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDecimalVector.java
similarity index 95%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDecimalVector.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDecimalVector.java
index 2428ffe28..7e92c671f 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDecimalVector.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDecimalVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.Decimal;
 import org.apache.flink.table.store.data.columnar.BytesColumnVector;
@@ -24,8 +24,8 @@ import org.apache.flink.table.store.data.columnar.ColumnVector;
 import org.apache.flink.table.store.data.columnar.DecimalColumnVector;
 import org.apache.flink.table.store.data.columnar.IntColumnVector;
 import org.apache.flink.table.store.data.columnar.LongColumnVector;
-import org.apache.flink.table.store.format.parquet.ParquetSchemaConverter;
 
+import org.apache.paimon.format.parquet.ParquetSchemaConverter;
 import org.apache.parquet.Preconditions;
 
 /**
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDictionary.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDictionary.java
similarity index 91%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDictionary.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDictionary.java
index 4e374349f..385d7dd63 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetDictionary.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetDictionary.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.data.columnar.Dictionary;
 
-import static org.apache.flink.table.store.format.parquet.reader.TimestampColumnReader.decodeInt96ToTimestamp;
+import static org.apache.paimon.format.parquet.reader.TimestampColumnReader.decodeInt96ToTimestamp;
 
 /** Parquet dictionary. */
 public final class ParquetDictionary implements Dictionary {
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetSplitReaderUtil.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetSplitReaderUtil.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetSplitReaderUtil.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetSplitReaderUtil.java
index 3df80d5d4..5c767f3af 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetSplitReaderUtil.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetSplitReaderUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.heap.HeapArrayVector;
 import org.apache.flink.table.store.data.columnar.heap.HeapBooleanVector;
@@ -31,7 +31,6 @@ import org.apache.flink.table.store.data.columnar.heap.HeapRowVector;
 import org.apache.flink.table.store.data.columnar.heap.HeapShortVector;
 import org.apache.flink.table.store.data.columnar.heap.HeapTimestampVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableColumnVector;
-import org.apache.flink.table.store.format.parquet.ParquetSchemaConverter;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypeChecks;
@@ -41,6 +40,7 @@ import org.apache.flink.table.store.types.MapType;
 import org.apache.flink.table.store.types.MultisetType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.format.parquet.ParquetSchemaConverter;
 import org.apache.parquet.ParquetRuntimeException;
 import org.apache.parquet.column.ColumnDescriptor;
 import org.apache.parquet.column.page.PageReadStore;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetTimestampVector.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetTimestampVector.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetTimestampVector.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetTimestampVector.java
index 0625f42a2..f2ba11a3b 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ParquetTimestampVector.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ParquetTimestampVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.data.columnar.ColumnVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/RowColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/RowColumnReader.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/RowColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/RowColumnReader.java
index 0da0bcaa4..0cf65f605 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/RowColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/RowColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.heap.HeapRowVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableColumnVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/RunLengthDecoder.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/RunLengthDecoder.java
similarity index 99%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/RunLengthDecoder.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/RunLengthDecoder.java
index a691deaa0..ff2351ca0 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/RunLengthDecoder.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/RunLengthDecoder.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableColumnVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ShortColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ShortColumnReader.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ShortColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ShortColumnReader.java
index 2cf9c87e9..861fafb9d 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/ShortColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/ShortColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
 import org.apache.flink.table.store.data.columnar.writable.WritableShortVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/TimestampColumnReader.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/TimestampColumnReader.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/TimestampColumnReader.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/TimestampColumnReader.java
index 617ac70a1..828eab07c 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/reader/TimestampColumnReader.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/reader/TimestampColumnReader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.reader;
+package org.apache.paimon.format.parquet.reader;
 
 import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetBuilder.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetBuilder.java
similarity index 95%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetBuilder.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetBuilder.java
index 410960e31..808febd9a 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetBuilder.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.writer;
+package org.apache.paimon.format.parquet.writer;
 
 import org.apache.parquet.hadoop.ParquetWriter;
 import org.apache.parquet.io.OutputFile;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetBulkWriter.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetBulkWriter.java
similarity index 94%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetBulkWriter.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetBulkWriter.java
index a19baf893..d4689b28d 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetBulkWriter.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetBulkWriter.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.writer;
+package org.apache.paimon.format.parquet.writer;
 
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.FormatWriter;
 
+import org.apache.paimon.format.FormatWriter;
 import org.apache.parquet.hadoop.ParquetWriter;
 
 import java.io.IOException;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetRowDataBuilder.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetRowDataBuilder.java
similarity index 93%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetRowDataBuilder.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetRowDataBuilder.java
index 3d02e3674..1d06107d0 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetRowDataBuilder.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetRowDataBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.writer;
+package org.apache.paimon.format.parquet.writer;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.RowType;
@@ -30,7 +30,7 @@ import org.apache.parquet.schema.MessageType;
 
 import java.util.HashMap;
 
-import static org.apache.flink.table.store.format.parquet.ParquetSchemaConverter.convertToParquetMessageType;
+import static org.apache.paimon.format.parquet.ParquetSchemaConverter.convertToParquetMessageType;
 
 /** {@link InternalRow} of {@link ParquetWriter.Builder}. */
 public class ParquetRowDataBuilder
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetRowDataWriter.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetRowDataWriter.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetRowDataWriter.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetRowDataWriter.java
index c7dfaa8e3..a487f80f1 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/ParquetRowDataWriter.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/ParquetRowDataWriter.java
@@ -16,14 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.writer;
+package org.apache.paimon.format.parquet.writer;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.InternalArray;
 import org.apache.flink.table.store.data.InternalMap;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.Timestamp;
-import org.apache.flink.table.store.format.parquet.ParquetSchemaConverter;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DecimalType;
@@ -34,6 +33,7 @@ import org.apache.flink.table.store.types.MultisetType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.TimestampType;
 
+import org.apache.paimon.format.parquet.ParquetSchemaConverter;
 import org.apache.parquet.io.api.Binary;
 import org.apache.parquet.io.api.RecordConsumer;
 import org.apache.parquet.schema.GroupType;
@@ -45,11 +45,11 @@ import java.nio.ByteOrder;
 import java.util.Arrays;
 import java.util.List;
 
-import static org.apache.flink.table.store.format.parquet.ParquetSchemaConverter.computeMinBytesForDecimalPrecision;
-import static org.apache.flink.table.store.format.parquet.reader.TimestampColumnReader.JULIAN_EPOCH_OFFSET_DAYS;
-import static org.apache.flink.table.store.format.parquet.reader.TimestampColumnReader.MILLIS_IN_DAY;
-import static org.apache.flink.table.store.format.parquet.reader.TimestampColumnReader.NANOS_PER_MILLISECOND;
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.format.parquet.ParquetSchemaConverter.computeMinBytesForDecimalPrecision;
+import static org.apache.paimon.format.parquet.reader.TimestampColumnReader.JULIAN_EPOCH_OFFSET_DAYS;
+import static org.apache.paimon.format.parquet.reader.TimestampColumnReader.MILLIS_IN_DAY;
+import static org.apache.paimon.format.parquet.reader.TimestampColumnReader.NANOS_PER_MILLISECOND;
 
 /** Writes a record to the Parquet API with the expected schema in order to be written to a file. */
 public class ParquetRowDataWriter {
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/PositionOutputStreamAdapter.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/PositionOutputStreamAdapter.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/PositionOutputStreamAdapter.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/PositionOutputStreamAdapter.java
index 9624831dd..0ac2d919e 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/PositionOutputStreamAdapter.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/PositionOutputStreamAdapter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.writer;
+package org.apache.paimon.format.parquet.writer;
 
 import org.apache.parquet.io.PositionOutputStream;
 
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/RowDataParquetBuilder.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/RowDataParquetBuilder.java
similarity index 98%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/RowDataParquetBuilder.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/RowDataParquetBuilder.java
index 5806faaec..e52de1d09 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/RowDataParquetBuilder.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/RowDataParquetBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.writer;
+package org.apache.paimon.format.parquet.writer;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.options.Options;
diff --git a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/StreamOutputFile.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/StreamOutputFile.java
similarity index 97%
rename from flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/StreamOutputFile.java
rename to paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/StreamOutputFile.java
index 1b4e22b14..6f8475dc4 100644
--- a/flink-table-store-format/src/main/java/org/apache/flink/table/store/format/parquet/writer/StreamOutputFile.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/StreamOutputFile.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet.writer;
+package org.apache.paimon.format.parquet.writer;
 
 import org.apache.parquet.io.OutputFile;
 import org.apache.parquet.io.PositionOutputStream;
diff --git a/flink-table-store-format/src/main/resources/META-INF/NOTICE b/paimon-format/src/main/resources/META-INF/NOTICE
similarity index 100%
rename from flink-table-store-format/src/main/resources/META-INF/NOTICE
rename to paimon-format/src/main/resources/META-INF/NOTICE
diff --git a/flink-table-store-format/src/main/resources/META-INF/services/org.apache.flink.table.store.format.FileFormatFactory b/paimon-format/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
similarity index 80%
rename from flink-table-store-format/src/main/resources/META-INF/services/org.apache.flink.table.store.format.FileFormatFactory
rename to paimon-format/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
index b0551bd86..4aa1b23b3 100644
--- a/flink-table-store-format/src/main/resources/META-INF/services/org.apache.flink.table.store.format.FileFormatFactory
+++ b/paimon-format/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
@@ -13,6 +13,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.flink.table.store.format.avro.AvroFileFormatFactory
-org.apache.flink.table.store.format.orc.OrcFileFormatFactory
-org.apache.flink.table.store.format.parquet.ParquetFileFormatFactory
\ No newline at end of file
+org.apache.paimon.format.avro.AvroFileFormatFactory
+org.apache.paimon.format.orc.OrcFileFormatFactory
+org.apache.paimon.format.parquet.ParquetFileFormatFactory
\ No newline at end of file
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/BulkFileFormatTest.java b/paimon-format/src/test/java/org/apache/paimon/format/BulkFileFormatTest.java
similarity index 98%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/BulkFileFormatTest.java
rename to paimon-format/src/test/java/org/apache/paimon/format/BulkFileFormatTest.java
index e3ba0b105..daa4abacb 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/BulkFileFormatTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/BulkFileFormatTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format;
+package org.apache.paimon.format;
 
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.data.InternalRow;
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/avro/AvroBulkFormatTest.java b/paimon-format/src/test/java/org/apache/paimon/format/avro/AvroBulkFormatTest.java
similarity index 97%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/avro/AvroBulkFormatTest.java
rename to paimon-format/src/test/java/org/apache/paimon/format/avro/AvroBulkFormatTest.java
index af1639e91..d991718ac 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/avro/AvroBulkFormatTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/avro/AvroBulkFormatTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.GenericRow;
@@ -43,7 +43,7 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import static org.apache.flink.table.store.format.avro.AvroBulkFormatTestUtils.ROW_TYPE;
+import static org.apache.paimon.format.avro.AvroBulkFormatTestUtils.ROW_TYPE;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for {@link AbstractAvroBulkFormat}. */
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/avro/AvroBulkFormatTestUtils.java b/paimon-format/src/test/java/org/apache/paimon/format/avro/AvroBulkFormatTestUtils.java
similarity index 97%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/avro/AvroBulkFormatTestUtils.java
rename to paimon-format/src/test/java/org/apache/paimon/format/avro/AvroBulkFormatTestUtils.java
index f267a9c16..b58840351 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/avro/AvroBulkFormatTestUtils.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/avro/AvroBulkFormatTestUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.avro;
+package org.apache.paimon.format.avro;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.DataType;
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcBulkWriterTestUtil.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcBulkWriterTestUtil.java
similarity index 98%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcBulkWriterTestUtil.java
rename to paimon-format/src/test/java/org/apache/paimon/format/orc/OrcBulkWriterTestUtil.java
index b1e1071be..b24f3d1ba 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcBulkWriterTestUtil.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcBulkWriterTestUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.ql.exec.vector.BytesColumnVector;
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcFileFormatTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileFormatTest.java
similarity index 93%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcFileFormatTest.java
rename to paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileFormatTest.java
index 003948cdc..2d1867526 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcFileFormatTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileFormatTest.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
 import org.apache.flink.table.store.options.Options;
 
 import org.junit.jupiter.api.Test;
 
-import static org.apache.flink.table.store.format.orc.OrcFileFormatFactory.IDENTIFIER;
+import static org.apache.paimon.format.orc.OrcFileFormatFactory.IDENTIFIER;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link OrcFileFormatFactory}. */
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcFileStatsExtractorTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileStatsExtractorTest.java
similarity index 92%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcFileStatsExtractorTest.java
rename to paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileStatsExtractorTest.java
index 6c712620c..7a9c40966 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcFileStatsExtractorTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileStatsExtractorTest.java
@@ -16,11 +16,8 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FileStatsExtractorTestBase;
-import org.apache.flink.table.store.format.orc.filter.OrcFileStatsExtractor;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.BigIntType;
@@ -41,6 +38,10 @@ import org.apache.flink.table.store.types.TinyIntType;
 import org.apache.flink.table.store.types.VarBinaryType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FileStatsExtractorTestBase;
+import org.apache.paimon.format.orc.filter.OrcFileStatsExtractor;
+
 /** Tests for {@link OrcFileStatsExtractor}. */
 public class OrcFileStatsExtractorTest extends FileStatsExtractorTestBase {
 
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcFilterConverterTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
similarity index 96%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcFilterConverterTest.java
rename to paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
index eea446286..c93c4da90 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcFilterConverterTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.format.orc.filter.OrcFilters;
-import org.apache.flink.table.store.format.orc.filter.OrcPredicateFunctionVisitor;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.hadoop.hive.ql.io.sarg.PredicateLeaf;
+import org.apache.paimon.format.orc.filter.OrcFilters;
+import org.apache.paimon.format.orc.filter.OrcPredicateFunctionVisitor;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcReaderFactoryTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcReaderFactoryTest.java
similarity index 98%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcReaderFactoryTest.java
rename to paimon-format/src/test/java/org/apache/paimon/format/orc/OrcReaderFactoryTest.java
index 98d5c71bc..8a1ca571c 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcReaderFactoryTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcReaderFactoryTest.java
@@ -16,10 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.orc.filter.OrcFilters;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.reader.RecordReader;
@@ -30,6 +29,7 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.DecimalUtils;
 
 import org.apache.hadoop.conf.Configuration;
+import org.apache.paimon.format.orc.filter.OrcFilters;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcSplitReaderUtilTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcSplitReaderUtilTest.java
similarity index 92%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcSplitReaderUtilTest.java
rename to paimon-format/src/test/java/org/apache/paimon/format/orc/OrcSplitReaderUtilTest.java
index f2e9cf171..68bf67a9a 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcSplitReaderUtilTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcSplitReaderUtilTest.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.format.orc.reader.OrcSplitReaderUtil;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypes;
 
+import org.apache.paimon.format.orc.reader.OrcSplitReaderUtil;
 import org.junit.jupiter.api.Test;
 
-import static org.apache.flink.table.store.format.orc.reader.OrcSplitReaderUtil.toOrcType;
+import static org.apache.paimon.format.orc.reader.OrcSplitReaderUtil.toOrcType;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link OrcSplitReaderUtil}. */
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcWriterFactoryTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcWriterFactoryTest.java
similarity index 94%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcWriterFactoryTest.java
rename to paimon-format/src/test/java/org/apache/paimon/format/orc/OrcWriterFactoryTest.java
index c7970497c..a1102dc1d 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/OrcWriterFactoryTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcWriterFactoryTest.java
@@ -16,11 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.format.orc.writer.RowDataVectorizer;
-import org.apache.flink.table.store.format.orc.writer.Vectorizer;
 import org.apache.flink.table.store.fs.local.LocalFileIO.LocalPositionOutputStream;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypes;
@@ -28,6 +26,8 @@ import org.apache.flink.table.store.types.DataTypes;
 import org.apache.hadoop.fs.Path;
 import org.apache.orc.MemoryManager;
 import org.apache.orc.OrcFile;
+import org.apache.paimon.format.orc.writer.RowDataVectorizer;
+import org.apache.paimon.format.orc.writer.Vectorizer;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/Record.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/Record.java
similarity index 96%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/Record.java
rename to paimon-format/src/test/java/org/apache/paimon/format/orc/Record.java
index 6f1e76333..0b3a1b529 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/Record.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/Record.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
+package org.apache.paimon.format.orc;
 
 import java.io.Serializable;
 
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/RecordVectorizer.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/RecordVectorizer.java
similarity index 94%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/RecordVectorizer.java
rename to paimon-format/src/test/java/org/apache/paimon/format/orc/RecordVectorizer.java
index d2c0485db..4cfa3bd90 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/orc/RecordVectorizer.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/RecordVectorizer.java
@@ -16,13 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.orc;
-
-import org.apache.flink.table.store.format.orc.writer.Vectorizer;
+package org.apache.paimon.format.orc;
 
 import org.apache.hadoop.hive.ql.exec.vector.BytesColumnVector;
 import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector;
 import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch;
+import org.apache.paimon.format.orc.writer.Vectorizer;
 
 import java.io.IOException;
 import java.io.Serializable;
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/parquet/ParquetFileFormatTest.java b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileFormatTest.java
similarity index 91%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/parquet/ParquetFileFormatTest.java
rename to paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileFormatTest.java
index eaab79f31..5e1cf53c2 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/parquet/ParquetFileFormatTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileFormatTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet;
+package org.apache.paimon.format.parquet;
 
 import org.apache.flink.table.store.options.ConfigOption;
 import org.apache.flink.table.store.options.ConfigOptions;
@@ -26,8 +26,8 @@ import org.apache.parquet.format.CompressionCodec;
 import org.apache.parquet.hadoop.ParquetOutputFormat;
 import org.junit.jupiter.api.Test;
 
-import static org.apache.flink.table.store.format.parquet.ParquetFileFormat.getParquetConfiguration;
-import static org.apache.flink.table.store.format.parquet.ParquetFileFormatFactory.IDENTIFIER;
+import static org.apache.paimon.format.parquet.ParquetFileFormat.getParquetConfiguration;
+import static org.apache.paimon.format.parquet.ParquetFileFormatFactory.IDENTIFIER;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link ParquetFileFormatFactory}. */
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/parquet/ParquetFileStatsExtractorTest.java b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractorTest.java
similarity index 94%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/parquet/ParquetFileStatsExtractorTest.java
rename to paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractorTest.java
index 1df1bfa04..9a3169a58 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/parquet/ParquetFileStatsExtractorTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractorTest.java
@@ -16,11 +16,8 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet;
+package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.format.FieldStats;
-import org.apache.flink.table.store.format.FileFormat;
-import org.apache.flink.table.store.format.FileStatsExtractorTestBase;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.BigIntType;
@@ -42,6 +39,10 @@ import org.apache.flink.table.store.types.TinyIntType;
 import org.apache.flink.table.store.types.VarBinaryType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FileStatsExtractorTestBase;
+
 /** Tests for {@link ParquetFileStatsExtractor}. */
 public class ParquetFileStatsExtractorTest extends FileStatsExtractorTestBase {
 
diff --git a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/parquet/ParquetReadWriteTest.java b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetReadWriteTest.java
similarity index 99%
rename from flink-table-store-format/src/test/java/org/apache/flink/table/store/format/parquet/ParquetReadWriteTest.java
rename to paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetReadWriteTest.java
index e56e3a4af..b1338b3f9 100644
--- a/flink-table-store-format/src/test/java/org/apache/flink/table/store/format/parquet/ParquetReadWriteTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetReadWriteTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.format.parquet;
+package org.apache.paimon.format.parquet;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.Decimal;
@@ -25,8 +25,6 @@ import org.apache.flink.table.store.data.GenericMap;
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.Timestamp;
-import org.apache.flink.table.store.format.FormatWriter;
-import org.apache.flink.table.store.format.parquet.writer.RowDataParquetBuilder;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.options.Options;
@@ -48,6 +46,8 @@ import org.apache.flink.table.store.types.TinyIntType;
 import org.apache.flink.table.store.types.VarCharType;
 import org.apache.flink.table.store.utils.InstantiationUtil;
 
+import org.apache.paimon.format.FormatWriter;
+import org.apache.paimon.format.parquet.writer.RowDataParquetBuilder;
 import org.junit.jupiter.api.io.TempDir;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.MethodSource;
diff --git a/flink-table-store-format/src/test/resources/test-data-decimal.orc b/paimon-format/src/test/resources/test-data-decimal.orc
similarity index 100%
rename from flink-table-store-format/src/test/resources/test-data-decimal.orc
rename to paimon-format/src/test/resources/test-data-decimal.orc
diff --git a/flink-table-store-format/src/test/resources/test-data-flat.orc b/paimon-format/src/test/resources/test-data-flat.orc
similarity index 100%
rename from flink-table-store-format/src/test/resources/test-data-flat.orc
rename to paimon-format/src/test/resources/test-data-flat.orc
diff --git a/pom.xml b/pom.xml
index 1137f3b22..627d1d543 100644
--- a/pom.xml
+++ b/pom.xml
@@ -61,7 +61,7 @@ under the License.
         <module>flink-table-store-docs</module>
         <module>flink-table-store-e2e-tests</module>
         <module>paimon-filesystems</module>
-        <module>flink-table-store-format</module>
+        <module>paimon-format</module>
         <module>paimon-shade</module>
         <module>paimon-hive</module>
         <module>paimon-spark</module>


[incubator-paimon] 08/32: [core] Rename paimon e2e and docs

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 23386584828d0c2864f7e6c842fa87750cc93078
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 12:35:52 2023 +0800

    [core] Rename paimon e2e and docs
---
 {flink-table-store-docs => paimon-docs}/README.md        |  0
 {flink-table-store-docs => paimon-docs}/pom.xml          |  2 +-
 .../docs/configuration/ConfigOptionsDocGenerator.java    |  4 ++--
 .../paimon}/docs/configuration/OptionsClassLocation.java |  2 +-
 .../main/java/org/apache/paimon}/docs/util/Utils.java    |  2 +-
 .../src/main/resources/log4j.properties                  |  2 +-
 .../configuration/ConfigOptionsDocGeneratorTest.java     |  4 ++--
 .../ConfigOptionsDocsCompletenessITCase.java             | 16 ++++++++--------
 .../docs/configuration/data/TestCommonOptions.java       |  2 +-
 .../pom.xml                                              |  0
 .../java/org/apache/paimon}/tests/E2eQueryExecutor.java  |  2 +-
 .../java/org/apache/paimon}/tests/E2eReaderTestBase.java |  2 +-
 .../test/java/org/apache/paimon}/tests/E2eTestBase.java  |  2 +-
 .../org/apache/paimon}/tests/FileStoreBatchE2eTest.java  |  2 +-
 .../paimon}/tests/FileStoreBuiltInFormatE2eTest.java     |  2 +-
 .../org/apache/paimon}/tests/FileStoreStreamE2eTest.java |  2 +-
 .../org/apache/paimon}/tests/FlinkActionsE2eTest.java    |  2 +-
 .../test/java/org/apache/paimon}/tests/HiveE2eTest.java  |  2 +-
 .../java/org/apache/paimon}/tests/LogStoreE2eTest.java   |  2 +-
 .../test/java/org/apache/paimon}/tests/SparkE2eTest.java |  2 +-
 .../test/java/org/apache/paimon}/tests/TypeE2eTest.java  |  2 +-
 .../apache/paimon}/tests/utils/ParameterProperty.java    |  2 +-
 .../java/org/apache/paimon}/tests/utils/TestUtils.java   |  2 +-
 .../src/test/resources-filtered/docker-compose.yaml      |  0
 .../src/test/resources/flink.env                         |  0
 .../src/test/resources/hadoop-hive.env                   |  0
 .../src/test/resources/log4j2-test.properties            |  0
 pom.xml                                                  |  4 ++--
 28 files changed, 32 insertions(+), 32 deletions(-)

diff --git a/flink-table-store-docs/README.md b/paimon-docs/README.md
similarity index 100%
rename from flink-table-store-docs/README.md
rename to paimon-docs/README.md
diff --git a/flink-table-store-docs/pom.xml b/paimon-docs/pom.xml
similarity index 98%
rename from flink-table-store-docs/pom.xml
rename to paimon-docs/pom.xml
index e95ed6ec2..4d40e50e8 100644
--- a/flink-table-store-docs/pom.xml
+++ b/paimon-docs/pom.xml
@@ -133,7 +133,7 @@ under the License.
                                 <configuration>
                                     <target>
                                         <mkdir dir="${rootDir}/${generated.docs.dir}"/>
-                                        <java classname="org.apache.flink.table.store.docs.configuration.ConfigOptionsDocGenerator"
+                                        <java classname="org.apache.paimon.docs.configuration.ConfigOptionsDocGenerator"
                                               fork="true" failonerror="true">
                                             <classpath refid="maven.compile.classpath"/>
                                             <arg value="${rootDir}/${generated.docs.dir}/"/>
diff --git a/flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocGenerator.java b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
similarity index 99%
rename from flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocGenerator.java
rename to paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
index 112f0c6fe..a4989bc2d 100644
--- a/flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocGenerator.java
+++ b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.docs.configuration;
+package org.apache.paimon.docs.configuration;
 
 import org.apache.flink.table.store.annotation.ConfigGroup;
 import org.apache.flink.table.store.annotation.ConfigGroups;
@@ -61,8 +61,8 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.docs.util.Utils.escapeCharacters;
 import static org.apache.flink.table.store.options.description.TextElement.text;
+import static org.apache.paimon.docs.util.Utils.escapeCharacters;
 
 /** Class used for generating code based documentation of configuration parameters. */
 public class ConfigOptionsDocGenerator {
diff --git a/flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/configuration/OptionsClassLocation.java b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/OptionsClassLocation.java
similarity index 96%
rename from flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/configuration/OptionsClassLocation.java
rename to paimon-docs/src/main/java/org/apache/paimon/docs/configuration/OptionsClassLocation.java
index bcc0c20bc..ea685d3cc 100644
--- a/flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/configuration/OptionsClassLocation.java
+++ b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/OptionsClassLocation.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.docs.configuration;
+package org.apache.paimon.docs.configuration;
 
 import org.apache.flink.table.store.options.ConfigOption;
 
diff --git a/flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/util/Utils.java b/paimon-docs/src/main/java/org/apache/paimon/docs/util/Utils.java
similarity index 96%
rename from flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/util/Utils.java
rename to paimon-docs/src/main/java/org/apache/paimon/docs/util/Utils.java
index 9d022b7f1..10dcbaaee 100644
--- a/flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/util/Utils.java
+++ b/paimon-docs/src/main/java/org/apache/paimon/docs/util/Utils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.docs.util;
+package org.apache.paimon.docs.util;
 
 /** Contains various shared utility functions. */
 public class Utils {
diff --git a/flink-table-store-docs/src/main/resources/log4j.properties b/paimon-docs/src/main/resources/log4j.properties
similarity index 93%
rename from flink-table-store-docs/src/main/resources/log4j.properties
rename to paimon-docs/src/main/resources/log4j.properties
index 45588487d..8d3155595 100644
--- a/flink-table-store-docs/src/main/resources/log4j.properties
+++ b/paimon-docs/src/main/resources/log4j.properties
@@ -16,7 +16,7 @@
 # limitations under the License.
 ################################################################################
 
-log4j.logger.org.apache.flink.table.store.docs.ConfigOptionsDocGenerator= INFO, logger
+log4j.logger.org.apache.paimon.docs.ConfigOptionsDocGenerator= INFO, logger
 
 log4j.appender.logger=org.apache.log4j.ConsoleAppender
 log4j.appender.logger.target = System.out
diff --git a/flink-table-store-docs/src/test/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocGeneratorTest.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
similarity index 99%
rename from flink-table-store-docs/src/test/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocGeneratorTest.java
rename to paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
index 8f36de428..9c6f74d08 100644
--- a/flink-table-store-docs/src/test/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocGeneratorTest.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
@@ -16,12 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.docs.configuration;
+package org.apache.paimon.docs.configuration;
 
 import org.apache.flink.table.store.annotation.ConfigGroup;
 import org.apache.flink.table.store.annotation.ConfigGroups;
 import org.apache.flink.table.store.annotation.Documentation;
-import org.apache.flink.table.store.docs.configuration.data.TestCommonOptions;
 import org.apache.flink.table.store.options.ConfigOption;
 import org.apache.flink.table.store.options.ConfigOptions;
 import org.apache.flink.table.store.options.MemorySize;
@@ -31,6 +30,7 @@ import org.apache.flink.table.store.options.description.HtmlFormatter;
 import org.apache.flink.table.store.options.description.InlineElement;
 import org.apache.flink.table.store.utils.Pair;
 
+import org.apache.paimon.docs.configuration.data.TestCommonOptions;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/flink-table-store-docs/src/test/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocsCompletenessITCase.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
similarity index 96%
rename from flink-table-store-docs/src/test/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
rename to paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
index c9a7288ca..077f54ed8 100644
--- a/flink-table-store-docs/src/test/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.docs.configuration;
+package org.apache.paimon.docs.configuration;
 
 import org.apache.flink.table.store.annotation.Documentation;
 import org.apache.flink.table.store.options.ConfigOption;
@@ -43,13 +43,13 @@ import java.util.function.Predicate;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import static org.apache.flink.table.store.docs.configuration.ConfigOptionsDocGenerator.DEFAULT_PATH_PREFIX;
-import static org.apache.flink.table.store.docs.configuration.ConfigOptionsDocGenerator.LOCATIONS;
-import static org.apache.flink.table.store.docs.configuration.ConfigOptionsDocGenerator.extractConfigOptions;
-import static org.apache.flink.table.store.docs.configuration.ConfigOptionsDocGenerator.getDescription;
-import static org.apache.flink.table.store.docs.configuration.ConfigOptionsDocGenerator.processConfigOptions;
-import static org.apache.flink.table.store.docs.configuration.ConfigOptionsDocGenerator.stringifyDefault;
-import static org.apache.flink.table.store.docs.configuration.ConfigOptionsDocGenerator.typeToHtml;
+import static org.apache.paimon.docs.configuration.ConfigOptionsDocGenerator.DEFAULT_PATH_PREFIX;
+import static org.apache.paimon.docs.configuration.ConfigOptionsDocGenerator.LOCATIONS;
+import static org.apache.paimon.docs.configuration.ConfigOptionsDocGenerator.extractConfigOptions;
+import static org.apache.paimon.docs.configuration.ConfigOptionsDocGenerator.getDescription;
+import static org.apache.paimon.docs.configuration.ConfigOptionsDocGenerator.processConfigOptions;
+import static org.apache.paimon.docs.configuration.ConfigOptionsDocGenerator.stringifyDefault;
+import static org.apache.paimon.docs.configuration.ConfigOptionsDocGenerator.typeToHtml;
 import static org.assertj.core.api.Fail.fail;
 
 /**
diff --git a/flink-table-store-docs/src/test/java/org/apache/flink/table/store/docs/configuration/data/TestCommonOptions.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
similarity index 97%
rename from flink-table-store-docs/src/test/java/org/apache/flink/table/store/docs/configuration/data/TestCommonOptions.java
rename to paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
index 13071313b..5100b0c69 100644
--- a/flink-table-store-docs/src/test/java/org/apache/flink/table/store/docs/configuration/data/TestCommonOptions.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.docs.configuration.data;
+package org.apache.paimon.docs.configuration.data;
 
 import org.apache.flink.table.store.annotation.Documentation;
 import org.apache.flink.table.store.options.ConfigOption;
diff --git a/flink-table-store-e2e-tests/pom.xml b/paimon-e2e-tests/pom.xml
similarity index 100%
rename from flink-table-store-e2e-tests/pom.xml
rename to paimon-e2e-tests/pom.xml
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/E2eQueryExecutor.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eQueryExecutor.java
similarity index 95%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/E2eQueryExecutor.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eQueryExecutor.java
index e6b3786fa..d11a7efad 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/E2eQueryExecutor.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eQueryExecutor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests;
+package org.apache.paimon.tests;
 
 /** E2e query executor for testing. */
 public interface E2eQueryExecutor {
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/E2eReaderTestBase.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eReaderTestBase.java
similarity index 99%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/E2eReaderTestBase.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eReaderTestBase.java
index 6507e08f2..8445fb6ad 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/E2eReaderTestBase.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eReaderTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests;
+package org.apache.paimon.tests;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/E2eTestBase.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eTestBase.java
similarity index 99%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/E2eTestBase.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eTestBase.java
index 7d9699210..11037d762 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/E2eTestBase.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests;
+package org.apache.paimon.tests;
 
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FileStoreBatchE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
similarity index 99%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FileStoreBatchE2eTest.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
index 3cff1c717..4f68a74d5 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FileStoreBatchE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests;
+package org.apache.paimon.tests;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FileStoreBuiltInFormatE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
similarity index 99%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FileStoreBuiltInFormatE2eTest.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
index d7cffa3fc..e481acb69 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FileStoreBuiltInFormatE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests;
+package org.apache.paimon.tests;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FileStoreStreamE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreStreamE2eTest.java
similarity index 99%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FileStoreStreamE2eTest.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreStreamE2eTest.java
index af7ed001d..fe4f0178a 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FileStoreStreamE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreStreamE2eTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests;
+package org.apache.paimon.tests;
 
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FlinkActionsE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
similarity index 99%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FlinkActionsE2eTest.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
index 725f9dfb5..cb1848b70 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FlinkActionsE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests;
+package org.apache.paimon.tests;
 
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/HiveE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
similarity index 99%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/HiveE2eTest.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
index 5630d1698..c3d9ff1a0 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/HiveE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests;
+package org.apache.paimon.tests;
 
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/LogStoreE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/LogStoreE2eTest.java
similarity index 99%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/LogStoreE2eTest.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/LogStoreE2eTest.java
index 97666c590..67188fc5e 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/LogStoreE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/LogStoreE2eTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests;
+package org.apache.paimon.tests;
 
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/SparkE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/SparkE2eTest.java
similarity index 98%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/SparkE2eTest.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/SparkE2eTest.java
index f26526a02..61dd25c8d 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/SparkE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/SparkE2eTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests;
+package org.apache.paimon.tests;
 
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/TypeE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/TypeE2eTest.java
similarity index 99%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/TypeE2eTest.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/TypeE2eTest.java
index 43333028f..701b843ef 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/TypeE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/TypeE2eTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests;
+package org.apache.paimon.tests;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/utils/ParameterProperty.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/utils/ParameterProperty.java
similarity index 96%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/utils/ParameterProperty.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/utils/ParameterProperty.java
index baad9a326..441c485d3 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/utils/ParameterProperty.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/utils/ParameterProperty.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests.utils;
+package org.apache.paimon.tests.utils;
 
 import java.util.function.Function;
 
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/utils/TestUtils.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/utils/TestUtils.java
similarity index 98%
rename from flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/utils/TestUtils.java
rename to paimon-e2e-tests/src/test/java/org/apache/paimon/tests/utils/TestUtils.java
index f61042dd4..342fd5f91 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/utils/TestUtils.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/utils/TestUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.tests.utils;
+package org.apache.paimon.tests.utils;
 
 import java.io.FileNotFoundException;
 import java.io.IOException;
diff --git a/flink-table-store-e2e-tests/src/test/resources-filtered/docker-compose.yaml b/paimon-e2e-tests/src/test/resources-filtered/docker-compose.yaml
similarity index 100%
rename from flink-table-store-e2e-tests/src/test/resources-filtered/docker-compose.yaml
rename to paimon-e2e-tests/src/test/resources-filtered/docker-compose.yaml
diff --git a/flink-table-store-e2e-tests/src/test/resources/flink.env b/paimon-e2e-tests/src/test/resources/flink.env
similarity index 100%
rename from flink-table-store-e2e-tests/src/test/resources/flink.env
rename to paimon-e2e-tests/src/test/resources/flink.env
diff --git a/flink-table-store-e2e-tests/src/test/resources/hadoop-hive.env b/paimon-e2e-tests/src/test/resources/hadoop-hive.env
similarity index 100%
rename from flink-table-store-e2e-tests/src/test/resources/hadoop-hive.env
rename to paimon-e2e-tests/src/test/resources/hadoop-hive.env
diff --git a/flink-table-store-e2e-tests/src/test/resources/log4j2-test.properties b/paimon-e2e-tests/src/test/resources/log4j2-test.properties
similarity index 100%
rename from flink-table-store-e2e-tests/src/test/resources/log4j2-test.properties
rename to paimon-e2e-tests/src/test/resources/log4j2-test.properties
diff --git a/pom.xml b/pom.xml
index 627d1d543..85de94884 100644
--- a/pom.xml
+++ b/pom.xml
@@ -58,8 +58,8 @@ under the License.
         <module>flink-table-store-common</module>
         <module>flink-table-store-core</module>
         <module>paimon-flink</module>
-        <module>flink-table-store-docs</module>
-        <module>flink-table-store-e2e-tests</module>
+        <module>paimon-docs</module>
+        <module>paimon-e2e-tests</module>
         <module>paimon-filesystems</module>
         <module>paimon-format</module>
         <module>paimon-shade</module>


[incubator-paimon] 22/32: [core] Rename paimon to test pass

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit d0d8faddd01c9ff30b529ca8396e9b77c95045e9
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 15:38:01 2023 +0800

    [core] Rename paimon to test pass
---
 docs/content/how-to/writing-tables.md                          | 10 ++++++++++
 .../src/main/java/org/apache/paimon/plugin/PluginLoader.java   |  2 +-
 ...aimon.fs.FileIOLoader => org.apache.paimon.fs.FileIOLoader} |  0
 ...ormatFactory => org.apache.paimon.format.FileFormatFactory} |  0
 ...aimon.fs.FileIOLoader => org.apache.paimon.fs.FileIOLoader} |  0
 paimon-docs/README.md                                          |  2 +-
 .../docs/configuration/ConfigOptionsDocGeneratorTest.java      |  3 +--
 .../test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java |  4 ++++
 ...store.fs.FileIOLoader => org.apache.paimon.fs.FileIOLoader} |  0
 ...store.fs.FileIOLoader => org.apache.paimon.fs.FileIOLoader} |  0
 ...ormatFactory => org.apache.paimon.format.FileFormatFactory} |  0
 11 files changed, 17 insertions(+), 4 deletions(-)

diff --git a/docs/content/how-to/writing-tables.md b/docs/content/how-to/writing-tables.md
index 93281e8d6..eb90f7a8a 100644
--- a/docs/content/how-to/writing-tables.md
+++ b/docs/content/how-to/writing-tables.md
@@ -205,6 +205,7 @@ Run the following command to submit a drop-partition job for the table.
 ```bash
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
+    -Dclassloader.resolve-order=parent-first \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     drop-partition \
     --warehouse <warehouse-path> \
@@ -222,6 +223,7 @@ For more information of drop-partition, see
 ```bash
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
+    -Dclassloader.resolve-order=parent-first \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     drop-partition --help
 ```
@@ -243,6 +245,7 @@ Run the following command to submit a 'delete' job for the table.
 ```bash
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
+    -Dclassloader.resolve-order=parent-first \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     delete \
     --warehouse <warehouse-path> \
@@ -261,6 +264,7 @@ For more information of 'delete', see
 ```bash
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
+    -Dclassloader.resolve-order=parent-first \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     delete --help
 ```
@@ -309,6 +313,7 @@ Run the following command to submit a 'merge-into' job for the table.
 ```bash
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
+    -Dclassloader.resolve-order=parent-first \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
@@ -335,6 +340,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 -- or delete if the price is under 10.
 ./flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
+    -Dclassloader.resolve-order=parent-first \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
@@ -352,6 +358,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 -- source table:
 ./flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
+    -Dclassloader.resolve-order=parent-first \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
@@ -368,6 +375,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 -- source table based on the merge-condition), decrease the price or if the mark is 'trivial', delete them:
 ./flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
+    -Dclassloader.resolve-order=parent-first \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
@@ -385,6 +393,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 -- Create a temporary view S in new catalog and use it as source table
 ./flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
+    -Dclassloader.resolve-order=parent-first \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
@@ -443,6 +452,7 @@ For more information of 'merge-into', see
 ```bash
 <FLINK_HOME>/bin/flink run \
     -c org.apache.paimon.connector.action.FlinkActions \
+    -Dclassloader.resolve-order=parent-first \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     merge-into --help
 ```
diff --git a/paimon-common/src/main/java/org/apache/paimon/plugin/PluginLoader.java b/paimon-common/src/main/java/org/apache/paimon/plugin/PluginLoader.java
index e55f23a78..4e6c5cf54 100644
--- a/paimon-common/src/main/java/org/apache/paimon/plugin/PluginLoader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/plugin/PluginLoader.java
@@ -58,7 +58,7 @@ public class PluginLoader {
                                     "org.apache.commons.lang3"))
                     .toArray(String[]::new);
 
-    private static final String[] COMPONENT_CLASSPATH = new String[] {"org.apache.flink"};
+    private static final String[] COMPONENT_CLASSPATH = new String[] {"org.apache.paimon"};
 
     private final ClassLoader submoduleClassLoader;
 
diff --git a/paimon-common/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader b/paimon-common/src/main/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
similarity index 100%
rename from paimon-common/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
rename to paimon-common/src/main/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
diff --git a/paimon-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory b/paimon-core/src/test/resources/META-INF/services/org.apache.paimon.format.FileFormatFactory
similarity index 100%
rename from paimon-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
rename to paimon-core/src/test/resources/META-INF/services/org.apache.paimon.format.FileFormatFactory
diff --git a/paimon-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader b/paimon-core/src/test/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
similarity index 100%
rename from paimon-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
rename to paimon-core/src/test/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
diff --git a/paimon-docs/README.md b/paimon-docs/README.md
index b69e49f9b..f6c28de9d 100644
--- a/paimon-docs/README.md
+++ b/paimon-docs/README.md
@@ -28,7 +28,7 @@ The `@ConfigGroups` annotation can be used to generate multiple files from a sin
 
 To integrate an `*Options` class from another package, add another module-package argument pair to `ConfigOptionsDocGenerator#LOCATIONS`.
 
-The files can be generated by running `mvn package -Pgenerate-docs -pl flink-table-store-docs -nsu -DskipTests`, and can be integrated into the documentation using `{{ include generated/<file-name> >}}`.
+The files can be generated by running `mvn package -Pgenerate-docs -pl paimon-docs -nsu -DskipTests`, and can be integrated into the documentation using `{{ include generated/<file-name> >}}`.
 
 The documentation must be regenerated whenever
 * an `*Options` class was added or removed
diff --git a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
index 2b6a98238..6e852442c 100644
--- a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
@@ -453,8 +453,7 @@ class ConfigOptionsDocGeneratorTest {
         final OptionsClassLocation[] locations =
                 new OptionsClassLocation[] {
                     new OptionsClassLocation(
-                            "flink-table-store-docs",
-                            TestCommonOptions.class.getPackage().getName())
+                            "paimon-docs", TestCommonOptions.class.getPackage().getName())
                 };
         ConfigOptionsDocGenerator.generateCommonSection(
                 projectRootDir, outputDirectory, locations, "src/test/java");
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
index cb1848b70..91dc2f6ab 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
@@ -106,6 +106,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "org.apache.paimon.connector.action.FlinkActions",
                         "-D",
                         "execution.checkpointing.interval=1s",
+                        "-Dclassloader.resolve-order=parent-first",
                         "--detached",
                         "lib/flink-table-store.jar",
                         "compact",
@@ -168,6 +169,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "1",
                         "-c",
                         "org.apache.paimon.connector.action.FlinkActions",
+                        "-Dclassloader.resolve-order=parent-first",
                         "lib/flink-table-store.jar",
                         "drop-partition",
                         "--warehouse",
@@ -227,6 +229,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "1",
                         "-c",
                         "org.apache.paimon.connector.action.FlinkActions",
+                        "-Dclassloader.resolve-order=parent-first",
                         "lib/flink-table-store.jar",
                         "delete",
                         "--warehouse",
@@ -294,6 +297,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "1",
                         "-c",
                         "org.apache.paimon.connector.action.FlinkActions",
+                        "-Dclassloader.resolve-order=parent-first",
                         "lib/flink-table-store.jar",
                         "merge-into",
                         "--warehouse",
diff --git a/paimon-filesystems/paimon-oss/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader b/paimon-filesystems/paimon-oss/src/main/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
similarity index 100%
rename from paimon-filesystems/paimon-oss/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
rename to paimon-filesystems/paimon-oss/src/main/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
diff --git a/paimon-filesystems/paimon-s3/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader b/paimon-filesystems/paimon-s3/src/main/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
similarity index 100%
rename from paimon-filesystems/paimon-s3/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
rename to paimon-filesystems/paimon-s3/src/main/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
diff --git a/paimon-format/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory b/paimon-format/src/main/resources/META-INF/services/org.apache.paimon.format.FileFormatFactory
similarity index 100%
rename from paimon-format/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
rename to paimon-format/src/main/resources/META-INF/services/org.apache.paimon.format.FileFormatFactory


[incubator-paimon] 14/32: [core] Rename paimon file

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 866e8ca484bbe7fa81e062d2dcff63494d9b5012
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 14:18:26 2023 +0800

    [core] Rename paimon file
---
 .../org/apache/flink/table/store/CoreOptions.java  |  2 +-
 .../store => paimon}/file/AbstractFileStore.java   | 18 ++++----
 .../store => paimon}/file/AppendOnlyFileStore.java | 10 ++---
 .../table/store => paimon}/file/FileStore.java     | 16 +++----
 .../table/store => paimon}/file/KeyValue.java      |  6 +--
 .../store => paimon}/file/KeyValueFileStore.java   | 16 +++----
 .../store => paimon}/file/KeyValueSerializer.java  |  6 +--
 .../table/store => paimon}/file/Snapshot.java      | 12 ++---
 .../table/store => paimon}/file/WriteMode.java     |  2 +-
 .../file/append/AppendOnlyCompactManager.java      | 14 +++---
 .../file/append/AppendOnlyWriter.java              | 22 ++++-----
 .../file/casting/CastExecutor.java                 |  2 +-
 .../file/casting/CastExecutors.java                |  2 +-
 .../file/casting/CastFieldGetter.java              |  2 +-
 .../store => paimon}/file/casting/CastedRow.java   |  2 +-
 .../file/catalog/AbstractCatalog.java              |  4 +-
 .../store => paimon}/file/catalog/Catalog.java     |  6 +--
 .../file/catalog/CatalogFactory.java               |  2 +-
 .../store => paimon}/file/catalog/CatalogLock.java |  2 +-
 .../file/catalog/CatalogUtils.java                 |  2 +-
 .../file/catalog/FileSystemCatalog.java            | 10 ++---
 .../file/catalog/FileSystemCatalogFactory.java     |  2 +-
 .../store => paimon}/file/catalog/Identifier.java  |  4 +-
 .../file/compact/CompactFutureManager.java         |  2 +-
 .../file/compact/CompactManager.java               |  4 +-
 .../file/compact/CompactResult.java                |  4 +-
 .../store => paimon}/file/compact/CompactTask.java |  4 +-
 .../store => paimon}/file/compact/CompactUnit.java |  6 +--
 .../file/compact/NoopCompactManager.java           |  4 +-
 .../file/compression/BlockCompressionFactory.java  |  2 +-
 .../file/compression/BlockCompressor.java          |  2 +-
 .../file/compression/BlockDecompressor.java        |  2 +-
 .../compression/BufferCompressionException.java    |  2 +-
 .../compression/BufferDecompressionException.java  |  2 +-
 .../file/compression/CompressorUtils.java          |  2 +-
 .../compression/Lz4BlockCompressionFactory.java    |  2 +-
 .../file/compression/Lz4BlockCompressor.java       |  6 +--
 .../file/compression/Lz4BlockDecompressor.java     |  8 ++--
 .../file/disk/AbstractFileIOChannel.java           |  2 +-
 .../file/disk/BufferFileChannelReader.java         |  4 +-
 .../file/disk/BufferFileReader.java                |  4 +-
 .../file/disk/BufferFileReaderImpl.java            |  4 +-
 .../file/disk/BufferFileWriter.java                |  4 +-
 .../file/disk/BufferFileWriterImpl.java            |  4 +-
 .../file/disk/ChannelReaderInputView.java          |  8 ++--
 .../file/disk/ChannelReaderInputViewIterator.java  |  4 +-
 .../file/disk/ChannelWithMeta.java                 |  2 +-
 .../file/disk/ChannelWriterOutputView.java         |  8 ++--
 .../file/disk/FileChannelManager.java              |  2 +-
 .../file/disk/FileChannelManagerImpl.java          |  6 +--
 .../file/disk/FileChannelUtil.java                 |  4 +-
 .../store => paimon}/file/disk/FileIOChannel.java  |  2 +-
 .../store => paimon}/file/disk/IOManager.java      |  6 +--
 .../store => paimon}/file/disk/IOManagerImpl.java  |  6 +--
 .../file/io/AbstractFileRecordIterator.java        |  6 +--
 .../store => paimon}/file/io/CompactIncrement.java |  2 +-
 .../store => paimon}/file/io/DataFileMeta.java     | 10 ++---
 .../file/io/DataFileMetaSerializer.java            | 10 ++---
 .../file/io/DataFilePathFactory.java               |  2 +-
 .../table/store => paimon}/file/io/FileWriter.java |  2 +-
 .../file/io/KeyValueDataFileRecordReader.java      | 10 ++---
 .../file/io/KeyValueDataFileWriter.java            |  8 ++--
 .../file/io/KeyValueFileReaderFactory.java         | 14 +++---
 .../file/io/KeyValueFileWriterFactory.java         |  8 ++--
 .../file/io/NewFilesIncrement.java                 |  2 +-
 .../file/io/RollingFileWriter.java                 |  2 +-
 .../file/io/RowDataFileRecordReader.java           |  6 +--
 .../file/io/RowDataFileWriter.java                 |  6 +--
 .../file/io/RowDataRollingFileWriter.java          |  2 +-
 .../store => paimon}/file/io/SingleFileWriter.java |  2 +-
 .../file/io/StatsCollectingSingleFileWriter.java   |  2 +-
 .../store => paimon}/file/manifest/FileKind.java   |  2 +-
 .../file/manifest/ManifestCommittable.java         |  2 +-
 .../manifest/ManifestCommittableSerializer.java    |  2 +-
 .../file/manifest/ManifestEntry.java               |  8 ++--
 .../file/manifest/ManifestEntrySerializer.java     | 10 ++---
 .../file/manifest/ManifestFile.java                | 18 ++++----
 .../file/manifest/ManifestFileMeta.java            |  6 +--
 .../file/manifest/ManifestFileMetaSerializer.java  |  6 +--
 .../file/manifest/ManifestList.java                |  8 ++--
 .../table/store => paimon}/file/memory/Buffer.java |  2 +-
 .../file/memory/HeapMemorySegmentPool.java         |  2 +-
 .../store => paimon}/file/memory/MemoryOwner.java  |  2 +-
 .../file/memory/MemoryPoolFactory.java             |  2 +-
 .../file/memory/MemorySegmentPool.java             |  2 +-
 .../file/mergetree/DataFileReader.java             |  4 +-
 .../file/mergetree/DropDeleteReader.java           |  4 +-
 .../file/mergetree/LevelSortedRun.java             |  2 +-
 .../store => paimon}/file/mergetree/Levels.java    |  4 +-
 .../file/mergetree/LookupLevels.java               |  6 +--
 .../file/mergetree/MergeTreeReaders.java           | 18 ++++----
 .../file/mergetree/MergeTreeWriter.java            | 30 ++++++-------
 .../file/mergetree/SortBufferWriteBuffer.java      | 22 ++++-----
 .../store => paimon}/file/mergetree/SortedRun.java |  4 +-
 .../file/mergetree/WriteBuffer.java                |  6 +--
 .../mergetree/compact/AbstractCompactRewriter.java |  8 ++--
 .../compact/ChangelogMergeTreeRewriter.java        | 20 ++++-----
 .../file/mergetree/compact/ChangelogResult.java    |  4 +-
 .../file/mergetree/compact/CompactRewriter.java    |  8 ++--
 .../file/mergetree/compact/CompactStrategy.java    |  6 +--
 .../file/mergetree/compact/ConcatRecordReader.java |  2 +-
 .../compact/DeduplicateMergeFunction.java          |  4 +-
 .../mergetree/compact/ForceUpLevel0Compaction.java |  6 +--
 .../compact/FullChangelogMergeFunctionWrapper.java |  4 +-
 .../FullChangelogMergeTreeCompactRewriter.java     | 12 ++---
 .../file/mergetree/compact/IntervalPartition.java  |  6 +--
 .../LookupChangelogMergeFunctionWrapper.java       |  4 +-
 .../file/mergetree/compact/LookupCompaction.java   |  6 +--
 .../mergetree/compact/LookupMergeFunction.java     |  4 +-
 .../compact/LookupMergeTreeCompactRewriter.java    | 14 +++---
 .../file/mergetree/compact/MergeFunction.java      |  4 +-
 .../mergetree/compact/MergeFunctionFactory.java    |  2 +-
 .../mergetree/compact/MergeFunctionWrapper.java    |  4 +-
 .../mergetree/compact/MergeTreeCompactManager.java | 18 ++++----
 .../compact/MergeTreeCompactRewriter.java          | 18 ++++----
 .../mergetree/compact/MergeTreeCompactTask.java    | 12 ++---
 .../compact/PartialUpdateMergeFunction.java        |  4 +-
 .../compact/ReducerMergeFunctionWrapper.java       |  4 +-
 .../file/mergetree/compact/SortMergeReader.java    |  4 +-
 .../mergetree/compact/UniversalCompaction.java     |  8 ++--
 .../mergetree/compact/ValueCountMergeFunction.java |  4 +-
 .../compact/aggregate/AggregateMergeFunction.java  |  8 ++--
 .../compact/aggregate/FieldAggregator.java         |  2 +-
 .../compact/aggregate/FieldBoolAndAgg.java         |  2 +-
 .../compact/aggregate/FieldBoolOrAgg.java          |  2 +-
 .../compact/aggregate/FieldIgnoreRetractAgg.java   |  2 +-
 .../aggregate/FieldLastNonNullValueAgg.java        |  2 +-
 .../compact/aggregate/FieldLastValueAgg.java       |  2 +-
 .../compact/aggregate/FieldListaggAgg.java         |  2 +-
 .../mergetree/compact/aggregate/FieldMaxAgg.java   |  2 +-
 .../mergetree/compact/aggregate/FieldMinAgg.java   |  2 +-
 .../compact/aggregate/FieldPrimaryKeyAgg.java      |  2 +-
 .../mergetree/compact/aggregate/FieldSumAgg.java   |  2 +-
 .../file/operation/AbstractFileStoreScan.java      | 24 +++++-----
 .../file/operation/AbstractFileStoreWrite.java     | 22 ++++-----
 .../file/operation/AppendOnlyFileStoreRead.java    | 24 +++++-----
 .../file/operation/AppendOnlyFileStoreScan.java    | 16 +++----
 .../file/operation/AppendOnlyFileStoreWrite.java   | 28 ++++++------
 .../file/operation/FileStoreCommit.java            |  4 +-
 .../file/operation/FileStoreCommitImpl.java        | 26 +++++------
 .../file/operation/FileStoreExpire.java            |  2 +-
 .../file/operation/FileStoreExpireImpl.java        | 18 ++++----
 .../file/operation/FileStoreRead.java              |  2 +-
 .../file/operation/FileStoreScan.java              | 10 ++---
 .../file/operation/FileStoreWrite.java             | 10 ++---
 .../file/operation/KeyValueFileStoreRead.java      | 38 ++++++++--------
 .../file/operation/KeyValueFileStoreScan.java      | 18 ++++----
 .../file/operation/KeyValueFileStoreWrite.java     | 52 +++++++++++-----------
 .../store => paimon}/file/operation/Lock.java      |  6 +--
 .../file/operation/MemoryFileStoreWrite.java       | 12 ++---
 .../file/operation/PartitionExpire.java            |  8 ++--
 .../file/operation/ReverseReader.java              |  4 +-
 .../store => paimon}/file/operation/ScanKind.java  |  2 +-
 .../file/partition/PartitionTimeExtractor.java     |  2 +-
 .../file/schema/IndexCastMapping.java              |  4 +-
 .../file/schema/KeyValueFieldsExtractor.java       |  2 +-
 .../table/store => paimon}/file/schema/Schema.java |  2 +-
 .../store => paimon}/file/schema/SchemaChange.java |  2 +-
 .../file/schema/SchemaEvolutionUtil.java           | 10 ++---
 .../file/schema/SchemaManager.java                 | 28 ++++++------
 .../file/schema/SchemaSerializer.java              |  6 +--
 .../file/schema/SchemaValidation.java              | 10 ++---
 .../file/schema/SystemColumns.java                 |  2 +-
 .../store => paimon}/file/schema/TableSchema.java  |  4 +-
 .../file/sort/AbstractBinaryExternalMerger.java    | 20 ++++-----
 .../file/sort/BinaryExternalMerger.java            | 12 ++---
 .../file/sort/BinaryExternalSortBuffer.java        | 18 ++++----
 .../file/sort/BinaryInMemorySortBuffer.java        |  6 +--
 .../file/sort/BinaryIndexedSortable.java           |  4 +-
 .../file/sort/BinaryMergeIterator.java             |  4 +-
 .../table/store => paimon}/file/sort/HeapSort.java |  2 +-
 .../file/sort/IndexedSortable.java                 |  2 +-
 .../store => paimon}/file/sort/IndexedSorter.java  |  2 +-
 .../file/sort/PartialOrderPriorityQueue.java       |  2 +-
 .../store => paimon}/file/sort/QuickSort.java      |  2 +-
 .../store => paimon}/file/sort/SortBuffer.java     |  4 +-
 .../file/sort/SpillChannelManager.java             |  4 +-
 .../file/stats/BinaryTableStats.java               |  6 +--
 .../file/stats/FieldStatsArraySerializer.java      |  6 +--
 .../file/stats/FieldStatsConverters.java           |  6 +--
 .../file/utils/BulkFormatMapping.java              | 14 +++---
 .../file/utils/CommitIncrement.java                |  6 +--
 .../file/utils/ExecutorThreadFactory.java          |  2 +-
 .../file/utils/FatalExitExceptionHandler.java      |  2 +-
 .../file/utils/FileStorePathFactory.java           |  4 +-
 .../store => paimon}/file/utils/FileUtils.java     |  2 +-
 .../file/utils/IteratorRecordReader.java           |  2 +-
 .../file/utils/JsonDeserializer.java               |  2 +-
 .../store => paimon}/file/utils/JsonSerdeUtil.java |  6 +--
 .../file/utils/JsonSerializer.java                 |  2 +-
 .../file/utils/KeyComparatorSupplier.java          |  2 +-
 .../file/utils/MutableObjectIterator.java          |  2 +-
 .../file/utils/ObjectSerializer.java               |  2 +-
 .../store => paimon}/file/utils/OffsetRow.java     |  2 +-
 .../file/utils/PartitionPathUtils.java             |  2 +-
 .../store => paimon}/file/utils/RecordWriter.java  |  6 +--
 .../store => paimon}/file/utils/Restorable.java    |  2 +-
 .../file/utils/RowDataPartitionComputer.java       |  2 +-
 .../file/utils/SerializableSupplier.java           |  2 +-
 .../file/utils/SerializationUtils.java             |  2 +-
 .../file/utils/SnapshotManager.java                |  6 +--
 .../store => paimon}/file/utils/ThreadUtils.java   |  2 +-
 .../file/utils/VersionedObjectSerializer.java      |  2 +-
 .../paimon/table/AbstractFileStoreTable.java       | 12 ++---
 .../paimon/table/AppendOnlyFileStoreTable.java     | 14 +++---
 .../table/ChangelogValueCountFileStoreTable.java   | 24 +++++-----
 .../table/ChangelogWithKeyFileStoreTable.java      | 26 +++++------
 .../java/org/apache/paimon/table/DataTable.java    |  2 +-
 .../org/apache/paimon/table/FileStoreTable.java    |  8 ++--
 .../apache/paimon/table/FileStoreTableFactory.java |  6 +--
 .../java/org/apache/paimon/table/TableUtils.java   |  2 +-
 .../apache/paimon/table/sink/BucketComputer.java   |  2 +-
 .../paimon/table/sink/CommitMessageImpl.java       |  8 ++--
 .../paimon/table/sink/CommitMessageSerializer.java | 10 ++---
 .../apache/paimon/table/sink/InnerTableCommit.java |  2 +-
 .../paimon/table/sink/PartitionComputer.java       |  2 +-
 .../paimon/table/sink/SinkRecordConverter.java     |  2 +-
 .../apache/paimon/table/sink/TableCommitImpl.java  | 10 ++---
 .../org/apache/paimon/table/sink/TableWrite.java   |  2 +-
 .../apache/paimon/table/sink/TableWriteImpl.java   | 12 ++---
 .../paimon/table/source/AbstractDataTableScan.java |  4 +-
 .../table/source/AppendOnlySplitGenerator.java     |  2 +-
 .../table/source/BatchDataTableScanImpl.java       |  2 +-
 .../org/apache/paimon/table/source/DataSplit.java  |  6 +--
 .../apache/paimon/table/source/DataTableScan.java  |  2 +-
 .../paimon/table/source/KeyValueTableRead.java     |  4 +-
 .../table/source/MergeTreeSplitGenerator.java      |  6 +--
 .../table/source/ResetRowKindRecordIterator.java   |  2 +-
 .../apache/paimon/table/source/SplitGenerator.java |  2 +-
 .../paimon/table/source/StreamDataTableScan.java   |  2 +-
 .../table/source/StreamDataTableScanImpl.java      |  4 +-
 .../paimon/table/source/StreamTableScan.java       |  2 +-
 .../org/apache/paimon/table/source/TableRead.java  |  4 +-
 .../paimon/table/source/TableStreamingReader.java  |  2 +-
 .../source/ValueContentRowDataRecordIterator.java  |  2 +-
 .../source/ValueCountRowDataRecordIterator.java    |  2 +-
 .../snapshot/BoundedWatermarkFollowUpScanner.java  |  2 +-
 .../source/snapshot/CompactedStartingScanner.java  |  4 +-
 .../CompactionChangelogFollowUpScanner.java        |  4 +-
 .../ContinuousCompactorFollowUpScanner.java        |  4 +-
 .../ContinuousCompactorStartingScanner.java        |  4 +-
 .../ContinuousFromSnapshotStartingScanner.java     |  2 +-
 .../ContinuousFromTimestampStartingScanner.java    |  2 +-
 .../snapshot/ContinuousLatestStartingScanner.java  |  2 +-
 .../source/snapshot/DeltaFollowUpScanner.java      |  4 +-
 .../table/source/snapshot/FollowUpScanner.java     |  2 +-
 .../table/source/snapshot/FullStartingScanner.java |  4 +-
 .../snapshot/InputChangelogFollowUpScanner.java    |  4 +-
 .../table/source/snapshot/SnapshotSplitReader.java |  6 +--
 .../source/snapshot/SnapshotSplitReaderImpl.java   | 14 +++---
 .../table/source/snapshot/StartingScanner.java     |  2 +-
 .../StaticFromSnapshotStartingScanner.java         |  4 +-
 .../StaticFromTimestampStartingScanner.java        |  4 +-
 .../apache/paimon/table/system/AuditLogTable.java  |  6 +--
 .../apache/paimon/table/system/BucketsTable.java   |  8 ++--
 .../org/apache/paimon/table/system/FilesTable.java | 20 ++++-----
 .../apache/paimon/table/system/OptionsTable.java   |  8 ++--
 .../apache/paimon/table/system/SchemasTable.java   | 12 ++---
 .../apache/paimon/table/system/SnapshotsTable.java | 10 ++---
 ....org.apache.paimon.file.catalog.CatalogFactory} |  2 +-
 .../store => paimon}/file/FileFormatTest.java      |  2 +-
 .../file/KeyValueSerializerTest.java               |  6 +--
 .../table/store => paimon}/file/TestFileStore.java | 44 +++++++++---------
 .../file/TestKeyValueGenerator.java                | 14 +++---
 .../file/append/AppendOnlyCompactManagerTest.java  |  6 +--
 .../file/append/AppendOnlyWriterTest.java          | 16 +++----
 .../file/append/IterativeCompactTaskTest.java      |  8 ++--
 .../file/casting/CastExecutorTest.java             |  2 +-
 .../file/catalog/CatalogFactoryTest.java           |  2 +-
 .../file/disk/BufferFileWriterReaderTest.java      |  4 +-
 .../store => paimon}/file/disk/IOManagerTest.java  |  2 +-
 .../file/format/FileFormatSuffixTest.java          | 16 +++----
 .../file/format/FileStatsExtractingAvroFormat.java |  4 +-
 .../FileStatsExtractingAvroFormatFactory.java      |  2 +-
 .../file/format/FlushingFileFormat.java            |  2 +-
 .../file/io/DataFileMetaSerializerTest.java        |  4 +-
 .../file/io/DataFilePathFactoryTest.java           |  2 +-
 .../file/io/DataFileTestDataGenerator.java         |  8 ++--
 .../file/io/DataFileTestUtils.java                 |  4 +-
 .../file/io/KeyValueFileReadWriteTest.java         | 20 ++++-----
 .../file/io/RollingFileWriterTest.java             |  2 +-
 .../ManifestCommittableSerializerTest.java         | 12 ++---
 .../file/manifest/ManifestEntrySerializerTest.java |  6 +--
 .../manifest/ManifestFileMetaSerializerTest.java   |  6 +--
 .../file/manifest/ManifestFileMetaTest.java        | 12 ++---
 .../file/manifest/ManifestFileTest.java            | 12 ++---
 .../file/manifest/ManifestListTest.java            |  8 ++--
 .../file/manifest/ManifestTestDataGenerator.java   | 10 ++---
 .../file/memory/MemoryPoolFactoryTest.java         |  2 +-
 .../file/mergetree/LevelsTest.java                 |  6 +--
 .../file/mergetree/LookupLevelsTest.java           | 26 +++++------
 .../file/mergetree/MergeTreeTest.java              | 42 ++++++++---------
 .../mergetree/SortBufferWriteBufferTestBase.java   | 20 ++++-----
 .../compact/CombiningRecordReaderTestBase.java     |  8 ++--
 .../mergetree/compact/ConcatRecordReaderTest.java  |  8 ++--
 .../compact/ForceUpLevel0CompactionTest.java       | 10 ++---
 .../FullChangelogMergeFunctionWrapperTestBase.java |  6 +--
 .../mergetree/compact/IntervalPartitionTest.java   | 10 ++---
 .../LookupChangelogMergeFunctionWrapperTest.java   | 12 ++---
 .../mergetree/compact/MergeFunctionTestUtils.java  |  6 +--
 .../compact/MergeTreeCompactManagerTest.java       | 16 +++----
 .../ReducerMergeFunctionWrapperTestBase.java       |  6 +--
 .../mergetree/compact/SortMergeReaderTestBase.java |  8 ++--
 .../mergetree/compact/UniversalCompactionTest.java | 12 ++---
 .../compact/aggregate/FieldAggregatorTest.java     |  2 +-
 .../file/operation/CleanedFileStoreExpireTest.java | 12 ++---
 .../file/operation/FileStoreCommitTest.java        | 26 +++++------
 .../file/operation/FileStoreExpireTestBase.java    | 18 ++++----
 .../file/operation/KeyValueFileStoreReadTest.java  | 24 +++++-----
 .../file/operation/KeyValueFileStoreScanTest.java  | 24 +++++-----
 .../file/operation/PartitionExpireTest.java        |  6 +--
 .../file/operation/TestCommitThread.java           | 26 +++++------
 .../operation/UncleanedFileStoreExpireTest.java    |  4 +-
 .../file/partition/PartitionTimeExtractorTest.java |  2 +-
 .../file/schema/DataTypeJsonParserTest.java        |  4 +-
 .../file/schema/SchemaEvolutionUtilTest.java       |  2 +-
 .../file/schema/SchemaManagerTest.java             |  8 ++--
 .../store => paimon}/file/schema/SchemaUtils.java  |  2 +-
 .../file/schema/TableSchemaSerializationTest.java  |  6 +--
 .../file/schema/TableSchemaTest.java               |  2 +-
 .../file/sort/BinaryExternalSortBufferTest.java    | 10 ++---
 .../file/sort/IntNormalizedKeyComputer.java        |  2 +-
 .../file/sort/IntRecordComparator.java             |  2 +-
 .../file/stats/BinaryTableStatsTest.java           |  2 +-
 .../file/stats/FieldStatsArraySerializerTest.java  | 10 ++---
 .../file/stats/FieldStatsCollectorTest.java        |  2 +-
 .../file/stats/StatsTestUtils.java                 |  2 +-
 .../file/stats/TestFileStatsExtractor.java         |  6 +--
 .../file/utils/BlockingIterator.java               |  2 +-
 .../store => paimon}/file/utils/FailingFileIO.java |  2 +-
 .../file/utils/FileStorePathFactoryTest.java       |  4 +-
 .../file/utils/ObjectSerializerTestBase.java       |  2 +-
 .../store => paimon}/file/utils/OffsetRowTest.java |  2 +-
 .../file/utils/ReusingKeyValue.java                |  4 +-
 .../file/utils/ReusingTestData.java                |  4 +-
 .../file/utils/SnapshotManagerTest.java            |  2 +-
 .../file/utils/TestReusingRecordReader.java        |  4 +-
 .../file/utils/TraceableFileIO.java                |  2 +-
 .../paimon/table/AppendOnlyFileDataTableTest.java  |  4 +-
 .../paimon/table/AppendOnlyFileStoreTableTest.java | 12 ++---
 .../AppendOnlyTableColumnTypeFileDataTest.java     |  6 +--
 .../AppendOnlyTableColumnTypeFileMetaTest.java     | 10 ++---
 .../table/AppendOnlyTableFileMetaFilterTest.java   | 10 ++---
 .../ChangelogValueCountColumnTypeFileDataTest.java |  6 +--
 .../ChangelogValueCountColumnTypeFileMetaTest.java | 10 ++---
 .../ChangelogValueCountFileDataTableTest.java      |  6 +--
 .../ChangelogValueCountFileMetaFilterTest.java     | 10 ++---
 .../ChangelogValueCountFileStoreTableTest.java     | 14 +++---
 .../ChangelogWithKeyColumnTypeFileDataTest.java    |  6 +--
 .../table/ChangelogWithKeyFileDataTableTest.java   |  8 ++--
 .../table/ChangelogWithKeyFileMetaFilterTest.java  | 10 ++---
 .../table/ChangelogWithKeyFileStoreTableTest.java  | 12 ++---
 ...hangelogWithKeyTableColumnTypeFileMetaTest.java | 10 ++---
 .../paimon/table/ColumnTypeFileMetaTestBase.java   |  4 +-
 .../paimon/table/FileDataFilterTestBase.java       |  2 +-
 .../paimon/table/FileMetaFilterTestBase.java       |  4 +-
 .../paimon/table/FileStoreTableTestBase.java       | 16 +++----
 .../paimon/table/SchemaEvolutionTableTestBase.java | 14 +++---
 .../apache/paimon/table/SchemaEvolutionTest.java   | 10 ++---
 .../paimon/table/WritePreemptMemoryTest.java       | 10 ++---
 .../table/sink/CommitMessageSerializerTest.java    | 10 ++---
 .../paimon/table/sink/SinkRecordConverterTest.java |  2 +-
 .../apache/paimon/table/sink/TableWriteTest.java   | 12 ++---
 .../table/source/BatchDataTableScanTest.java       |  2 +-
 .../source/RowDataRecordIteratorTestBase.java      |  6 +--
 .../paimon/table/source/SplitGeneratorTest.java    |  4 +-
 .../org/apache/paimon/table/source/SplitTest.java  |  4 +-
 .../ValueContentRowDataRecordIteratorTest.java     |  2 +-
 .../ValueCountRowDataRecordIteratorTest.java       |  2 +-
 .../BoundedWatermarkFollowUpScannerTest.java       |  6 +--
 .../snapshot/CompactedStartingScannerTest.java     |  2 +-
 .../CompactionChangelogFollowUpScannerTest.java    |  4 +-
 .../ContinuousCompactorFollowUpScannerTest.java    |  6 +--
 .../ContinuousCompactorStartingScannerTest.java    |  2 +-
 ...ContinuousFromTimestampStartingScannerTest.java |  2 +-
 .../ContinuousLatestStartingScannerTest.java       |  2 +-
 .../source/snapshot/DeltaFollowUpScannerTest.java  |  4 +-
 .../source/snapshot/FullStartingScannerTest.java   |  2 +-
 .../InputChangelogFollowUpScannerTest.java         |  4 +-
 .../table/source/snapshot/ScannerTestBase.java     | 10 ++---
 ...tore.org.apache.paimon.format.FileFormatFactory |  2 +-
 ...k.table.store.org.apache.paimon.fs.FileIOLoader |  4 +-
 .../apache/paimon/benchmark/TableBenchmark.java    |  8 ++--
 .../apache/paimon/connector/CatalogITCaseBase.java |  4 +-
 .../connector/ContinuousFileStoreITCase.java       |  6 +--
 .../apache/paimon/connector/FlinkActionITCase.java |  2 +-
 .../apache/paimon/connector/LookupJoinITCase.java  |  2 +-
 .../apache/paimon/connector/CatalogITCaseBase.java |  4 +-
 .../connector/ContinuousFileStoreITCase.java       |  6 +--
 .../apache/paimon/connector/FlinkActionITCase.java |  2 +-
 .../apache/paimon/connector/LookupJoinITCase.java  |  2 +-
 .../connector/AbstractTableStoreFactory.java       |  4 +-
 .../org/apache/paimon/connector/FlinkCatalog.java  |  8 ++--
 .../paimon/connector/FlinkCatalogFactory.java      |  4 +-
 .../connector/TableStoreConnectorFactory.java      |  4 +-
 .../org/apache/paimon/connector/action/Action.java |  2 +-
 .../apache/paimon/connector/action/ActionBase.java | 10 ++---
 .../connector/lookup/FileStoreLookupFunction.java  |  2 +-
 .../connector/sink/BucketStreamPartitioner.java    |  2 +-
 399 files changed, 1349 insertions(+), 1349 deletions(-)

diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
index 50821f30e..e003edda6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store;
 
-import org.apache.flink.table.store.file.WriteMode;
+import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.MemorySize;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
similarity index 88%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
index f986978cd..5b52cc48a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file;
+package org.apache.paimon.file;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.manifest.ManifestFile;
-import org.apache.flink.table.store.file.manifest.ManifestList;
-import org.apache.flink.table.store.file.operation.FileStoreCommitImpl;
-import org.apache.flink.table.store.file.operation.FileStoreExpireImpl;
-import org.apache.flink.table.store.file.operation.PartitionExpire;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.manifest.ManifestFile;
+import org.apache.paimon.file.manifest.ManifestList;
+import org.apache.paimon.file.operation.FileStoreCommitImpl;
+import org.apache.paimon.file.operation.FileStoreExpireImpl;
+import org.apache.paimon.file.operation.PartitionExpire;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
similarity index 90%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
index b4346d08e..a62f59aa4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file;
+package org.apache.paimon.file;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreRead;
-import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreScan;
-import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreWrite;
-import org.apache.flink.table.store.file.schema.SchemaManager;
+import org.apache.paimon.file.operation.AppendOnlyFileStoreRead;
+import org.apache.paimon.file.operation.AppendOnlyFileStoreScan;
+import org.apache.paimon.file.operation.AppendOnlyFileStoreWrite;
+import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/FileStore.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/FileStore.java
similarity index 74%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/FileStore.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/FileStore.java
index 6c1091103..4c032ddcc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/FileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/FileStore.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file;
+package org.apache.paimon.file;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.operation.FileStoreCommit;
-import org.apache.flink.table.store.file.operation.FileStoreExpire;
-import org.apache.flink.table.store.file.operation.FileStoreRead;
-import org.apache.flink.table.store.file.operation.FileStoreScan;
-import org.apache.flink.table.store.file.operation.FileStoreWrite;
-import org.apache.flink.table.store.file.operation.PartitionExpire;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.operation.FileStoreCommit;
+import org.apache.paimon.file.operation.FileStoreExpire;
+import org.apache.paimon.file.operation.FileStoreRead;
+import org.apache.paimon.file.operation.FileStoreScan;
+import org.apache.paimon.file.operation.FileStoreWrite;
+import org.apache.paimon.file.operation.PartitionExpire;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.types.RowType;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValue.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValue.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValue.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValue.java
index 826cf79b4..b35273096 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValue.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValue.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file;
+package org.apache.paimon.file;
 
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
@@ -34,8 +34,8 @@ import java.util.List;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.file.schema.SystemColumns.SEQUENCE_NUMBER;
-import static org.apache.flink.table.store.file.schema.SystemColumns.VALUE_KIND;
+import static org.apache.paimon.file.schema.SystemColumns.SEQUENCE_NUMBER;
+import static org.apache.paimon.file.schema.SystemColumns.VALUE_KIND;
 import static org.apache.paimon.utils.Preconditions.checkState;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
similarity index 87%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
index 494a550df..b8165e177 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file;
+package org.apache.paimon.file;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.flink.table.store.file.operation.KeyValueFileStoreRead;
-import org.apache.flink.table.store.file.operation.KeyValueFileStoreScan;
-import org.apache.flink.table.store.file.operation.KeyValueFileStoreWrite;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.utils.KeyComparatorSupplier;
+import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.file.operation.KeyValueFileStoreRead;
+import org.apache.paimon.file.operation.KeyValueFileStoreScan;
+import org.apache.paimon.file.operation.KeyValueFileStoreWrite;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.utils.KeyComparatorSupplier;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueSerializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueSerializer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java
index 52d02f0e8..3fd0c067a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file;
+package org.apache.paimon.file;
 
-import org.apache.flink.table.store.file.utils.ObjectSerializer;
-import org.apache.flink.table.store.file.utils.OffsetRow;
+import org.apache.paimon.file.utils.ObjectSerializer;
+import org.apache.paimon.file.utils.OffsetRow;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/Snapshot.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/Snapshot.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/Snapshot.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/Snapshot.java
index b1f98bf60..2321f0327 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/Snapshot.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/Snapshot.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file;
+package org.apache.paimon.file;
 
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
-import org.apache.flink.table.store.file.manifest.ManifestList;
-import org.apache.flink.table.store.file.operation.FileStoreScan;
-import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.manifest.ManifestFileMeta;
+import org.apache.paimon.file.manifest.ManifestList;
+import org.apache.paimon.file.operation.FileStoreScan;
+import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/WriteMode.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/WriteMode.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/WriteMode.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/WriteMode.java
index 842de7ba1..4a4c63bf7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/WriteMode.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/WriteMode.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file;
+package org.apache.paimon.file;
 
 import org.apache.paimon.options.description.DescribedEnum;
 import org.apache.paimon.options.description.InlineElement;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java
index f93b2a8fa..fbdf6a619 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.append;
+package org.apache.paimon.file.append;
 
-import org.apache.flink.table.store.file.compact.CompactFutureManager;
-import org.apache.flink.table.store.file.compact.CompactResult;
-import org.apache.flink.table.store.file.compact.CompactTask;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.DataFilePathFactory;
+import org.apache.paimon.file.compact.CompactFutureManager;
+import org.apache.paimon.file.compact.CompactResult;
+import org.apache.paimon.file.compact.CompactTask;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.utils.Preconditions;
 
@@ -39,7 +39,7 @@ import java.util.Set;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ExecutorService;
 
-/** Compact manager for {@link org.apache.flink.table.store.file.AppendOnlyFileStore}. */
+/** Compact manager for {@link org.apache.paimon.file.AppendOnlyFileStore}. */
 public class AppendOnlyCompactManager extends CompactFutureManager {
 
     private final FileIO fileIO;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java
similarity index 91%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java
index 648485046..b0695a760 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java
@@ -17,16 +17,16 @@
  * under the License.
  */
 
-package org.apache.flink.table.store.file.append;
-
-import org.apache.flink.table.store.file.compact.CompactManager;
-import org.apache.flink.table.store.file.io.CompactIncrement;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.DataFilePathFactory;
-import org.apache.flink.table.store.file.io.NewFilesIncrement;
-import org.apache.flink.table.store.file.io.RowDataRollingFileWriter;
-import org.apache.flink.table.store.file.utils.CommitIncrement;
-import org.apache.flink.table.store.file.utils.RecordWriter;
+package org.apache.paimon.file.append;
+
+import org.apache.paimon.file.compact.CompactManager;
+import org.apache.paimon.file.io.CompactIncrement;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFilePathFactory;
+import org.apache.paimon.file.io.NewFilesIncrement;
+import org.apache.paimon.file.io.RowDataRollingFileWriter;
+import org.apache.paimon.file.utils.CommitIncrement;
+import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
@@ -43,7 +43,7 @@ import java.util.Collections;
 import java.util.List;
 import java.util.concurrent.ExecutionException;
 
-import static org.apache.flink.table.store.file.io.DataFileMeta.getMaxSequenceNumber;
+import static org.apache.paimon.file.io.DataFileMeta.getMaxSequenceNumber;
 
 /**
  * A {@link RecordWriter} implementation that only accepts records which are always insert
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutor.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastExecutor.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutor.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastExecutor.java
index 3dbb04cc3..bfc2aeb0a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutor.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastExecutor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.casting;
+package org.apache.paimon.file.casting;
 
 /**
  * Interface to model a function that performs the casting of a value from one type to another.
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutors.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java
similarity index 99%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutors.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java
index 3df02be63..c09ddf027 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutors.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.casting;
+package org.apache.paimon.file.casting;
 
 import org.apache.paimon.types.BinaryType;
 import org.apache.paimon.types.CharType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastFieldGetter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastFieldGetter.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastFieldGetter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastFieldGetter.java
index 70d0f5ee8..3c7d197fb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastFieldGetter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastFieldGetter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.casting;
+package org.apache.paimon.file.casting;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastedRow.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastedRow.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java
index a8ff2dacd..4802e1341 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastedRow.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.casting;
+package org.apache.paimon.file.casting;
 
 import org.apache.paimon.types.RowKind;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java
index 0bc249a8b..2afb82fbf 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.catalog;
+package org.apache.paimon.file.catalog;
 
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.table.FileStoreTable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Catalog.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Catalog.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java
index 7acbe7161..a7fd0935a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Catalog.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.catalog;
+package org.apache.paimon.file.catalog;
 
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaChange;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaChange;
 import org.apache.paimon.table.Table;
 
 import org.apache.paimon.annotation.Experimental;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java
index e89d2794e..c5679fee2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.catalog;
+package org.apache.paimon.file.catalog;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogLock.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogLock.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogLock.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogLock.java
index c4a263c54..bed5ff5a7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogLock.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogLock.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.catalog;
+package org.apache.paimon.file.catalog;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogUtils.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogUtils.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogUtils.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogUtils.java
index 576625806..f40fda356 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.catalog;
+package org.apache.paimon.file.catalog;
 
 import org.apache.paimon.fs.Path;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalog.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalog.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalog.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalog.java
index bef1c5e9a..198e58df4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalog.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalog.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.catalog;
+package org.apache.paimon.file.catalog;
 
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaChange;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaChange;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalogFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalogFactory.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java
index 7c0b12308..d37063e76 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalogFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.catalog;
+package org.apache.paimon.file.catalog;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java
index 20c848cbe..8ed4924cc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.catalog;
+package org.apache.paimon.file.catalog;
 
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.utils.StringUtils;
@@ -26,7 +26,7 @@ import org.apache.paimon.annotation.Experimental;
 import java.io.Serializable;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.file.catalog.AbstractCatalog.DB_SUFFIX;
+import static org.apache.paimon.file.catalog.AbstractCatalog.DB_SUFFIX;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactFutureManager.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactFutureManager.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactFutureManager.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactFutureManager.java
index e07e0a97d..efb7710f3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactFutureManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactFutureManager.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compact;
+package org.apache.paimon.file.compact;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactManager.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactManager.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactManager.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactManager.java
index 24d0dfdbb..175d827e4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactManager.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compact;
+package org.apache.paimon.file.compact;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 
 import java.io.Closeable;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactResult.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactResult.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactResult.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactResult.java
index 896b26370..c71ce3ff6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactResult.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactResult.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compact;
+package org.apache.paimon.file.compact;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 
 import java.util.ArrayList;
 import java.util.Collections;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactTask.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactTask.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java
index 670d230c1..6ecea1db3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactTask.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compact;
+package org.apache.paimon.file.compact;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactUnit.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactUnit.java
similarity index 90%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactUnit.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactUnit.java
index 797ccd069..f4d8b2aeb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/CompactUnit.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactUnit.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compact;
+package org.apache.paimon.file.compact;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.mergetree.LevelSortedRun;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.LevelSortedRun;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/NoopCompactManager.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/NoopCompactManager.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java
index cc4ec3f89..d072fb52b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/NoopCompactManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compact;
+package org.apache.paimon.file.compact;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.utils.Preconditions;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BlockCompressionFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockCompressionFactory.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BlockCompressionFactory.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockCompressionFactory.java
index 033637111..276219733 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BlockCompressionFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockCompressionFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compression;
+package org.apache.paimon.file.compression;
 
 /**
  * Each compression codec has an implementation of {@link BlockCompressionFactory} to create
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BlockCompressor.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockCompressor.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BlockCompressor.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockCompressor.java
index 2cdba652a..1ccc2b002 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BlockCompressor.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockCompressor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compression;
+package org.apache.paimon.file.compression;
 
 /**
  * A compressor which compresses a whole byte array each time. It will read from and write to byte
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BlockDecompressor.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockDecompressor.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BlockDecompressor.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockDecompressor.java
index 8c7c5daf1..172720571 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BlockDecompressor.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockDecompressor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compression;
+package org.apache.paimon.file.compression;
 
 /** A decompressor which decompresses a block each time. */
 public interface BlockDecompressor {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BufferCompressionException.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BufferCompressionException.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BufferCompressionException.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BufferCompressionException.java
index 708c32f9c..bac3d9283 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BufferCompressionException.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BufferCompressionException.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compression;
+package org.apache.paimon.file.compression;
 
 /**
  * A {@code BufferCompressionException} is thrown when the target data cannot be compressed, such as
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BufferDecompressionException.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BufferDecompressionException.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BufferDecompressionException.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BufferDecompressionException.java
index 5fbaabf87..43a17e289 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/BufferDecompressionException.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BufferDecompressionException.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compression;
+package org.apache.paimon.file.compression;
 
 /**
  * A {@code BufferDecompressionException} is thrown when the target data cannot be decompressed,
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/CompressorUtils.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/CompressorUtils.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/CompressorUtils.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compression/CompressorUtils.java
index 104635c59..e780869bf 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/CompressorUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/CompressorUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compression;
+package org.apache.paimon.file.compression;
 
 /** Utils for {@link BlockCompressor}. */
 public class CompressorUtils {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/Lz4BlockCompressionFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressionFactory.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/Lz4BlockCompressionFactory.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressionFactory.java
index 63e90219b..616b72a39 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/Lz4BlockCompressionFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressionFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compression;
+package org.apache.paimon.file.compression;
 
 /** Implementation of {@link BlockCompressionFactory} for Lz4 codec. */
 public class Lz4BlockCompressionFactory implements BlockCompressionFactory {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/Lz4BlockCompressor.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressor.java
similarity index 89%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/Lz4BlockCompressor.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressor.java
index 2a282fc89..3534b5a1c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/Lz4BlockCompressor.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressor.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compression;
+package org.apache.paimon.file.compression;
 
 import net.jpountz.lz4.LZ4Compressor;
 import net.jpountz.lz4.LZ4Factory;
 
-import static org.apache.flink.table.store.file.compression.CompressorUtils.HEADER_LENGTH;
-import static org.apache.flink.table.store.file.compression.CompressorUtils.writeIntLE;
+import static org.apache.paimon.file.compression.CompressorUtils.HEADER_LENGTH;
+import static org.apache.paimon.file.compression.CompressorUtils.writeIntLE;
 
 /**
  * Encode data into LZ4 format (not compatible with the LZ4 Frame format). It reads from and writes
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/Lz4BlockDecompressor.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockDecompressor.java
similarity index 88%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/Lz4BlockDecompressor.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockDecompressor.java
index acf55b2c6..1d89f3bba 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compression/Lz4BlockDecompressor.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockDecompressor.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.compression;
+package org.apache.paimon.file.compression;
 
 import net.jpountz.lz4.LZ4Exception;
 import net.jpountz.lz4.LZ4Factory;
 import net.jpountz.lz4.LZ4FastDecompressor;
 
-import static org.apache.flink.table.store.file.compression.CompressorUtils.HEADER_LENGTH;
-import static org.apache.flink.table.store.file.compression.CompressorUtils.readIntLE;
-import static org.apache.flink.table.store.file.compression.CompressorUtils.validateLength;
+import static org.apache.paimon.file.compression.CompressorUtils.HEADER_LENGTH;
+import static org.apache.paimon.file.compression.CompressorUtils.readIntLE;
+import static org.apache.paimon.file.compression.CompressorUtils.validateLength;
 
 /**
  * Decode data written with {@link Lz4BlockCompressor}. It reads from and writes to byte arrays
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/AbstractFileIOChannel.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/AbstractFileIOChannel.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java
index 97b46b933..ea691814f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/AbstractFileIOChannel.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
 import org.apache.paimon.utils.Preconditions;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileChannelReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileChannelReader.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileChannelReader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileChannelReader.java
index ab3eb1ced..cc63babbe 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileChannelReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileChannelReader.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.memory.Buffer;
+import org.apache.paimon.file.memory.Buffer;
 
 import java.io.IOException;
 import java.nio.ByteBuffer;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java
similarity index 91%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileReader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java
index 8c4263a37..18271b0f5 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.memory.Buffer;
+import org.apache.paimon.file.memory.Buffer;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileReaderImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileReaderImpl.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileReaderImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileReaderImpl.java
index 4b450fe4c..893a73def 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileReaderImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileReaderImpl.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.memory.Buffer;
+import org.apache.paimon.file.memory.Buffer;
 
 import java.io.IOException;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java
index d58057a4b..814b240f0 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.memory.Buffer;
+import org.apache.paimon.file.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.annotation.Experimental;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriterImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriterImpl.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriterImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriterImpl.java
index 5e4de2920..6d2cbe145 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriterImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriterImpl.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.memory.Buffer;
+import org.apache.paimon.file.memory.Buffer;
 import org.apache.paimon.utils.FileIOUtils;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputView.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputView.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java
index bbc572ba8..07d9ef816 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputView.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
-import org.apache.flink.table.store.file.compression.BlockDecompressor;
-import org.apache.flink.table.store.file.memory.Buffer;
+import org.apache.paimon.file.compression.BlockCompressionFactory;
+import org.apache.paimon.file.compression.BlockDecompressor;
+import org.apache.paimon.file.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.AbstractPagedInputView;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputViewIterator.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputViewIterator.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java
index 0e9c46b10..61763e7fc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputViewIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.utils.MutableObjectIterator;
+import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWithMeta.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelWithMeta.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWithMeta.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelWithMeta.java
index 23dfb72c3..e9cbf6c27 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWithMeta.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelWithMeta.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
 /** Channel with block count and numBytesInLastBlock of file. */
 public class ChannelWithMeta {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWriterOutputView.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWriterOutputView.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java
index 27748179f..382a2081d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWriterOutputView.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
-import org.apache.flink.table.store.file.compression.BlockCompressor;
-import org.apache.flink.table.store.file.memory.Buffer;
+import org.apache.paimon.file.compression.BlockCompressionFactory;
+import org.apache.paimon.file.compression.BlockCompressor;
+import org.apache.paimon.file.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.AbstractPagedOutputView;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelManager.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelManager.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelManager.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelManager.java
index d146837cb..7b7965f6c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelManager.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
 import java.io.File;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelManagerImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelManagerImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java
index 7d758febc..00becd45a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelManagerImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.disk.FileIOChannel.Enumerator;
-import org.apache.flink.table.store.file.disk.FileIOChannel.ID;
+import org.apache.paimon.file.disk.FileIOChannel.Enumerator;
+import org.apache.paimon.file.disk.FileIOChannel.ID;
 import org.apache.paimon.utils.FileIOUtils;
 import org.apache.paimon.utils.IOUtils;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelUtil.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelUtil.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelUtil.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelUtil.java
index 898b53512..c14d58016 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelUtil.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelUtil.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
+import org.apache.paimon.file.compression.BlockCompressionFactory;
 
 import java.io.IOException;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileIOChannel.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java
similarity index 99%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileIOChannel.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java
index 7f7916e2a..6886a146a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileIOChannel.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
 import org.apache.paimon.utils.StringUtils;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManager.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/IOManager.java
similarity index 88%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManager.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/IOManager.java
index fcbbe141d..7f487c9a2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/IOManager.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.disk.FileIOChannel.Enumerator;
-import org.apache.flink.table.store.file.disk.FileIOChannel.ID;
+import org.apache.paimon.file.disk.FileIOChannel.Enumerator;
+import org.apache.paimon.file.disk.FileIOChannel.ID;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManagerImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManagerImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java
index 3e3d3e590..d4efa602c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManagerImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.disk.FileIOChannel.Enumerator;
-import org.apache.flink.table.store.file.disk.FileIOChannel.ID;
+import org.apache.paimon.file.disk.FileIOChannel.Enumerator;
+import org.apache.paimon.file.disk.FileIOChannel.ID;
 import org.apache.paimon.utils.Preconditions;
 
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/AbstractFileRecordIterator.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java
similarity index 91%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/AbstractFileRecordIterator.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java
index 89e4276fe..5a6ea6879 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/AbstractFileRecordIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.file.casting.CastFieldGetter;
-import org.apache.flink.table.store.file.casting.CastedRow;
+import org.apache.paimon.file.casting.CastFieldGetter;
+import org.apache.paimon.file.casting.CastedRow;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.utils.ProjectedRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/CompactIncrement.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/CompactIncrement.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/CompactIncrement.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/CompactIncrement.java
index 2e40c8914..10bfef732 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/CompactIncrement.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/CompactIncrement.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
 import java.util.List;
 import java.util.Objects;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMeta.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMeta.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
index 943ccf01d..9e52c4703 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMeta.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
@@ -36,8 +36,8 @@ import java.util.Collections;
 import java.util.List;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.file.utils.SerializationUtils.newBytesType;
-import static org.apache.flink.table.store.file.utils.SerializationUtils.newStringType;
+import static org.apache.paimon.file.utils.SerializationUtils.newBytesType;
+import static org.apache.paimon.file.utils.SerializationUtils.newStringType;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
 import static org.apache.paimon.data.BinaryRow.EMPTY_ROW;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMetaSerializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java
similarity index 88%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMetaSerializer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java
index 3fa138ebc..6a8390f86 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMetaSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.file.utils.ObjectSerializer;
+import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.file.utils.ObjectSerializer;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 
-import static org.apache.flink.table.store.file.utils.SerializationUtils.deserializeBinaryRow;
-import static org.apache.flink.table.store.file.utils.SerializationUtils.serializeBinaryRow;
+import static org.apache.paimon.file.utils.SerializationUtils.deserializeBinaryRow;
+import static org.apache.paimon.file.utils.SerializationUtils.serializeBinaryRow;
 import static org.apache.paimon.utils.RowDataUtils.fromStringArrayData;
 import static org.apache.paimon.utils.RowDataUtils.toStringArrayData;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFilePathFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFilePathFactory.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java
index 017c0287d..c575d4e73 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFilePathFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
 import org.apache.paimon.fs.Path;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/FileWriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/FileWriter.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/FileWriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/FileWriter.java
index 6dde94d34..3869b8013 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/FileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/FileWriter.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
 import org.apache.paimon.utils.CloseableIterator;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java
index 33c93f330..f0e4a1adc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.KeyValueSerializer;
-import org.apache.flink.table.store.file.casting.CastFieldGetter;
-import org.apache.flink.table.store.file.utils.FileUtils;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.KeyValueSerializer;
+import org.apache.paimon.file.casting.CastFieldGetter;
+import org.apache.paimon.file.utils.FileUtils;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java
index d5f8137cb..d939363da 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java
index 99c304775..8cf8f1127 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.BulkFormatMapping;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.BulkFormatMapping;
+import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java
index 99c3abb81..043d120e1 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.KeyValueSerializer;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.KeyValueSerializer;
+import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/NewFilesIncrement.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/NewFilesIncrement.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/NewFilesIncrement.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/NewFilesIncrement.java
index 1346845d0..096a1690e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/NewFilesIncrement.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/NewFilesIncrement.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
 import java.util.Collections;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RollingFileWriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java
similarity index 99%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RollingFileWriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java
index 1dbb032d2..78410feda 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RollingFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
 import org.apache.paimon.utils.Preconditions;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java
index 671012ae3..a0412ee41 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.file.casting.CastFieldGetter;
-import org.apache.flink.table.store.file.utils.FileUtils;
+import org.apache.paimon.file.casting.CastFieldGetter;
+import org.apache.paimon.file.utils.FileUtils;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java
index a5292bdb7..def136ae6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java
@@ -17,10 +17,10 @@
  * under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java
index 98a2fff3e..f5a97d72e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java
index 521f013d0..bf51fe3f3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java
index eabc5605e..f97f38d27 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/FileKind.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/FileKind.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/FileKind.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/FileKind.java
index c393ad552..301f1958b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/FileKind.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/FileKind.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
 /** Kind of a file. */
 public enum FileKind {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittable.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittable.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittable.java
index 0a0f8ef2f..dca636c8a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
 import org.apache.paimon.table.sink.CommitMessage;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java
index db40ee416..52b0c0695 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntry.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntry.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java
index e207e2158..7a9f49ceb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntry.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
@@ -35,7 +35,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.file.utils.SerializationUtils.newBytesType;
+import static org.apache.paimon.file.utils.SerializationUtils.newBytesType;
 
 /** Entry of a manifest file, representing an addition / deletion of a data file. */
 public class ManifestEntry {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntrySerializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java
similarity index 87%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntrySerializer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java
index 1c1ea832a..525cbc114 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntrySerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
-import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
-import org.apache.flink.table.store.file.utils.VersionedObjectSerializer;
+import org.apache.paimon.file.io.DataFileMetaSerializer;
+import org.apache.paimon.file.utils.VersionedObjectSerializer;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 
-import static org.apache.flink.table.store.file.utils.SerializationUtils.deserializeBinaryRow;
-import static org.apache.flink.table.store.file.utils.SerializationUtils.serializeBinaryRow;
+import static org.apache.paimon.file.utils.SerializationUtils.deserializeBinaryRow;
+import static org.apache.paimon.file.utils.SerializationUtils.serializeBinaryRow;
 
 /** Serializer for {@link ManifestEntry}. */
 public class ManifestEntrySerializer extends VersionedObjectSerializer<ManifestEntry> {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java
index db61ff68f..364abbab6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
-
-import org.apache.flink.table.store.file.io.RollingFileWriter;
-import org.apache.flink.table.store.file.io.SingleFileWriter;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.file.utils.FileUtils;
-import org.apache.flink.table.store.file.utils.VersionedObjectSerializer;
+package org.apache.paimon.file.manifest;
+
+import org.apache.paimon.file.io.RollingFileWriter;
+import org.apache.paimon.file.io.SingleFileWriter;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.utils.FileUtils;
+import org.apache.paimon.file.utils.VersionedObjectSerializer;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMeta.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMeta.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMeta.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMeta.java
index 9dc6a3d26..52dfb3bd8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMeta.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMeta.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaSerializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaSerializer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java
index 12249a433..2c910a230 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.file.utils.VersionedObjectSerializer;
+import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.file.utils.VersionedObjectSerializer;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java
index d03e9e681..69785b84a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.file.utils.FileUtils;
-import org.apache.flink.table.store.file.utils.VersionedObjectSerializer;
+import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.utils.FileUtils;
+import org.apache.paimon.file.utils.VersionedObjectSerializer;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.PositionOutputStream;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/Buffer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/Buffer.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/Buffer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/memory/Buffer.java
index 5bfc0ca7f..18ad815bf 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/Buffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/Buffer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.memory;
+package org.apache.paimon.file.memory;
 
 import org.apache.paimon.memory.MemorySegment;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/HeapMemorySegmentPool.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/HeapMemorySegmentPool.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/HeapMemorySegmentPool.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/memory/HeapMemorySegmentPool.java
index 5b182d30c..37a12d745 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/HeapMemorySegmentPool.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/HeapMemorySegmentPool.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.memory;
+package org.apache.paimon.file.memory;
 
 import org.apache.paimon.memory.MemorySegment;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemoryOwner.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemoryOwner.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemoryOwner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemoryOwner.java
index 24d991a63..abc68967e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemoryOwner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemoryOwner.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.memory;
+package org.apache.paimon.file.memory;
 
 /** A class provides memory related methods. */
 public interface MemoryOwner {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemoryPoolFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemoryPoolFactory.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemoryPoolFactory.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemoryPoolFactory.java
index 64af5c81d..4ef00d7e0 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemoryPoolFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemoryPoolFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.memory;
+package org.apache.paimon.file.memory;
 
 import org.apache.paimon.memory.MemorySegment;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemorySegmentPool.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemorySegmentPool.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java
index 3779ced42..70842491e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemorySegmentPool.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.memory;
+package org.apache.paimon.file.memory;
 
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentSource;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DataFileReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/DataFileReader.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DataFileReader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/DataFileReader.java
index 68c1606b6..e91e09f2e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DataFileReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/DataFileReader.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.lookup.LookupStoreReader;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.utils.FileIOUtils;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DropDeleteReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/DropDeleteReader.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DropDeleteReader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/DropDeleteReader.java
index fc9a84397..149903cbb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DropDeleteReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/DropDeleteReader.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LevelSortedRun.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/LevelSortedRun.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LevelSortedRun.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/LevelSortedRun.java
index 606cdb902..e5bf60162 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LevelSortedRun.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/LevelSortedRun.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
 import java.util.Objects;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/Levels.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/Levels.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java
index 39299064a..97b46ce09 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/Levels.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java
index 8c8d8c4f2..e255d3cfc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.io.DataOutputSerializer;
 import org.apache.paimon.lookup.LookupStoreFactory;
 import org.apache.paimon.lookup.LookupStoreReader;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeReaders.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java
similarity index 84%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeReaders.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java
index 3041e0399..c493fa41f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeReaders.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
-import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionWrapper;
-import org.apache.flink.table.store.file.mergetree.compact.ReducerMergeFunctionWrapper;
-import org.apache.flink.table.store.file.mergetree.compact.SortMergeReader;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.KeyValueFileReaderFactory;
+import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.file.mergetree.compact.MergeFunction;
+import org.apache.paimon.file.mergetree.compact.MergeFunctionWrapper;
+import org.apache.paimon.file.mergetree.compact.ReducerMergeFunctionWrapper;
+import org.apache.paimon.file.mergetree.compact.SortMergeReader;
 import org.apache.paimon.reader.RecordReader;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeWriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeWriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
index 39acf8145..90d426ca1 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
@@ -16,23 +16,23 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.compact.CompactManager;
-import org.apache.flink.table.store.file.compact.CompactResult;
-import org.apache.flink.table.store.file.disk.IOManager;
-import org.apache.flink.table.store.file.io.CompactIncrement;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
-import org.apache.flink.table.store.file.io.NewFilesIncrement;
-import org.apache.flink.table.store.file.io.RollingFileWriter;
-import org.apache.flink.table.store.file.memory.MemoryOwner;
-import org.apache.flink.table.store.file.memory.MemorySegmentPool;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
-import org.apache.flink.table.store.file.utils.CommitIncrement;
-import org.apache.flink.table.store.file.utils.RecordWriter;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.compact.CompactManager;
+import org.apache.paimon.file.compact.CompactResult;
+import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.file.io.CompactIncrement;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.KeyValueFileWriterFactory;
+import org.apache.paimon.file.io.NewFilesIncrement;
+import org.apache.paimon.file.io.RollingFileWriter;
+import org.apache.paimon.file.memory.MemoryOwner;
+import org.apache.paimon.file.memory.MemorySegmentPool;
+import org.apache.paimon.file.mergetree.compact.MergeFunction;
+import org.apache.paimon.file.utils.CommitIncrement;
+import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.annotation.VisibleForTesting;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBuffer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBuffer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
index 1583a5b69..cabef6a94 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
@@ -16,21 +16,21 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.KeyValueSerializer;
-import org.apache.flink.table.store.file.disk.IOManager;
-import org.apache.flink.table.store.file.memory.MemorySegmentPool;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
-import org.apache.flink.table.store.file.mergetree.compact.ReducerMergeFunctionWrapper;
-import org.apache.flink.table.store.file.sort.BinaryExternalSortBuffer;
-import org.apache.flink.table.store.file.sort.BinaryInMemorySortBuffer;
-import org.apache.flink.table.store.file.sort.SortBuffer;
-import org.apache.flink.table.store.file.utils.MutableObjectIterator;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.KeyValueSerializer;
+import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.file.memory.MemorySegmentPool;
+import org.apache.paimon.file.mergetree.compact.MergeFunction;
+import org.apache.paimon.file.mergetree.compact.ReducerMergeFunctionWrapper;
+import org.apache.paimon.file.sort.BinaryExternalSortBuffer;
+import org.apache.paimon.file.sort.BinaryInMemorySortBuffer;
+import org.apache.paimon.file.sort.SortBuffer;
+import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowKind;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortedRun.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortedRun.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java
index 40ff02b7e..5a7eda3a3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortedRun.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.annotation.VisibleForTesting;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/WriteBuffer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/WriteBuffer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java
index ee361b66e..5ede3e577 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/WriteBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.mergetree.compact.MergeFunction;
 import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/AbstractCompactRewriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/AbstractCompactRewriter.java
similarity index 86%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/AbstractCompactRewriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/AbstractCompactRewriter.java
index 8bff9e0fe..8e7e7aa18 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/AbstractCompactRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/AbstractCompactRewriter.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.compact.CompactResult;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
+import org.apache.paimon.file.compact.CompactResult;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.SortedRun;
 
 import java.io.IOException;
 import java.util.Collection;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogMergeTreeRewriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java
similarity index 89%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogMergeTreeRewriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java
index 5e7bbecd4..beedf8bab 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogMergeTreeRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
-
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.compact.CompactResult;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
-import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
-import org.apache.flink.table.store.file.io.RollingFileWriter;
-import org.apache.flink.table.store.file.mergetree.MergeTreeReaders;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
+package org.apache.paimon.file.mergetree.compact;
+
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.compact.CompactResult;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.KeyValueFileReaderFactory;
+import org.apache.paimon.file.io.KeyValueFileWriterFactory;
+import org.apache.paimon.file.io.RollingFileWriter;
+import org.apache.paimon.file.mergetree.MergeTreeReaders;
+import org.apache.paimon.file.mergetree.SortedRun;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReaderIterator;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogResult.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogResult.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogResult.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogResult.java
index 67e2c1947..3dfd3951b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogResult.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogResult.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/CompactRewriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactRewriter.java
similarity index 82%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/CompactRewriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactRewriter.java
index dd6cc8dda..f7d70deb8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/CompactRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactRewriter.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.compact.CompactResult;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
+import org.apache.paimon.file.compact.CompactResult;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.SortedRun;
 
 import java.io.Closeable;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/CompactStrategy.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactStrategy.java
similarity index 90%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/CompactStrategy.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactStrategy.java
index ba363ef40..9f876445e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/CompactStrategy.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactStrategy.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.compact.CompactUnit;
-import org.apache.flink.table.store.file.mergetree.LevelSortedRun;
+import org.apache.paimon.file.compact.CompactUnit;
+import org.apache.paimon.file.mergetree.LevelSortedRun;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReader.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReader.java
index f12fc39c3..d194713bd 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.utils.Preconditions;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/DeduplicateMergeFunction.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/DeduplicateMergeFunction.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/DeduplicateMergeFunction.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/DeduplicateMergeFunction.java
index 595c58ee2..81f028900 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/DeduplicateMergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/DeduplicateMergeFunction.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ForceUpLevel0Compaction.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0Compaction.java
similarity index 90%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ForceUpLevel0Compaction.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0Compaction.java
index 379825dc4..412881d38 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ForceUpLevel0Compaction.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0Compaction.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.compact.CompactUnit;
-import org.apache.flink.table.store.file.mergetree.LevelSortedRun;
+import org.apache.paimon.file.compact.CompactUnit;
+import org.apache.paimon.file.mergetree.LevelSortedRun;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
index 84b70d9cc..ab8a78d0a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.Preconditions;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
similarity index 86%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
index 02c466ce2..ca489f1e9 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
-import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.KeyValueFileReaderFactory;
+import org.apache.paimon.file.io.KeyValueFileWriterFactory;
+import org.apache.paimon.file.mergetree.SortedRun;
 import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartition.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartition.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java
index 8b6eb2da2..6815cc747 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartition.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.SortedRun;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
index f2e6b543e..a15a1a306 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupCompaction.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupCompaction.java
similarity index 90%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupCompaction.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupCompaction.java
index acab8c3d0..6480c8d72 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupCompaction.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupCompaction.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.compact.CompactUnit;
-import org.apache.flink.table.store.file.mergetree.LevelSortedRun;
+import org.apache.paimon.file.compact.CompactUnit;
+import org.apache.paimon.file.mergetree.LevelSortedRun;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupMergeFunction.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeFunction.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupMergeFunction.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeFunction.java
index c47b359bf..639e6d20f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupMergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeFunction.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupMergeTreeCompactRewriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
similarity index 86%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
index 1e12b8c33..827d52589 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
-import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
-import org.apache.flink.table.store.file.mergetree.LookupLevels;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.KeyValueFileReaderFactory;
+import org.apache.paimon.file.io.KeyValueFileWriterFactory;
+import org.apache.paimon.file.mergetree.LookupLevels;
+import org.apache.paimon.file.mergetree.SortedRun;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunction.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunction.java
similarity index 91%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunction.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunction.java
index 4a2450c07..6ce9b3fff 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunction.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionFactory.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionFactory.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionFactory.java
index 87cea5d1c..328453f27 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionWrapper.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionWrapper.java
similarity index 90%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionWrapper.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionWrapper.java
index baf9b9489..834b4e48c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionWrapper.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionWrapper.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManager.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManager.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java
index 516d0da1a..85e70e626 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
-
-import org.apache.flink.table.store.file.compact.CompactFutureManager;
-import org.apache.flink.table.store.file.compact.CompactResult;
-import org.apache.flink.table.store.file.compact.CompactUnit;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.mergetree.LevelSortedRun;
-import org.apache.flink.table.store.file.mergetree.Levels;
+package org.apache.paimon.file.mergetree.compact;
+
+import org.apache.paimon.file.compact.CompactFutureManager;
+import org.apache.paimon.file.compact.CompactResult;
+import org.apache.paimon.file.compact.CompactUnit;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.LevelSortedRun;
+import org.apache.paimon.file.mergetree.Levels;
 import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.annotation.VisibleForTesting;
@@ -39,7 +39,7 @@ import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ExecutorService;
 import java.util.stream.Collectors;
 
-/** Compact manager for {@link org.apache.flink.table.store.file.KeyValueFileStore}. */
+/** Compact manager for {@link org.apache.paimon.file.KeyValueFileStore}. */
 public class MergeTreeCompactManager extends CompactFutureManager {
 
     private static final Logger LOG = LoggerFactory.getLogger(MergeTreeCompactManager.class);
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactRewriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java
similarity index 82%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactRewriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java
index f00077011..a958aec76 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.compact.CompactResult;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
-import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
-import org.apache.flink.table.store.file.io.RollingFileWriter;
-import org.apache.flink.table.store.file.mergetree.MergeTreeReaders;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.compact.CompactResult;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.KeyValueFileReaderFactory;
+import org.apache.paimon.file.io.KeyValueFileWriterFactory;
+import org.apache.paimon.file.io.RollingFileWriter;
+import org.apache.paimon.file.mergetree.MergeTreeReaders;
+import org.apache.paimon.file.mergetree.SortedRun;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReaderIterator;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactTask.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactTask.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java
index 5b5b242e6..23fd912d8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactTask.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.compact.CompactResult;
-import org.apache.flink.table.store.file.compact.CompactTask;
-import org.apache.flink.table.store.file.compact.CompactUnit;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
+import org.apache.paimon.file.compact.CompactResult;
+import org.apache.paimon.file.compact.CompactTask;
+import org.apache.paimon.file.compact.CompactUnit;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.SortedRun;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/PartialUpdateMergeFunction.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/PartialUpdateMergeFunction.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java
index ef1dbfcfa..564051723 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/PartialUpdateMergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.Projection;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapper.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapper.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapper.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapper.java
index 1c8c8aef8..ea3e4de8e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapper.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapper.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 
 /**
  * Wrapper for {@link MergeFunction}s which works like a reducer.
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java
index 82dd00466..9eec0ebde 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.utils.Preconditions;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/UniversalCompaction.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/UniversalCompaction.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java
index b5a0a50d2..063fa8467 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/UniversalCompaction.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.compact.CompactUnit;
-import org.apache.flink.table.store.file.mergetree.LevelSortedRun;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
+import org.apache.paimon.file.compact.CompactUnit;
+import org.apache.paimon.file.mergetree.LevelSortedRun;
+import org.apache.paimon.file.mergetree.SortedRun;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ValueCountMergeFunction.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ValueCountMergeFunction.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java
index 1ed5acc4a..b9091857e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ValueCountMergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.GenericRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java
index 9da73ff49..0da7878b2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.mergetree.compact.MergeFunction;
+import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowKind;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregator.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregator.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregator.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregator.java
index 3e369b79f..118f1cf8f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolAndAgg.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
index 462e30652..ad976d58e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolOrAgg.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
index 7f1e7841f..fd2d0b8af 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
index b8877a7e6..b309f2059 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
 /** An aggregator which ignores retraction messages. */
 public class FieldIgnoreRetractAgg extends FieldAggregator {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
index 9a1dd4475..00cb69ef1 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastValueAgg.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastValueAgg.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastValueAgg.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastValueAgg.java
index 7a6b96f10..a169df428 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastValueAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastValueAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldListaggAgg.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldListaggAgg.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java
index d1b1094d5..50613fe26 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldListaggAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.utils.StringUtils;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMaxAgg.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMaxAgg.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMaxAgg.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMaxAgg.java
index bb2e2465d..07bf15ed3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMaxAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMaxAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypeRoot;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMinAgg.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMinAgg.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMinAgg.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMinAgg.java
index 9111a1070..3a8804774 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMinAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMinAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypeRoot;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
index 98fc7bb2d..a825d9d3b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldSumAgg.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldSumAgg.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java
index ab03a6245..81dec1914 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldSumAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.utils.DecimalUtils;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java
index c3d7c2eb2..be5721c29 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java
@@ -16,22 +16,22 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.manifest.ManifestFile;
-import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
-import org.apache.flink.table.store.file.manifest.ManifestList;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.manifest.ManifestFile;
+import org.apache.paimon.file.manifest.ManifestFileMeta;
+import org.apache.paimon.file.manifest.ManifestList;
 import org.apache.paimon.file.predicate.BucketSelector;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.file.utils.FileUtils;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.utils.FileUtils;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Filter;
 import org.apache.paimon.utils.Preconditions;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreWrite.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java
index 114f83c0c..d193f6eae 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
-
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.disk.IOManager;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.utils.CommitIncrement;
-import org.apache.flink.table.store.file.utils.ExecutorThreadFactory;
-import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.file.utils.Restorable;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+package org.apache.paimon.file.operation;
+
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.utils.CommitIncrement;
+import org.apache.paimon.file.utils.ExecutorThreadFactory;
+import org.apache.paimon.file.utils.RecordWriter;
+import org.apache.paimon.file.utils.Restorable;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java
similarity index 88%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java
index 5d7d8c815..82a5ac76a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java
@@ -16,19 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.DataFilePathFactory;
-import org.apache.flink.table.store.file.io.RowDataFileRecordReader;
-import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFilePathFactory;
+import org.apache.paimon.file.io.RowDataFileRecordReader;
+import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.IndexCastMapping;
-import org.apache.flink.table.store.file.schema.SchemaEvolutionUtil;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.BulkFormatMapping;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.schema.IndexCastMapping;
+import org.apache.paimon.file.schema.SchemaEvolutionUtil;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.BulkFormatMapping;
+import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.source.DataSplit;
@@ -49,7 +49,7 @@ import java.util.Map;
 
 import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
 
-/** {@link FileStoreRead} for {@link org.apache.flink.table.store.file.AppendOnlyFileStore}. */
+/** {@link FileStoreRead} for {@link org.apache.paimon.file.AppendOnlyFileStore}. */
 public class AppendOnlyFileStoreRead implements FileStoreRead<InternalRow> {
 
     private final FileIO fileIO;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreScan.java
similarity index 85%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreScan.java
index 02118da34..17fc47e47 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreScan.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.manifest.ManifestFile;
-import org.apache.flink.table.store.file.manifest.ManifestList;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.manifest.ManifestFile;
+import org.apache.paimon.file.manifest.ManifestList;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.stats.FieldStatsConverters;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.stats.FieldStatsConverters;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.types.RowType;
 
 import java.util.List;
@@ -33,7 +33,7 @@ import static org.apache.paimon.file.predicate.PredicateBuilder.and;
 import static org.apache.paimon.file.predicate.PredicateBuilder.pickTransformFieldMapping;
 import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
 
-/** {@link FileStoreScan} for {@link org.apache.flink.table.store.file.AppendOnlyFileStore}. */
+/** {@link FileStoreScan} for {@link org.apache.paimon.file.AppendOnlyFileStore}. */
 public class AppendOnlyFileStoreScan extends AbstractFileStoreScan {
 
     private final RowType rowType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
similarity index 85%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
index 2b95cde9e..48e4e225e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
@@ -16,20 +16,20 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.append.AppendOnlyCompactManager;
-import org.apache.flink.table.store.file.append.AppendOnlyWriter;
-import org.apache.flink.table.store.file.compact.CompactManager;
-import org.apache.flink.table.store.file.compact.NoopCompactManager;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.DataFilePathFactory;
-import org.apache.flink.table.store.file.io.RowDataRollingFileWriter;
-import org.apache.flink.table.store.file.utils.CommitIncrement;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.append.AppendOnlyCompactManager;
+import org.apache.paimon.file.append.AppendOnlyWriter;
+import org.apache.paimon.file.compact.CompactManager;
+import org.apache.paimon.file.compact.NoopCompactManager;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFilePathFactory;
+import org.apache.paimon.file.io.RowDataRollingFileWriter;
+import org.apache.paimon.file.utils.CommitIncrement;
+import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.utils.RecordWriter;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.reader.RecordReaderIterator;
 import org.apache.paimon.table.source.DataSplit;
@@ -47,9 +47,9 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.concurrent.ExecutorService;
 
-import static org.apache.flink.table.store.file.io.DataFileMeta.getMaxSequenceNumber;
+import static org.apache.paimon.file.io.DataFileMeta.getMaxSequenceNumber;
 
-/** {@link FileStoreWrite} for {@link org.apache.flink.table.store.file.AppendOnlyFileStore}. */
+/** {@link FileStoreWrite} for {@link org.apache.paimon.file.AppendOnlyFileStore}. */
 public class AppendOnlyFileStoreWrite extends AbstractFileStoreWrite<InternalRow> {
 
     private final FileIO fileIO;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommit.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommit.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommit.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommit.java
index cbacc72b2..b28b5ef5e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommit.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommit.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
+import org.apache.paimon.file.manifest.ManifestCommittable;
 
 import java.util.Collections;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java
index 85b8eb726..a2913bab2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java
@@ -16,21 +16,21 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
-
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.manifest.FileKind;
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.manifest.ManifestFile;
-import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
-import org.apache.flink.table.store.file.manifest.ManifestList;
+package org.apache.paimon.file.operation;
+
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.manifest.FileKind;
+import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.manifest.ManifestFile;
+import org.apache.paimon.file.manifest.ManifestFileMeta;
+import org.apache.paimon.file.manifest.ManifestList;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.MemorySize;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpire.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpire.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpire.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpire.java
index a1dad3bf5..d4e51bc45 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpire.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpire.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
 /** Expire operation which provides snapshots expire. */
 public interface FileStoreExpire {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpireImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpireImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java
index 2344a66a1..ef8c89f02 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpireImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
-
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.manifest.ManifestFile;
-import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
-import org.apache.flink.table.store.file.manifest.ManifestList;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+package org.apache.paimon.file.operation;
+
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.manifest.ManifestFile;
+import org.apache.paimon.file.manifest.ManifestFileMeta;
+import org.apache.paimon.file.manifest.ManifestList;
+import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreRead.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreRead.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreRead.java
index 4a1f48490..ddeeb8846 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreRead.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.reader.RecordReader;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java
similarity index 90%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java
index 601f64b27..f8cf5cc10 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.manifest.FileKind;
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.manifest.FileKind;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.manifest.ManifestFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.utils.Filter;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreWrite.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java
index ad3a4a312..cdc28dfd5 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.FileStore;
-import org.apache.flink.table.store.file.disk.IOManager;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.utils.RecordWriter;
+import org.apache.paimon.file.FileStore;
+import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.SinkRecord;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java
similarity index 87%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java
index ab1384d2f..93ba11f49 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java
@@ -16,24 +16,24 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
-
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
-import org.apache.flink.table.store.file.mergetree.DropDeleteReader;
-import org.apache.flink.table.store.file.mergetree.MergeTreeReaders;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
-import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
-import org.apache.flink.table.store.file.mergetree.compact.IntervalPartition;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionWrapper;
-import org.apache.flink.table.store.file.mergetree.compact.ReducerMergeFunctionWrapper;
+package org.apache.paimon.file.operation;
+
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.KeyValueFileReaderFactory;
+import org.apache.paimon.file.mergetree.DropDeleteReader;
+import org.apache.paimon.file.mergetree.MergeTreeReaders;
+import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.file.mergetree.compact.IntervalPartition;
+import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.file.mergetree.compact.MergeFunctionWrapper;
+import org.apache.paimon.file.mergetree.compact.ReducerMergeFunctionWrapper;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.source.DataSplit;
@@ -53,13 +53,13 @@ import java.util.Optional;
 import java.util.Set;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.io.DataFilePathFactory.CHANGELOG_FILE_PREFIX;
+import static org.apache.paimon.file.io.DataFilePathFactory.CHANGELOG_FILE_PREFIX;
 import static org.apache.paimon.file.predicate.PredicateBuilder.containsFields;
 import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
 
 /**
  * {@link FileStoreRead} implementation for {@link
- * org.apache.flink.table.store.file.KeyValueFileStore}.
+ * org.apache.paimon.file.KeyValueFileStore}.
  */
 public class KeyValueFileStoreRead implements FileStoreRead<KeyValue> {
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreScan.java
similarity index 84%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreScan.java
index 5d0cb256d..d4fca2cf7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreScan.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.manifest.ManifestFile;
-import org.apache.flink.table.store.file.manifest.ManifestList;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.manifest.ManifestFile;
+import org.apache.paimon.file.manifest.ManifestList;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.stats.FieldStatsConverters;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.stats.FieldStatsConverters;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.types.RowType;
 
 import java.util.List;
@@ -34,7 +34,7 @@ import static org.apache.paimon.file.predicate.PredicateBuilder.and;
 import static org.apache.paimon.file.predicate.PredicateBuilder.pickTransformFieldMapping;
 import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
 
-/** {@link FileStoreScan} for {@link org.apache.flink.table.store.file.KeyValueFileStore}. */
+/** {@link FileStoreScan} for {@link org.apache.paimon.file.KeyValueFileStore}. */
 public class KeyValueFileStoreScan extends AbstractFileStoreScan {
 
     private final FieldStatsConverters fieldStatsConverters;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
similarity index 82%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
index 2eccdcb6d..90e14f1bb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
@@ -16,33 +16,33 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.compact.CompactManager;
-import org.apache.flink.table.store.file.compact.NoopCompactManager;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
-import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
-import org.apache.flink.table.store.file.mergetree.Levels;
-import org.apache.flink.table.store.file.mergetree.LookupLevels;
-import org.apache.flink.table.store.file.mergetree.MergeTreeWriter;
-import org.apache.flink.table.store.file.mergetree.compact.CompactRewriter;
-import org.apache.flink.table.store.file.mergetree.compact.CompactStrategy;
-import org.apache.flink.table.store.file.mergetree.compact.FullChangelogMergeTreeCompactRewriter;
-import org.apache.flink.table.store.file.mergetree.compact.LookupCompaction;
-import org.apache.flink.table.store.file.mergetree.compact.LookupMergeTreeCompactRewriter;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManager;
-import org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactRewriter;
-import org.apache.flink.table.store.file.mergetree.compact.UniversalCompaction;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.utils.CommitIncrement;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.compact.CompactManager;
+import org.apache.paimon.file.compact.NoopCompactManager;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.KeyValueFileReaderFactory;
+import org.apache.paimon.file.io.KeyValueFileWriterFactory;
+import org.apache.paimon.file.mergetree.Levels;
+import org.apache.paimon.file.mergetree.LookupLevels;
+import org.apache.paimon.file.mergetree.MergeTreeWriter;
+import org.apache.paimon.file.mergetree.compact.CompactRewriter;
+import org.apache.paimon.file.mergetree.compact.CompactStrategy;
+import org.apache.paimon.file.mergetree.compact.FullChangelogMergeTreeCompactRewriter;
+import org.apache.paimon.file.mergetree.compact.LookupCompaction;
+import org.apache.paimon.file.mergetree.compact.LookupMergeTreeCompactRewriter;
+import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.file.mergetree.compact.MergeTreeCompactManager;
+import org.apache.paimon.file.mergetree.compact.MergeTreeCompactRewriter;
+import org.apache.paimon.file.mergetree.compact.UniversalCompaction;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.utils.CommitIncrement;
+import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.lookup.hash.HashLookupStoreFactory;
 import org.apache.paimon.types.RowType;
@@ -60,9 +60,9 @@ import java.util.List;
 import java.util.concurrent.ExecutorService;
 import java.util.function.Supplier;
 
-import static org.apache.flink.table.store.file.io.DataFileMeta.getMaxSequenceNumber;
+import static org.apache.paimon.file.io.DataFileMeta.getMaxSequenceNumber;
 
-/** {@link FileStoreWrite} for {@link org.apache.flink.table.store.file.KeyValueFileStore}. */
+/** {@link FileStoreWrite} for {@link org.apache.paimon.file.KeyValueFileStore}. */
 public class KeyValueFileStoreWrite extends MemoryFileStoreWrite<KeyValue> {
 
     private static final Logger LOG = LoggerFactory.getLogger(KeyValueFileStoreWrite.class);
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/Lock.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/Lock.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/Lock.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/Lock.java
index ae7d26ef5..65c024a9c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/Lock.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/Lock.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.catalog.CatalogLock;
-import org.apache.flink.table.store.file.catalog.Identifier;
+import org.apache.paimon.file.catalog.CatalogLock;
+import org.apache.paimon.file.catalog.Identifier;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/MemoryFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
similarity index 90%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/MemoryFileStoreWrite.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
index e2ed78a47..46efcc0f7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/MemoryFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.memory.HeapMemorySegmentPool;
-import org.apache.flink.table.store.file.memory.MemoryOwner;
-import org.apache.flink.table.store.file.memory.MemoryPoolFactory;
-import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.memory.HeapMemorySegmentPool;
+import org.apache.paimon.file.memory.MemoryOwner;
+import org.apache.paimon.file.memory.MemoryPoolFactory;
+import org.apache.paimon.file.utils.RecordWriter;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.io.cache.CacheManager;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/PartitionExpire.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/PartitionExpire.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java
index 15da30f65..b0e63268b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/PartitionExpire.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.partition.PartitionTimeExtractor;
+import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.partition.PartitionTimeExtractor;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/ReverseReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/ReverseReader.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/ReverseReader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/ReverseReader.java
index d400e8f4f..86e875691 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/ReverseReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/ReverseReader.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/ScanKind.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/ScanKind.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/ScanKind.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/operation/ScanKind.java
index 5c7fb78e9..3fb3c1216 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/ScanKind.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/ScanKind.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
 /** Scan which part of the snapshot. */
 public enum ScanKind {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/partition/PartitionTimeExtractor.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/partition/PartitionTimeExtractor.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/partition/PartitionTimeExtractor.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/partition/PartitionTimeExtractor.java
index 15a9bb18e..90b670d85 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/partition/PartitionTimeExtractor.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/partition/PartitionTimeExtractor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.partition;
+package org.apache.paimon.file.partition;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/IndexCastMapping.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/IndexCastMapping.java
similarity index 89%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/IndexCastMapping.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/schema/IndexCastMapping.java
index c29483f4d..ef4edba51 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/IndexCastMapping.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/IndexCastMapping.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
-import org.apache.flink.table.store.file.casting.CastFieldGetter;
+import org.apache.paimon.file.casting.CastFieldGetter;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/KeyValueFieldsExtractor.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/KeyValueFieldsExtractor.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/KeyValueFieldsExtractor.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/schema/KeyValueFieldsExtractor.java
index 94cc72505..3e864684a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/KeyValueFieldsExtractor.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/KeyValueFieldsExtractor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
 import org.apache.paimon.types.DataField;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/Schema.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/Schema.java
similarity index 99%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/Schema.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/schema/Schema.java
index e4b4e3b88..05a62bd70 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/Schema.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/Schema.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaChange.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java
similarity index 99%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaChange.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java
index 222ccf9f3..036780afd 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaChange.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java
index a64c56f2f..d02f3dd10 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.casting.CastExecutor;
-import org.apache.flink.table.store.file.casting.CastExecutors;
-import org.apache.flink.table.store.file.casting.CastFieldGetter;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.casting.CastExecutor;
+import org.apache.paimon.file.casting.CastExecutors;
+import org.apache.paimon.file.casting.CastFieldGetter;
 import org.apache.paimon.file.predicate.LeafPredicate;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateReplaceVisitor;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
index 313a3cfe3..a3bc887c0 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
@@ -16,21 +16,21 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.casting.CastExecutors;
-import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.flink.table.store.file.schema.SchemaChange.AddColumn;
-import org.apache.flink.table.store.file.schema.SchemaChange.DropColumn;
-import org.apache.flink.table.store.file.schema.SchemaChange.RemoveOption;
-import org.apache.flink.table.store.file.schema.SchemaChange.RenameColumn;
-import org.apache.flink.table.store.file.schema.SchemaChange.SetOption;
-import org.apache.flink.table.store.file.schema.SchemaChange.UpdateColumnComment;
-import org.apache.flink.table.store.file.schema.SchemaChange.UpdateColumnNullability;
-import org.apache.flink.table.store.file.schema.SchemaChange.UpdateColumnPosition;
-import org.apache.flink.table.store.file.schema.SchemaChange.UpdateColumnType;
-import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
+import org.apache.paimon.file.casting.CastExecutors;
+import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.file.schema.SchemaChange.AddColumn;
+import org.apache.paimon.file.schema.SchemaChange.DropColumn;
+import org.apache.paimon.file.schema.SchemaChange.RemoveOption;
+import org.apache.paimon.file.schema.SchemaChange.RenameColumn;
+import org.apache.paimon.file.schema.SchemaChange.SetOption;
+import org.apache.paimon.file.schema.SchemaChange.UpdateColumnComment;
+import org.apache.paimon.file.schema.SchemaChange.UpdateColumnNullability;
+import org.apache.paimon.file.schema.SchemaChange.UpdateColumnPosition;
+import org.apache.paimon.file.schema.SchemaChange.UpdateColumnType;
+import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.DataField;
@@ -59,7 +59,7 @@ import java.util.concurrent.atomic.AtomicInteger;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.utils.FileUtils.listVersionedFiles;
+import static org.apache.paimon.file.utils.FileUtils.listVersionedFiles;
 import static org.apache.paimon.utils.Preconditions.checkState;
 
 /** Schema Manager to manage schema versions. */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaSerializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaSerializer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java
index ff4b8d467..e3fd9ef44 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
-import org.apache.flink.table.store.file.utils.JsonDeserializer;
-import org.apache.flink.table.store.file.utils.JsonSerializer;
+import org.apache.paimon.file.utils.JsonDeserializer;
+import org.apache.paimon.file.utils.JsonSerializer;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataTypeJsonParser;
 import org.apache.paimon.utils.StringUtils;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaValidation.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaValidation.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java
index 7e4f6a166..bf436280c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaValidation.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
+import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.DataField;
@@ -40,9 +40,9 @@ import static org.apache.flink.table.store.CoreOptions.SCAN_SNAPSHOT_ID;
 import static org.apache.flink.table.store.CoreOptions.SCAN_TIMESTAMP_MILLIS;
 import static org.apache.flink.table.store.CoreOptions.SNAPSHOT_NUM_RETAINED_MAX;
 import static org.apache.flink.table.store.CoreOptions.SNAPSHOT_NUM_RETAINED_MIN;
-import static org.apache.flink.table.store.file.WriteMode.APPEND_ONLY;
-import static org.apache.flink.table.store.file.schema.SystemColumns.KEY_FIELD_PREFIX;
-import static org.apache.flink.table.store.file.schema.SystemColumns.SYSTEM_FIELD_NAMES;
+import static org.apache.paimon.file.WriteMode.APPEND_ONLY;
+import static org.apache.paimon.file.schema.SystemColumns.KEY_FIELD_PREFIX;
+import static org.apache.paimon.file.schema.SystemColumns.SYSTEM_FIELD_NAMES;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
 import static org.apache.paimon.utils.Preconditions.checkState;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SystemColumns.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SystemColumns.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SystemColumns.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SystemColumns.java
index 3591bafbd..0ebd8cd01 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SystemColumns.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SystemColumns.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
 import java.util.Arrays;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/TableSchema.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/TableSchema.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java
index af0148b16..89cff4b89 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/TableSchema.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
-import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
+import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Preconditions;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/AbstractBinaryExternalMerger.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/AbstractBinaryExternalMerger.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
index ec9893ccd..1f539982c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/AbstractBinaryExternalMerger.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
-
-import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
-import org.apache.flink.table.store.file.disk.ChannelReaderInputView;
-import org.apache.flink.table.store.file.disk.ChannelWithMeta;
-import org.apache.flink.table.store.file.disk.ChannelWriterOutputView;
-import org.apache.flink.table.store.file.disk.FileChannelUtil;
-import org.apache.flink.table.store.file.disk.FileIOChannel;
-import org.apache.flink.table.store.file.disk.IOManager;
-import org.apache.flink.table.store.file.utils.MutableObjectIterator;
+package org.apache.paimon.file.sort;
+
+import org.apache.paimon.file.compression.BlockCompressionFactory;
+import org.apache.paimon.file.disk.ChannelReaderInputView;
+import org.apache.paimon.file.disk.ChannelWithMeta;
+import org.apache.paimon.file.disk.ChannelWriterOutputView;
+import org.apache.paimon.file.disk.FileChannelUtil;
+import org.apache.paimon.file.disk.FileIOChannel;
+import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.file.utils.MutableObjectIterator;
 
 import org.apache.paimon.data.AbstractPagedOutputView;
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalMerger.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
similarity index 88%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalMerger.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
index 24acfef80..c5204f60a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalMerger.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
-import org.apache.flink.table.store.file.disk.ChannelReaderInputView;
-import org.apache.flink.table.store.file.disk.ChannelReaderInputViewIterator;
-import org.apache.flink.table.store.file.disk.IOManager;
-import org.apache.flink.table.store.file.utils.MutableObjectIterator;
+import org.apache.paimon.file.compression.BlockCompressionFactory;
+import org.apache.paimon.file.disk.ChannelReaderInputView;
+import org.apache.paimon.file.disk.ChannelReaderInputViewIterator;
+import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.file.utils.MutableObjectIterator;
 
 import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBuffer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBuffer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
index 92b7d385f..06b12aede 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
-import org.apache.flink.table.store.file.compression.Lz4BlockCompressionFactory;
-import org.apache.flink.table.store.file.disk.ChannelWithMeta;
-import org.apache.flink.table.store.file.disk.ChannelWriterOutputView;
-import org.apache.flink.table.store.file.disk.FileChannelUtil;
-import org.apache.flink.table.store.file.disk.FileIOChannel;
-import org.apache.flink.table.store.file.disk.IOManager;
-import org.apache.flink.table.store.file.utils.MutableObjectIterator;
+import org.apache.paimon.file.compression.BlockCompressionFactory;
+import org.apache.paimon.file.compression.Lz4BlockCompressionFactory;
+import org.apache.paimon.file.disk.ChannelWithMeta;
+import org.apache.paimon.file.disk.ChannelWriterOutputView;
+import org.apache.paimon.file.disk.FileChannelUtil;
+import org.apache.paimon.file.disk.FileIOChannel;
+import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.apache.paimon.options.MemorySize;
 
 import org.apache.paimon.annotation.VisibleForTesting;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
index 6ebe1927c..00866376e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.file.memory.MemorySegmentPool;
-import org.apache.flink.table.store.file.utils.MutableObjectIterator;
+import org.apache.paimon.file.memory.MemorySegmentPool;
+import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryIndexedSortable.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryIndexedSortable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
index 0ba8e63b6..0bb489841 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryIndexedSortable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.file.memory.MemorySegmentPool;
+import org.apache.paimon.file.memory.MemorySegmentPool;
 import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.AbstractPagedOutputView;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryMergeIterator.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryMergeIterator.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryMergeIterator.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryMergeIterator.java
index 955f739d8..fb12633ca 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryMergeIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryMergeIterator.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
-import org.apache.flink.table.store.file.utils.MutableObjectIterator;
+import org.apache.paimon.file.utils.MutableObjectIterator;
 
 import java.io.IOException;
 import java.util.Comparator;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/HeapSort.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/HeapSort.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/HeapSort.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/HeapSort.java
index f1741fc80..eb258e06e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/HeapSort.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/HeapSort.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
 /**
  * This file is based on source code from the Hadoop Project (http://hadoop.apache.org/), licensed
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/IndexedSortable.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/IndexedSortable.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/IndexedSortable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/IndexedSortable.java
index 0adaa73f2..d4ad5c7f3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/IndexedSortable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/IndexedSortable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
 /** Indexed sortable to provide compare and swap. */
 public interface IndexedSortable {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/IndexedSorter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/IndexedSorter.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/IndexedSorter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/IndexedSorter.java
index eee7e4e12..1705276d9 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/IndexedSorter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/IndexedSorter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
 /** Indexed sorter to provide sort. */
 public interface IndexedSorter {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/PartialOrderPriorityQueue.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/PartialOrderPriorityQueue.java
similarity index 99%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/PartialOrderPriorityQueue.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/PartialOrderPriorityQueue.java
index ce8394a32..fb68bf720 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/PartialOrderPriorityQueue.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/PartialOrderPriorityQueue.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
 import java.util.AbstractQueue;
 import java.util.Arrays;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/QuickSort.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/QuickSort.java
similarity index 99%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/QuickSort.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/QuickSort.java
index 27840bbd8..d0fa2efd6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/QuickSort.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/QuickSort.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
 /** Quick sort {@link IndexedSorter}. */
 public final class QuickSort implements IndexedSorter {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SortBuffer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SortBuffer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java
index c2315ab0f..2a37f4142 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SortBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
-import org.apache.flink.table.store.file.utils.MutableObjectIterator;
+import org.apache.paimon.file.utils.MutableObjectIterator;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SpillChannelManager.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SpillChannelManager.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java
index 4c7cc0164..2c85b25f7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SpillChannelManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
-import org.apache.flink.table.store.file.disk.FileIOChannel;
+import org.apache.paimon.file.disk.FileIOChannel;
 
 import java.io.Closeable;
 import java.io.File;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/stats/BinaryTableStats.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/stats/BinaryTableStats.java
index 4ea0a3d75..39dcadd19 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/stats/BinaryTableStats.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.stats;
+package org.apache.paimon.file.stats;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericArray;
@@ -30,8 +30,8 @@ import javax.annotation.Nullable;
 import java.util.Arrays;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.file.utils.SerializationUtils.deserializeBinaryRow;
-import static org.apache.flink.table.store.file.utils.SerializationUtils.serializeBinaryRow;
+import static org.apache.paimon.file.utils.SerializationUtils.deserializeBinaryRow;
+import static org.apache.paimon.file.utils.SerializationUtils.serializeBinaryRow;
 import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /** A serialized row bytes to cache {@link FieldStats}. */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
index 859c7e73f..520e387ea 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.stats;
+package org.apache.paimon.file.stats;
 
-import org.apache.flink.table.store.file.casting.CastExecutor;
+import org.apache.paimon.file.casting.CastExecutor;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
@@ -37,7 +37,7 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.file.utils.SerializationUtils.newBytesType;
+import static org.apache.paimon.file.utils.SerializationUtils.newBytesType;
 
 /** Serializer for array of {@link FieldStats}. */
 public class FieldStatsArraySerializer {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsConverters.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsConverters.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java
index cab43f66e..86e0e472f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsConverters.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.stats;
+package org.apache.paimon.file.stats;
 
-import org.apache.flink.table.store.file.casting.CastExecutor;
-import org.apache.flink.table.store.file.schema.SchemaEvolutionUtil;
+import org.apache.paimon.file.casting.CastExecutor;
+import org.apache.paimon.file.schema.SchemaEvolutionUtil;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
index 3c344b7f2..3585662de 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.casting.CastFieldGetter;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.casting.CastFieldGetter;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.IndexCastMapping;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.SchemaEvolutionUtil;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.IndexCastMapping;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.SchemaEvolutionUtil;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Projection;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/CommitIncrement.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java
similarity index 89%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/CommitIncrement.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java
index e1aa61ec4..0d9624671 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/CommitIncrement.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
-import org.apache.flink.table.store.file.io.CompactIncrement;
-import org.apache.flink.table.store.file.io.NewFilesIncrement;
+import org.apache.paimon.file.io.CompactIncrement;
+import org.apache.paimon.file.io.NewFilesIncrement;
 
 /** Changes to commit. */
 public class CommitIncrement {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ExecutorThreadFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ExecutorThreadFactory.java
similarity index 99%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ExecutorThreadFactory.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ExecutorThreadFactory.java
index 7624ab65f..d04395204 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ExecutorThreadFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ExecutorThreadFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FatalExitExceptionHandler.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FatalExitExceptionHandler.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FatalExitExceptionHandler.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FatalExitExceptionHandler.java
index 0fc70f699..c84d0a48c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FatalExitExceptionHandler.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FatalExitExceptionHandler.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
index ea52cceb5..8848c3a4b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.io.DataFilePathFactory;
+import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java
index 9f4dbf216..a8d3ff8b7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileStatus;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/IteratorRecordReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/IteratorRecordReader.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/IteratorRecordReader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/IteratorRecordReader.java
index 4c8c7d932..795794c5b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/IteratorRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/IteratorRecordReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.paimon.reader.RecordReader;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonDeserializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonDeserializer.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonDeserializer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonDeserializer.java
index daa08076c..50a679120 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonDeserializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonDeserializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonSerdeUtil.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonSerdeUtil.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
index c94459f75..bc00574dd 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonSerdeUtil.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
-import org.apache.flink.table.store.file.schema.SchemaSerializer;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.SchemaSerializer;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypeJsonParser;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonSerializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonSerializer.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonSerializer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonSerializer.java
index aee2f1555..24de81007 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/KeyComparatorSupplier.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/KeyComparatorSupplier.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
index 051be6f7c..432b6149f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/KeyComparatorSupplier.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.GeneratedClass;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/MutableObjectIterator.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/MutableObjectIterator.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/MutableObjectIterator.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/MutableObjectIterator.java
index b90bc10c5..30de0f8fc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/MutableObjectIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/MutableObjectIterator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import java.io.IOException;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java
index 39dd8fb33..a38e2eb41 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataInputViewStreamWrapper;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/OffsetRow.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/OffsetRow.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java
index ce5af39c0..975b031c5 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/OffsetRow.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.paimon.types.RowKind;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/PartitionPathUtils.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/PartitionPathUtils.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/PartitionPathUtils.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/PartitionPathUtils.java
index d6d16d0ba..0b99bbc43 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/PartitionPathUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/PartitionPathUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.paimon.fs.Path;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RecordWriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RecordWriter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java
index 447a23f16..e51505623 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RecordWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 
 import java.util.List;
 
@@ -43,7 +43,7 @@ public interface RecordWriter<T> {
     void compact(boolean fullCompaction) throws Exception;
 
     /**
-     * Add files to the internal {@link org.apache.flink.table.store.file.compact.CompactManager}.
+     * Add files to the internal {@link org.apache.paimon.file.compact.CompactManager}.
      *
      * @param files files to add
      */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/Restorable.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/Restorable.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/Restorable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/Restorable.java
index f56ccf5f7..349074315 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/Restorable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/Restorable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 /**
  * Operations implementing this interface can checkpoint and restore their states between different
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RowDataPartitionComputer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RowDataPartitionComputer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java
index b8ce90258..62c80c9b5 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RowDataPartitionComputer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.RowDataUtils;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializableSupplier.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SerializableSupplier.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializableSupplier.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SerializableSupplier.java
index 946d47155..34bbde1b6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializableSupplier.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SerializableSupplier.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import java.io.Serializable;
 import java.util.function.Supplier;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java
index 638bc5772..f0569e2e9 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SnapshotManager.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SnapshotManager.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SnapshotManager.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SnapshotManager.java
index f5c02bebd..efd34894f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SnapshotManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SnapshotManager.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
-import org.apache.flink.table.store.file.Snapshot;
+import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.utils.Preconditions;
@@ -32,7 +32,7 @@ import java.util.Optional;
 import java.util.concurrent.TimeUnit;
 import java.util.function.BinaryOperator;
 
-import static org.apache.flink.table.store.file.utils.FileUtils.listVersionedFiles;
+import static org.apache.paimon.file.utils.FileUtils.listVersionedFiles;
 
 /** Manager for {@link Snapshot}, providing utility methods related to paths and snapshot hints. */
 public class SnapshotManager implements Serializable {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ThreadUtils.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ThreadUtils.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ThreadUtils.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ThreadUtils.java
index 707991193..4db461ef5 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ThreadUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ThreadUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.slf4j.Logger;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/VersionedObjectSerializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/VersionedObjectSerializer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java
index a4c051235..b01f31a2c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/VersionedObjectSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
index 6f8c2a346..963d00666 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
@@ -19,13 +19,13 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.FileStore;
-import org.apache.flink.table.store.file.operation.FileStoreScan;
+import org.apache.paimon.file.FileStore;
+import org.apache.paimon.file.operation.FileStoreScan;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.SchemaValidation;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.SchemaValidation;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
index c51425de5..5a5a3d82a 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
@@ -19,14 +19,14 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.AppendOnlyFileStore;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreRead;
-import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreScan;
-import org.apache.flink.table.store.file.operation.FileStoreScan;
-import org.apache.flink.table.store.file.operation.ReverseReader;
+import org.apache.paimon.file.AppendOnlyFileStore;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.operation.AppendOnlyFileStoreRead;
+import org.apache.paimon.file.operation.AppendOnlyFileStoreScan;
+import org.apache.paimon.file.operation.FileStoreScan;
+import org.apache.paimon.file.operation.ReverseReader;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
index 28b9ec337..43a1841b8 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
@@ -19,18 +19,18 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.KeyValueFileStore;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.mergetree.compact.ValueCountMergeFunction;
-import org.apache.flink.table.store.file.operation.FileStoreScan;
-import org.apache.flink.table.store.file.operation.KeyValueFileStoreScan;
-import org.apache.flink.table.store.file.operation.ReverseReader;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.KeyValueFileStore;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.compact.ValueCountMergeFunction;
+import org.apache.paimon.file.operation.FileStoreScan;
+import org.apache.paimon.file.operation.KeyValueFileStoreScan;
+import org.apache.paimon.file.operation.ReverseReader;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
@@ -53,7 +53,7 @@ import java.util.Collections;
 import java.util.List;
 import java.util.function.BiConsumer;
 
-import static org.apache.flink.table.store.file.schema.SystemColumns.VALUE_COUNT;
+import static org.apache.paimon.file.schema.SystemColumns.VALUE_COUNT;
 
 /** {@link FileStoreTable} for {@link WriteMode#CHANGE_LOG} write mode without primary keys. */
 public class ChangelogValueCountFileStoreTable extends AbstractFileStoreTable {
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
index f67864fee..88cb33984 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
@@ -20,19 +20,19 @@ package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.KeyValueFileStore;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.flink.table.store.file.mergetree.compact.LookupMergeFunction;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.flink.table.store.file.mergetree.compact.PartialUpdateMergeFunction;
-import org.apache.flink.table.store.file.mergetree.compact.aggregate.AggregateMergeFunction;
-import org.apache.flink.table.store.file.operation.FileStoreScan;
-import org.apache.flink.table.store.file.operation.KeyValueFileStoreScan;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.KeyValueFileStore;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.file.mergetree.compact.LookupMergeFunction;
+import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.file.mergetree.compact.PartialUpdateMergeFunction;
+import org.apache.paimon.file.mergetree.compact.aggregate.AggregateMergeFunction;
+import org.apache.paimon.file.operation.FileStoreScan;
+import org.apache.paimon.file.operation.KeyValueFileStoreScan;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
@@ -57,7 +57,7 @@ import java.util.stream.Collectors;
 import static org.apache.paimon.file.predicate.PredicateBuilder.and;
 import static org.apache.paimon.file.predicate.PredicateBuilder.pickTransformFieldMapping;
 import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
-import static org.apache.flink.table.store.file.schema.SystemColumns.KEY_FIELD_PREFIX;
+import static org.apache.paimon.file.schema.SystemColumns.KEY_FIELD_PREFIX;
 
 /** {@link FileStoreTable} for {@link WriteMode#CHANGE_LOG} write mode with primary keys. */
 public class ChangelogWithKeyFileStoreTable extends AbstractFileStoreTable {
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java
index da47ba3d0..d2a4aeb80 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.table.source.BatchDataTableScan;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
index 7b53fdace..ccbe5c0d6 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.table.sink.TableCommitImpl;
 import org.apache.paimon.table.sink.TableWriteImpl;
 import org.apache.paimon.types.RowType;
@@ -31,7 +31,7 @@ import java.util.List;
 import java.util.Map;
 
 /**
- * An abstraction layer above {@link org.apache.flink.table.store.file.FileStore} to provide reading
+ * An abstraction layer above {@link org.apache.paimon.file.FileStore} to provide reading
  * and writing of {@link InternalRow}.
  */
 public interface FileStoreTable extends DataTable, SupportsPartition {
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
index 4aae3148a..9acf5ce2a 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
@@ -20,9 +20,9 @@ package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/TableUtils.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/TableUtils.java
index b6cf73e7b..17222265d 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/TableUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/TableUtils.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.file.operation.Lock;
+import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateFilter;
 import org.apache.paimon.reader.RecordReader;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
index 9cc44e1c1..dc01f32f5 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
@@ -21,7 +21,7 @@ package org.apache.paimon.table.sink;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
index 587fcd286..ae864366c 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.file.io.CompactIncrement;
-import org.apache.flink.table.store.file.io.NewFilesIncrement;
+import org.apache.paimon.file.io.CompactIncrement;
+import org.apache.paimon.file.io.NewFilesIncrement;
 import org.apache.paimon.io.DataInputViewStreamWrapper;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
 
@@ -30,8 +30,8 @@ import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.file.utils.SerializationUtils.deserializedBytes;
-import static org.apache.flink.table.store.file.utils.SerializationUtils.serializeBytes;
+import static org.apache.paimon.file.utils.SerializationUtils.deserializedBytes;
+import static org.apache.paimon.file.utils.SerializationUtils.serializeBytes;
 
 /** File committable for sink. */
 public class CommitMessageImpl implements CommitMessage {
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
index e66fd69d9..d0ec98deb 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.file.io.CompactIncrement;
-import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
-import org.apache.flink.table.store.file.io.NewFilesIncrement;
+import org.apache.paimon.file.io.CompactIncrement;
+import org.apache.paimon.file.io.DataFileMetaSerializer;
+import org.apache.paimon.file.io.NewFilesIncrement;
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
@@ -33,8 +33,8 @@ import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 
-import static org.apache.flink.table.store.file.utils.SerializationUtils.deserializeBinaryRow;
-import static org.apache.flink.table.store.file.utils.SerializationUtils.serializeBinaryRow;
+import static org.apache.paimon.file.utils.SerializationUtils.deserializeBinaryRow;
+import static org.apache.paimon.file.utils.SerializationUtils.serializeBinaryRow;
 
 /** {@link VersionedSerializer} for {@link CommitMessage}. */
 public class CommitMessageSerializer implements VersionedSerializer<CommitMessage> {
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
index aff78b51b..c6675e0e2 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.file.operation.Lock;
+import org.apache.paimon.file.operation.Lock;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
index d7d173726..e315e96b0 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
@@ -20,7 +20,7 @@ package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
index c474413ce..d4bd9d1b7 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
@@ -20,7 +20,7 @@ package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
index ad67bfd37..f149b443c 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
-import org.apache.flink.table.store.file.operation.FileStoreCommit;
-import org.apache.flink.table.store.file.operation.FileStoreExpire;
-import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.flink.table.store.file.operation.PartitionExpire;
+import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.file.operation.FileStoreCommit;
+import org.apache.paimon.file.operation.FileStoreExpire;
+import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.file.operation.PartitionExpire;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
index 18b0a72ff..52a37b3a0 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.file.disk.IOManager;
+import org.apache.paimon.file.disk.IOManager;
 import org.apache.paimon.table.Table;
 
 import org.apache.paimon.annotation.Experimental;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
index c824791fa..a0b249d6a 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.file.disk.IOManager;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.operation.AbstractFileStoreWrite;
-import org.apache.flink.table.store.file.operation.FileStoreWrite;
-import org.apache.flink.table.store.file.utils.Restorable;
+import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.operation.AbstractFileStoreWrite;
+import org.apache.paimon.file.operation.FileStoreWrite;
+import org.apache.paimon.file.utils.Restorable;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
@@ -34,7 +34,7 @@ import static org.apache.paimon.utils.Preconditions.checkState;
 /**
  * {@link TableWrite} implementation.
  *
- * @param <T> type of record to write into {@link org.apache.flink.table.store.file.FileStore}.
+ * @param <T> type of record to write into {@link org.apache.paimon.file.FileStore}.
  */
 public class TableWriteImpl<T>
         implements InnerTableWrite, Restorable<List<AbstractFileStoreWrite.State>> {
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
index c55758fc6..f0e89828e 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.operation.FileStoreScan;
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.operation.FileStoreScan;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.table.source.snapshot.CompactedStartingScanner;
 import org.apache.paimon.table.source.snapshot.ContinuousFromSnapshotStartingScanner;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
index 60911d012..d2e47f5e6 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.utils.OrderedPacking;
 
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
index ace89db99..47dfd0e91 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
 import org.apache.paimon.table.source.snapshot.StartingScanner;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataSplit.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
index 151646c51..6a3803994 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
-import org.apache.flink.table.store.file.utils.SerializationUtils;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMetaSerializer;
+import org.apache.paimon.file.utils.SerializationUtils;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataInputViewStreamWrapper;
 import org.apache.paimon.io.DataOutputView;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
index bb2f96ec8..ec4f683ad 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.utils.Filter;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
index 41ace0185..9505c6d8a 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.operation.KeyValueFileStoreRead;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.operation.KeyValueFileStoreRead;
 import org.apache.paimon.reader.RecordReader;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
index 2f8b57766..c0daa57fe 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
-import org.apache.flink.table.store.file.mergetree.compact.IntervalPartition;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.file.mergetree.compact.IntervalPartition;
 import org.apache.paimon.utils.OrderedPacking;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
index ba299fc7d..ce59d42f4 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
index dfdb33fa2..35ad5c8b5 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
index d8cec34d0..deba51651 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.table.DataTable;
 import org.apache.paimon.table.source.snapshot.FollowUpScanner;
 import org.apache.paimon.table.source.snapshot.StartingScanner;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
index 3d0348f89..ef9831f1d 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.snapshot.BoundedWatermarkFollowUpScanner;
 import org.apache.paimon.table.source.snapshot.CompactedStartingScanner;
 import org.apache.paimon.table.source.snapshot.CompactionChangelogFollowUpScanner;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
index 96205e2ce..3540d86bd 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.utils.Restorable;
+import org.apache.paimon.file.utils.Restorable;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableRead.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableRead.java
index 9b753c610..45910d114 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableRead.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
-import org.apache.flink.table.store.file.operation.FileStoreRead;
+import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.file.operation.FileStoreRead;
 import org.apache.paimon.reader.RecordReader;
 
 import org.apache.paimon.annotation.Experimental;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
index 157dcc46a..d03f6d7fd 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateFilter;
 import org.apache.paimon.reader.RecordReaderIterator;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
index 1597fd10d..1fb3b3dd3 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
index c3e0dff0e..afe96621d 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
index 6a054329c..31b8554a4 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.Snapshot;
+import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.table.source.DataTableScan.DataFilePlan;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
index feb6a360d..213c60067 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
index 7649d6abf..99d4deac6 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
index e6f58b067..09767fc3c 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
index 991c1b526..fb1119657 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
index 01a4a2a1b..864f6223e 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 
 import java.util.Collections;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
index c415cc350..ffcc29539 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
index 5e5bb47ba..0a1882d93 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
index a6bd023a4..be456313b 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
index 988388cf4..b6f4cf476 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.Snapshot;
+import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.StreamDataTableScan;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
index 9a5fb0b2e..e3741b895 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
index f1de19e91..46198ae98 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
index 2e3803a5e..f601da1a2 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.SplitGenerator;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
index fcb82f498..abffb2567 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
@@ -21,15 +21,15 @@ package org.apache.paimon.table.source.snapshot;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.manifest.FileKind;
-import org.apache.flink.table.store.file.operation.FileStoreScan;
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.manifest.FileKind;
+import org.apache.paimon.file.operation.FileStoreScan;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.SplitGenerator;
 import org.apache.paimon.utils.Filter;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
index 1da5a7386..6d250a023 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.BatchDataTableScan;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.StreamDataTableScan;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
index b94d0212a..776abf60c 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
index a1dcda61d..70c0c0cba 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
index b9f814261..a6d7acf7e 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
@@ -19,12 +19,12 @@
 package org.apache.paimon.table.system;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.LeafPredicate;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.paimon.file.predicate.PredicateReplaceVisitor;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
@@ -63,7 +63,7 @@ import java.util.Map;
 import java.util.Optional;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
+import static org.apache.paimon.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
 
 /** A {@link Table} for reading audit log of table. */
 public class AuditLogTable implements DataTable, ReadonlyTable {
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
index 8c5422dc9..f2de5d338 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table.system;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMetaSerializer;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.utils.IteratorRecordReader;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.IteratorRecordReader;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/FilesTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
index 909b268e9..7b6a4a537 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
@@ -18,16 +18,16 @@
 
 package org.apache.paimon.table.system;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.DataFilePathFactory;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.file.stats.FieldStatsConverters;
-import org.apache.flink.table.store.file.utils.IteratorRecordReader;
-import org.apache.flink.table.store.file.utils.SerializationUtils;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.file.stats.FieldStatsConverters;
+import org.apache.paimon.file.utils.IteratorRecordReader;
+import org.apache.paimon.file.utils.SerializationUtils;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.ReadonlyTable;
@@ -68,7 +68,7 @@ import java.util.TreeMap;
 import java.util.function.Function;
 import java.util.function.Supplier;
 
-import static org.apache.flink.table.store.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
+import static org.apache.paimon.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
 
 /** A {@link Table} for showing files of a snapshot in specific table. */
 public class FilesTable implements ReadonlyTable {
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
index 34221f5be..3364a2ba5 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.system;
 
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.utils.IteratorRecordReader;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.utils.IteratorRecordReader;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
@@ -47,8 +47,8 @@ import java.util.Iterator;
 import java.util.Map;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
-import static org.apache.flink.table.store.file.utils.SerializationUtils.newStringType;
+import static org.apache.paimon.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
+import static org.apache.paimon.file.utils.SerializationUtils.newStringType;
 
 /** A {@link Table} for showing options of table. */
 public class OptionsTable implements ReadonlyTable {
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
index 93ee28ffb..90d60f98c 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table.system;
 
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.IteratorRecordReader;
-import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
-import org.apache.flink.table.store.file.utils.SerializationUtils;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.IteratorRecordReader;
+import org.apache.paimon.file.utils.JsonSerdeUtil;
+import org.apache.paimon.file.utils.SerializationUtils;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
@@ -52,7 +52,7 @@ import java.util.Iterator;
 import java.util.Map;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
+import static org.apache.paimon.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
 
 /** A {@link Table} for showing schemas of table. */
 public class SchemasTable implements ReadonlyTable {
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
index 9a4dea4bb..96da9a842 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.table.system;
 
-import org.apache.flink.table.store.file.Snapshot;
+import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.utils.IteratorRecordReader;
-import org.apache.flink.table.store.file.utils.SerializationUtils;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.IteratorRecordReader;
+import org.apache.paimon.file.utils.SerializationUtils;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
@@ -55,7 +55,7 @@ import java.util.Iterator;
 import java.util.Map;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
+import static org.apache.paimon.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
 
 /** A {@link Table} for showing committing snapshots of table. */
 public class SnapshotsTable implements ReadonlyTable {
diff --git a/flink-table-store-core/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory b/flink-table-store-core/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.file.catalog.CatalogFactory
similarity index 92%
rename from flink-table-store-core/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory
rename to flink-table-store-core/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.file.catalog.CatalogFactory
index 3edb81e17..fcc49ea7c 100644
--- a/flink-table-store-core/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory
+++ b/flink-table-store-core/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.file.catalog.CatalogFactory
@@ -13,4 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.flink.table.store.file.catalog.FileSystemCatalogFactory
+org.apache.paimon.file.catalog.FileSystemCatalogFactory
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
index ae8a5c638..a858eb32b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file;
+package org.apache.paimon.file;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/KeyValueSerializerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java
similarity index 93%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/KeyValueSerializerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java
index df7a8ce01..83dd6fa86 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/KeyValueSerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file;
+package org.apache.paimon.file;
 
-import org.apache.flink.table.store.file.utils.ObjectSerializer;
-import org.apache.flink.table.store.file.utils.ObjectSerializerTestBase;
+import org.apache.paimon.file.utils.ObjectSerializer;
+import org.apache.paimon.file.utils.ObjectSerializerTestBase;
 
 import org.apache.paimon.data.serializer.InternalRowSerializer;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/TestFileStore.java
similarity index 93%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/TestFileStore.java
index fba9c0a0b..160d865ea 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/TestFileStore.java
@@ -16,30 +16,30 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file;
+package org.apache.paimon.file;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
-import org.apache.flink.table.store.file.manifest.ManifestList;
-import org.apache.flink.table.store.file.memory.HeapMemorySegmentPool;
-import org.apache.flink.table.store.file.memory.MemoryOwner;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.flink.table.store.file.operation.AbstractFileStoreWrite;
-import org.apache.flink.table.store.file.operation.FileStoreCommit;
-import org.apache.flink.table.store.file.operation.FileStoreCommitImpl;
-import org.apache.flink.table.store.file.operation.FileStoreExpireImpl;
-import org.apache.flink.table.store.file.operation.FileStoreRead;
-import org.apache.flink.table.store.file.operation.FileStoreScan;
-import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.utils.CommitIncrement;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.manifest.ManifestFileMeta;
+import org.apache.paimon.file.manifest.ManifestList;
+import org.apache.paimon.file.memory.HeapMemorySegmentPool;
+import org.apache.paimon.file.memory.MemoryOwner;
+import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.file.operation.AbstractFileStoreWrite;
+import org.apache.paimon.file.operation.FileStoreCommit;
+import org.apache.paimon.file.operation.FileStoreCommitImpl;
+import org.apache.paimon.file.operation.FileStoreExpireImpl;
+import org.apache.paimon.file.operation.FileStoreRead;
+import org.apache.paimon.file.operation.FileStoreScan;
+import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.utils.CommitIncrement;
+import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.utils.RecordWriter;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
index 690cbf505..8a97a5f09 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file;
+package org.apache.paimon.file;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.table.SchemaEvolutionTableTestBase;
 import org.apache.paimon.types.ArrayType;
@@ -51,9 +51,9 @@ import java.util.Map;
 import java.util.Random;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.TestKeyValueGenerator.GeneratorMode.MULTI_PARTITIONED;
-import static org.apache.flink.table.store.file.TestKeyValueGenerator.GeneratorMode.NON_PARTITIONED;
-import static org.apache.flink.table.store.file.TestKeyValueGenerator.GeneratorMode.SINGLE_PARTITIONED;
+import static org.apache.paimon.file.TestKeyValueGenerator.GeneratorMode.MULTI_PARTITIONED;
+import static org.apache.paimon.file.TestKeyValueGenerator.GeneratorMode.NON_PARTITIONED;
+import static org.apache.paimon.file.TestKeyValueGenerator.GeneratorMode.SINGLE_PARTITIONED;
 
 /** Random {@link KeyValue} generator. */
 public class TestKeyValueGenerator {
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManagerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManagerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java
index e79988dc1..001d27d7f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManagerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.append;
+package org.apache.paimon.file.append;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.fs.local.LocalFileIO;
 
 import org.junit.jupiter.api.Test;
@@ -29,7 +29,7 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.file.io.DataFileTestUtils.newFile;
+import static org.apache.paimon.file.io.DataFileTestUtils.newFile;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link AppendOnlyCompactManager}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
index bf1d94328..90ffebc1b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
@@ -17,15 +17,15 @@
  * under the License.
  */
 
-package org.apache.flink.table.store.file.append;
+package org.apache.paimon.file.append;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.DataFilePathFactory;
-import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.file.utils.CommitIncrement;
-import org.apache.flink.table.store.file.utils.ExecutorThreadFactory;
-import org.apache.flink.table.store.file.utils.RecordWriter;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFilePathFactory;
+import org.apache.paimon.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.file.utils.CommitIncrement;
+import org.apache.paimon.file.utils.ExecutorThreadFactory;
+import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
@@ -52,7 +52,7 @@ import java.util.List;
 import java.util.UUID;
 import java.util.concurrent.Executors;
 
-import static org.apache.flink.table.store.file.io.DataFileMeta.getMaxSequenceNumber;
+import static org.apache.paimon.file.io.DataFileMeta.getMaxSequenceNumber;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test the correctness for {@link AppendOnlyWriter}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/IterativeCompactTaskTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/IterativeCompactTaskTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java
index ccf909abb..863db3c96 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/IterativeCompactTaskTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.append;
+package org.apache.paimon.file.append;
 
-import org.apache.flink.table.store.file.compact.CompactResult;
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.compact.CompactResult;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.fs.local.LocalFileIO;
 
 import org.junit.jupiter.api.Test;
@@ -31,7 +31,7 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
-import static org.apache.flink.table.store.file.io.DataFileTestUtils.newFile;
+import static org.apache.paimon.file.io.DataFileTestUtils.newFile;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.api.Assertions.fail;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/casting/CastExecutorTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java
similarity index 99%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/casting/CastExecutorTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java
index 96e188773..5e3b71093 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/casting/CastExecutorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.casting;
+package org.apache.paimon.file.casting;
 
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.BinaryType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/catalog/CatalogFactoryTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/catalog/CatalogFactoryTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java
index 02ea24d66..294486127 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/catalog/CatalogFactoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.catalog;
+package org.apache.paimon.file.catalog;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/BufferFileWriterReaderTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/BufferFileWriterReaderTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java
index 8df2848e0..bf4f0cd4a 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/BufferFileWriterReaderTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
-import org.apache.flink.table.store.file.memory.Buffer;
+import org.apache.paimon.file.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 
 import org.junit.jupiter.api.AfterEach;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/IOManagerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/disk/IOManagerTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/IOManagerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/disk/IOManagerTest.java
index 06ebe75dc..01224dafe 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/IOManagerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/disk/IOManagerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.disk;
+package org.apache.paimon.file.disk;
 
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
similarity index 87%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
index a302e6e95..debcce2b7 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.format;
+package org.apache.paimon.file.format;
 
-import org.apache.flink.table.store.file.append.AppendOnlyCompactManager;
-import org.apache.flink.table.store.file.append.AppendOnlyWriter;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.DataFilePathFactory;
-import org.apache.flink.table.store.file.io.KeyValueFileReadWriteTest;
-import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
-import org.apache.flink.table.store.file.utils.CommitIncrement;
+import org.apache.paimon.file.append.AppendOnlyCompactManager;
+import org.apache.paimon.file.append.AppendOnlyWriter;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFilePathFactory;
+import org.apache.paimon.file.io.KeyValueFileReadWriteTest;
+import org.apache.paimon.file.io.KeyValueFileWriterFactory;
+import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
similarity index 94%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
index ce9152db3..f930b2898 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.format;
+package org.apache.paimon.file.format;
 
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.file.stats.TestFileStatsExtractor;
+import org.apache.paimon.file.stats.TestFileStatsExtractor;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.types.RowType;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormatFactory.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormatFactory.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java
index 75786370b..b0ce9356c 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormatFactory.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.format;
+package org.apache.paimon.file.format;
 
 import org.apache.paimon.options.Options;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
index 0ea013279..00cd9e697 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.format;
+package org.apache.paimon.file.format;
 
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.options.Options;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileMetaSerializerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileMetaSerializerTest.java
similarity index 91%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileMetaSerializerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileMetaSerializerTest.java
index e203c5180..2077c2921 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileMetaSerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileMetaSerializerTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.file.utils.ObjectSerializerTestBase;
+import org.apache.paimon.file.utils.ObjectSerializerTestBase;
 
 import java.util.Arrays;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFilePathFactoryTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFilePathFactoryTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
index 6333f9b38..9319260e7 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFilePathFactoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestDataGenerator.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestDataGenerator.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java
index c605fde79..abca59cb9 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestDataGenerator.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.TestKeyValueGenerator;
-import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.TestKeyValueGenerator;
+import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.format.FieldStatsCollector;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestUtils.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestUtils.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java
index 648e1afcc..b19b79f8e 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestUtils.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.file.stats.StatsTestUtils;
+import org.apache.paimon.file.stats.StatsTestUtils;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
index ca32b9c55..f410200c3 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.KeyValueSerializerTest;
-import org.apache.flink.table.store.file.TestKeyValueGenerator;
-import org.apache.flink.table.store.file.format.FlushingFileFormat;
-import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.file.stats.StatsTestUtils;
-import org.apache.flink.table.store.file.utils.FailingFileIO;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.KeyValueSerializerTest;
+import org.apache.paimon.file.TestKeyValueGenerator;
+import org.apache.paimon.file.format.FlushingFileFormat;
+import org.apache.paimon.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.file.stats.StatsTestUtils;
+import org.apache.paimon.file.utils.FailingFileIO;
+import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.FileStatus;
@@ -54,7 +54,7 @@ import java.util.UUID;
 import java.util.concurrent.ThreadLocalRandom;
 import java.util.function.Function;
 
-import static org.apache.flink.table.store.file.TestKeyValueGenerator.createTestSchemaManager;
+import static org.apache.paimon.file.TestKeyValueGenerator.createTestSchemaManager;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
index 1d7bca9c6..920c2b489 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.io;
+package org.apache.paimon.file.io;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java
similarity index 91%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java
index 26434781e..0fbebf531 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
-import org.apache.flink.table.store.file.io.CompactIncrement;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.NewFilesIncrement;
+import org.apache.paimon.file.io.CompactIncrement;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.NewFilesIncrement;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 
@@ -34,8 +34,8 @@ import java.util.List;
 import java.util.concurrent.ThreadLocalRandom;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
-import static org.apache.flink.table.store.file.stats.StatsTestUtils.newTableStats;
+import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.file.stats.StatsTestUtils.newTableStats;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link ManifestCommittableSerializer}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestEntrySerializerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestEntrySerializerTest.java
similarity index 86%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestEntrySerializerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestEntrySerializerTest.java
index 342d6ed9f..51c74caab 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestEntrySerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestEntrySerializerTest.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
-import org.apache.flink.table.store.file.utils.ObjectSerializer;
-import org.apache.flink.table.store.file.utils.ObjectSerializerTestBase;
+import org.apache.paimon.file.utils.ObjectSerializer;
+import org.apache.paimon.file.utils.ObjectSerializerTestBase;
 
 /** Tests for {@link ManifestEntrySerializerTest}. */
 public class ManifestEntrySerializerTest extends ObjectSerializerTestBase<ManifestEntry> {
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaSerializerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializerTest.java
similarity index 89%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaSerializerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializerTest.java
index a995dd10a..85712d7f6 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaSerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializerTest.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
-import org.apache.flink.table.store.file.utils.ObjectSerializer;
-import org.apache.flink.table.store.file.utils.ObjectSerializerTestBase;
+import org.apache.paimon.file.utils.ObjectSerializer;
+import org.apache.paimon.file.utils.ObjectSerializerTestBase;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
index ad5dd2fd0..9556371b9 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.stats.StatsTestUtils;
-import org.apache.flink.table.store.file.utils.FailingFileIO;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.stats.StatsTestUtils;
+import org.apache.paimon.file.utils.FailingFileIO;
+import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
similarity index 92%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
index 04654e8da..cc9ccea44 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.stats.StatsTestUtils;
-import org.apache.flink.table.store.file.utils.FailingFileIO;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.stats.StatsTestUtils;
+import org.apache.paimon.file.utils.FailingFileIO;
+import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
@@ -40,7 +40,7 @@ import java.util.UUID;
 import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.TestKeyValueGenerator.DEFAULT_PART_TYPE;
+import static org.apache.paimon.file.TestKeyValueGenerator.DEFAULT_PART_TYPE;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for {@link ManifestFile}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestListTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
similarity index 94%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestListTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
index cc8c03aba..c4d77161c 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestListTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.TestKeyValueGenerator;
-import org.apache.flink.table.store.file.utils.FailingFileIO;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.TestKeyValueGenerator;
+import org.apache.paimon.file.utils.FailingFileIO;
+import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java
similarity index 95%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java
index 7da9be330..5e19884f6 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.manifest;
+package org.apache.paimon.file.manifest;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.TestKeyValueGenerator;
-import org.apache.flink.table.store.file.io.DataFileTestDataGenerator;
-import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.TestKeyValueGenerator;
+import org.apache.paimon.file.io.DataFileTestDataGenerator;
+import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/memory/MemoryPoolFactoryTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/memory/MemoryPoolFactoryTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/memory/MemoryPoolFactoryTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/memory/MemoryPoolFactoryTest.java
index 6b3e185e4..4600f7f41 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/memory/MemoryPoolFactoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/memory/MemoryPoolFactoryTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.memory;
+package org.apache.paimon.file.memory;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LevelsTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java
similarity index 92%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LevelsTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java
index cfdf5ba40..bc3e1392d 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LevelsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 
 import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
@@ -28,7 +28,7 @@ import java.util.Collections;
 import java.util.Comparator;
 import java.util.UUID;
 
-import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link Levels}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
similarity index 92%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
index e8fdc9cf0..367726f47 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
@@ -16,18 +16,18 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.format.FlushingFileFormat;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
-import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
-import org.apache.flink.table.store.file.io.RollingFileWriter;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.format.FlushingFileFormat;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.KeyValueFileReaderFactory;
+import org.apache.paimon.file.io.KeyValueFileWriterFactory;
+import org.apache.paimon.file.io.RollingFileWriter;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.io.cache.CacheManager;
@@ -58,8 +58,8 @@ import java.util.Map;
 import java.util.UUID;
 
 import static org.apache.flink.table.store.CoreOptions.TARGET_FILE_SIZE;
-import static org.apache.flink.table.store.file.KeyValue.UNKNOWN_SEQUENCE;
-import static org.apache.flink.table.store.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.file.KeyValue.UNKNOWN_SEQUENCE;
+import static org.apache.paimon.file.io.DataFileTestUtils.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test {@link LookupLevels}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
similarity index 92%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
index d109ed853..dab7d71cb 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
@@ -16,30 +16,30 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.compact.CompactResult;
-import org.apache.flink.table.store.file.format.FlushingFileFormat;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
-import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
-import org.apache.flink.table.store.file.io.RollingFileWriter;
-import org.apache.flink.table.store.file.memory.HeapMemorySegmentPool;
-import org.apache.flink.table.store.file.mergetree.compact.AbstractCompactRewriter;
-import org.apache.flink.table.store.file.mergetree.compact.CompactStrategy;
-import org.apache.flink.table.store.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.flink.table.store.file.mergetree.compact.IntervalPartition;
-import org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManager;
-import org.apache.flink.table.store.file.mergetree.compact.UniversalCompaction;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.CommitIncrement;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.file.utils.RecordWriter;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.compact.CompactResult;
+import org.apache.paimon.file.format.FlushingFileFormat;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.KeyValueFileReaderFactory;
+import org.apache.paimon.file.io.KeyValueFileWriterFactory;
+import org.apache.paimon.file.io.RollingFileWriter;
+import org.apache.paimon.file.memory.HeapMemorySegmentPool;
+import org.apache.paimon.file.mergetree.compact.AbstractCompactRewriter;
+import org.apache.paimon.file.mergetree.compact.CompactStrategy;
+import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.file.mergetree.compact.IntervalPartition;
+import org.apache.paimon.file.mergetree.compact.MergeTreeCompactManager;
+import org.apache.paimon.file.mergetree.compact.UniversalCompaction;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.CommitIncrement;
+import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBufferTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
similarity index 89%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBufferTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
index f6b558a19..331f105ba 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBufferTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
@@ -16,18 +16,18 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree;
+package org.apache.paimon.file.mergetree;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.memory.HeapMemorySegmentPool;
-import org.apache.flink.table.store.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionTestUtils;
-import org.apache.flink.table.store.file.mergetree.compact.ValueCountMergeFunction;
-import org.apache.flink.table.store.file.sort.BinaryInMemorySortBuffer;
-import org.apache.flink.table.store.file.utils.ReusingKeyValue;
-import org.apache.flink.table.store.file.utils.ReusingTestData;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.memory.HeapMemorySegmentPool;
+import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.file.mergetree.compact.MergeFunction;
+import org.apache.paimon.file.mergetree.compact.MergeFunctionTestUtils;
+import org.apache.paimon.file.mergetree.compact.ValueCountMergeFunction;
+import org.apache.paimon.file.sort.BinaryInMemorySortBuffer;
+import org.apache.paimon.file.utils.ReusingKeyValue;
+import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/CombiningRecordReaderTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
similarity index 94%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/CombiningRecordReaderTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
index 16e6c282f..32f7f7e34 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/CombiningRecordReaderTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.utils.ReusingTestData;
-import org.apache.flink.table.store.file.utils.TestReusingRecordReader;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.utils.ReusingTestData;
+import org.apache.paimon.file.utils.TestReusingRecordReader;
 import org.apache.paimon.reader.RecordReader;
 
 import org.junit.jupiter.api.RepeatedTest;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReaderTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java
similarity index 90%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReaderTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java
index d438b19c3..ab13e7a3f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReaderTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.utils.ReusingTestData;
-import org.apache.flink.table.store.file.utils.TestReusingRecordReader;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.utils.ReusingTestData;
+import org.apache.paimon.file.utils.TestReusingRecordReader;
 import org.apache.paimon.reader.RecordReader;
 
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ForceUpLevel0CompactionTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java
similarity index 86%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ForceUpLevel0CompactionTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java
index c6922f2b3..4ea582998 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ForceUpLevel0CompactionTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.compact.CompactUnit;
-import org.apache.flink.table.store.file.mergetree.LevelSortedRun;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
+import org.apache.paimon.file.compact.CompactUnit;
+import org.apache.paimon.file.mergetree.LevelSortedRun;
+import org.apache.paimon.file.mergetree.SortedRun;
 
 import org.junit.jupiter.api.Test;
 
@@ -28,7 +28,7 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.file.mergetree.compact.UniversalCompactionTest.file;
+import static org.apache.paimon.file.mergetree.compact.UniversalCompactionTest.file;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link ForceUpLevel0Compaction}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
index 595a2cd96..5df3a2e04 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.BeforeEach;
@@ -29,7 +29,7 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
 
-import static org.apache.flink.table.store.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.file.io.DataFileTestUtils.row;
 
 /** Tests for {@link FullChangelogMergeFunctionWrapper}. */
 public abstract class FullChangelogMergeFunctionWrapperTestBase {
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartitionTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
similarity index 95%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartitionTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
index d7bb9aa8e..63ac26462 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartitionTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
-import org.apache.flink.table.store.file.stats.StatsTestUtils;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.file.stats.StatsTestUtils;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
@@ -41,7 +41,7 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.stats.StatsTestUtils.newTableStats;
+import static org.apache.paimon.file.stats.StatsTestUtils.newTableStats;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
similarity index 95%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
index 8250dae64..aaaa712e5 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.mergetree.compact.aggregate.AggregateMergeFunction;
-import org.apache.flink.table.store.file.mergetree.compact.aggregate.FieldAggregator;
-import org.apache.flink.table.store.file.mergetree.compact.aggregate.FieldSumAgg;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.mergetree.compact.aggregate.AggregateMergeFunction;
+import org.apache.paimon.file.mergetree.compact.aggregate.FieldAggregator;
+import org.apache.paimon.file.mergetree.compact.aggregate.FieldSumAgg;
 import org.apache.paimon.types.DataTypes;
 
 import org.apache.paimon.data.InternalRow;
@@ -32,7 +32,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.flink.table.store.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.file.io.DataFileTestUtils.row;
 import static org.apache.paimon.types.RowKind.DELETE;
 import static org.apache.paimon.types.RowKind.INSERT;
 import static org.apache.paimon.types.RowKind.UPDATE_AFTER;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionTestUtils.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeFunctionTestUtils.java
similarity index 94%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionTestUtils.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeFunctionTestUtils.java
index e754460cf..56888fe51 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionTestUtils.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeFunctionTestUtils.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.utils.ReusingTestData;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.Preconditions;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManagerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java
similarity index 95%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManagerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java
index f791ff0cf..9db2968b6 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManagerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.compact.CompactResult;
-import org.apache.flink.table.store.file.compact.CompactUnit;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.DataFileTestUtils;
-import org.apache.flink.table.store.file.mergetree.Levels;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
+import org.apache.paimon.file.compact.CompactResult;
+import org.apache.paimon.file.compact.CompactUnit;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileTestUtils;
+import org.apache.paimon.file.mergetree.Levels;
+import org.apache.paimon.file.mergetree.SortedRun;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
@@ -43,7 +43,7 @@ import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.io.DataFileTestUtils.newFile;
+import static org.apache.paimon.file.io.DataFileTestUtils.newFile;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link MergeTreeCompactManager}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
index e2694ebb8..df74334e2 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.GenericRow;
@@ -33,7 +33,7 @@ import java.util.Collections;
 import java.util.List;
 import java.util.stream.Stream;
 
-import static org.apache.flink.table.store.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.file.io.DataFileTestUtils.row;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
 /** Tests for {@link ReducerMergeFunctionWrapper}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReaderTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java
similarity index 94%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReaderTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java
index 434d87a3e..6b27f349a 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReaderTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.utils.ReusingTestData;
-import org.apache.flink.table.store.file.utils.TestReusingRecordReader;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.utils.ReusingTestData;
+import org.apache.paimon.file.utils.TestReusingRecordReader;
 import org.apache.paimon.reader.RecordReader;
 
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/UniversalCompactionTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/UniversalCompactionTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java
index 9fea72446..48a7444fc 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/UniversalCompactionTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact;
+package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.file.compact.CompactUnit;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.mergetree.LevelSortedRun;
-import org.apache.flink.table.store.file.mergetree.SortedRun;
+import org.apache.paimon.file.compact.CompactUnit;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.LevelSortedRun;
+import org.apache.paimon.file.mergetree.SortedRun;
 
 import org.junit.jupiter.api.Test;
 
@@ -31,7 +31,7 @@ import java.util.List;
 import java.util.Optional;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.mergetree.compact.UniversalCompaction.createUnit;
+import static org.apache.paimon.file.mergetree.compact.UniversalCompaction.createUnit;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link UniversalCompaction}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregatorTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java
similarity index 99%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregatorTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java
index 6fae28cd0..8349d01c2 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregatorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.mergetree.compact.aggregate;
+package org.apache.paimon.file.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.BooleanType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/CleanedFileStoreExpireTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java
similarity index 95%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/CleanedFileStoreExpireTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java
index 1a560faff..a6f0605f4 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/CleanedFileStoreExpireTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.manifest.FileKind;
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.manifest.FileKind;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
index 8c98c84fa..da451035d 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
@@ -16,21 +16,21 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.TestFileStore;
-import org.apache.flink.table.store.file.TestKeyValueGenerator;
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
-import org.apache.flink.table.store.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.SchemaUtils;
-import org.apache.flink.table.store.file.utils.FailingFileIO;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.file.utils.TraceableFileIO;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.TestFileStore;
+import org.apache.paimon.file.TestKeyValueGenerator;
+import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.SchemaUtils;
+import org.apache.paimon.file.utils.FailingFileIO;
+import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.types.RowKind;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreExpireTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
similarity index 89%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreExpireTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
index d24023047..70c6c980d 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreExpireTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.TestFileStore;
-import org.apache.flink.table.store.file.TestKeyValueGenerator;
-import org.apache.flink.table.store.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.TestFileStore;
+import org.apache.paimon.file.TestKeyValueGenerator;
+import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java
similarity index 94%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java
index 08ba3064e..469cc1ee0 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java
@@ -16,19 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.TestFileStore;
-import org.apache.flink.table.store.file.TestKeyValueGenerator;
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.flink.table.store.file.mergetree.compact.ValueCountMergeFunction;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.TestFileStore;
+import org.apache.paimon.file.TestKeyValueGenerator;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.file.mergetree.compact.ValueCountMergeFunction;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java
similarity index 93%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java
index 44af8ab8d..0124a706c 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java
@@ -16,19 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
-
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.TestFileStore;
-import org.apache.flink.table.store.file.TestKeyValueGenerator;
-import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
-import org.apache.flink.table.store.file.manifest.ManifestList;
-import org.apache.flink.table.store.file.mergetree.compact.DeduplicateMergeFunction;
+package org.apache.paimon.file.operation;
+
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.TestFileStore;
+import org.apache.paimon.file.TestKeyValueGenerator;
+import org.apache.paimon.file.manifest.ManifestFileMeta;
+import org.apache.paimon.file.manifest.ManifestList;
+import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.types.IntType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
index 344d8e534..e6b8b7381 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.AbstractFileStoreTable;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/TestCommitThread.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java
similarity index 92%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/TestCommitThread.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java
index ba84fe945..20ff20eca 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/TestCommitThread.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
-
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.TestFileStore;
-import org.apache.flink.table.store.file.TestKeyValueGenerator;
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
-import org.apache.flink.table.store.file.memory.HeapMemorySegmentPool;
-import org.apache.flink.table.store.file.mergetree.MergeTreeWriter;
-import org.apache.flink.table.store.file.utils.CommitIncrement;
+package org.apache.paimon.file.operation;
+
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.TestFileStore;
+import org.apache.paimon.file.TestKeyValueGenerator;
+import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.file.memory.HeapMemorySegmentPool;
+import org.apache.paimon.file.mergetree.MergeTreeWriter;
+import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 import org.apache.paimon.types.RowType;
 
@@ -44,10 +44,10 @@ import java.util.UUID;
 import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.TestFileStore.PAGE_SIZE;
-import static org.apache.flink.table.store.file.TestFileStore.WRITE_BUFFER_SIZE;
-import static org.apache.flink.table.store.file.TestKeyValueGenerator.GeneratorMode.MULTI_PARTITIONED;
-import static org.apache.flink.table.store.file.utils.FailingFileIO.retryArtificialException;
+import static org.apache.paimon.file.TestFileStore.PAGE_SIZE;
+import static org.apache.paimon.file.TestFileStore.WRITE_BUFFER_SIZE;
+import static org.apache.paimon.file.TestKeyValueGenerator.GeneratorMode.MULTI_PARTITIONED;
+import static org.apache.paimon.file.utils.FailingFileIO.retryArtificialException;
 
 /** Testing {@link Thread}s to perform concurrent commits. */
 public class TestCommitThread extends Thread {
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/UncleanedFileStoreExpireTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/UncleanedFileStoreExpireTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java
index f362d435b..1821f65e9 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/UncleanedFileStoreExpireTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.operation;
+package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.fs.Path;
 
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/partition/PartitionTimeExtractorTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/partition/PartitionTimeExtractorTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/partition/PartitionTimeExtractorTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/partition/PartitionTimeExtractorTest.java
index 816f19221..4d73764d3 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/partition/PartitionTimeExtractorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/partition/PartitionTimeExtractorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.partition;
+package org.apache.paimon.file.partition;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/DataTypeJsonParserTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java
similarity index 99%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/DataTypeJsonParserTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java
index d808dee66..1bdbb5733 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/DataTypeJsonParserTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
-import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
+import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.BinaryType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java
similarity index 99%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java
index fec8ac7f5..5f2814b76 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
 import org.apache.paimon.file.predicate.Equal;
 import org.apache.paimon.file.predicate.IsNotNull;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaManagerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaManagerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
index c4fdd97c3..f589f5581 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaManagerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.utils.FailingFileIO;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.utils.FailingFileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
@@ -52,7 +52,7 @@ import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.file.utils.FailingFileIO.retryArtificialException;
+import static org.apache.paimon.file.utils.FailingFileIO.retryArtificialException;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaUtils.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaUtils.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java
index 0587a88c6..ad19b492b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaUtils.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.paimon.types.DataField;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaSerializationTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java
similarity index 93%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaSerializationTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java
index d34949a12..427818f53 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaSerializationTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
-import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
+import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
@@ -33,7 +33,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.flink.table.store.file.schema.TableSchemaTest.newRowType;
+import static org.apache.paimon.file.schema.TableSchemaTest.newRowType;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for serialize {@link TableSchema}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java
index bfef56de4..7ebf3f020 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.schema;
+package org.apache.paimon.file.schema;
 
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBufferTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBufferTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
index 228d38e69..7465e0af5 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBufferTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
-import org.apache.flink.table.store.file.disk.IOManager;
-import org.apache.flink.table.store.file.memory.HeapMemorySegmentPool;
-import org.apache.flink.table.store.file.memory.MemorySegmentPool;
-import org.apache.flink.table.store.file.utils.MutableObjectIterator;
+import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.file.memory.HeapMemorySegmentPool;
+import org.apache.paimon.file.memory.MemorySegmentPool;
+import org.apache.paimon.file.utils.MutableObjectIterator;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
index c28707e9e..3d5dbb92f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.paimon.memory.MemorySegment;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntRecordComparator.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntRecordComparator.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java
index 7c3da46d0..8fd8e34ba 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntRecordComparator.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.sort;
+package org.apache.paimon.file.sort;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java
index 76c18d82b..b1d62a882 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.stats;
+package org.apache.paimon.file.stats;
 
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
similarity index 93%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
index afad43b26..ee3cb80b2 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.stats;
+package org.apache.paimon.file.stats;
 
-import org.apache.flink.table.store.file.casting.CastExecutor;
-import org.apache.flink.table.store.file.schema.SchemaEvolutionUtil;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.casting.CastExecutor;
+import org.apache.paimon.file.schema.SchemaEvolutionUtil;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 
@@ -31,7 +31,7 @@ import org.junit.jupiter.api.Test;
 import java.util.Arrays;
 import java.util.Collections;
 
-import static org.apache.flink.table.store.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.file.io.DataFileTestUtils.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for {@link FieldStatsArraySerializer}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java
index 09d6b572f..c456180df 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.stats;
+package org.apache.paimon.file.stats;
 
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.IntType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/StatsTestUtils.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/StatsTestUtils.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java
index 9be8b4178..4c6df60db 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/StatsTestUtils.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.stats;
+package org.apache.paimon.file.stats;
 
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java
similarity index 94%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java
index 5926530dd..d4ea42442 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.stats;
+package org.apache.paimon.file.stats;
 
-import org.apache.flink.table.store.file.utils.FileUtils;
-import org.apache.flink.table.store.file.utils.ObjectSerializer;
+import org.apache.paimon.file.utils.FileUtils;
+import org.apache.paimon.file.utils.ObjectSerializer;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/BlockingIterator.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/BlockingIterator.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/BlockingIterator.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/utils/BlockingIterator.java
index 5593ca91e..517b429e5 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/BlockingIterator.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/BlockingIterator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import java.util.ArrayList;
 import java.util.Iterator;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FailingFileIO.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FailingFileIO.java
similarity index 99%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FailingFileIO.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FailingFileIO.java
index 7184fa95f..4f9955d2c 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FailingFileIO.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FailingFileIO.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOLoader;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
index 9d7a7b888..688d1d8ab 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.io.DataFilePathFactory;
+import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.IntType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ObjectSerializerTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ObjectSerializerTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java
index 3177b082f..bf3ee2f29 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ObjectSerializerTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataOutputSerializer;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/OffsetRowTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java
similarity index 99%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/OffsetRowTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java
index 3ccc72901..c21daf7b9 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/OffsetRowTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.paimon.types.RowKind;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingKeyValue.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java
similarity index 94%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingKeyValue.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java
index 6a30928e5..f93f2c491 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingKeyValue.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingTestData.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ReusingTestData.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingTestData.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ReusingTestData.java
index d0e7f7aad..549128241 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingTestData.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ReusingTestData.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.Preconditions;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/SnapshotManagerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/SnapshotManagerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java
index 581251401..88bd51123 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/SnapshotManagerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TestReusingRecordReader.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/TestReusingRecordReader.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TestReusingRecordReader.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/utils/TestReusingRecordReader.java
index 310c4bdcb..0320bbeec 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TestReusingRecordReader.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/TestReusingRecordReader.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
-import org.apache.flink.table.store.file.KeyValue;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TraceableFileIO.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java
similarity index 99%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TraceableFileIO.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java
index 8a94e88b7..46aabffdf 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TraceableFileIO.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.utils;
+package org.apache.paimon.file.utils;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
index ca59c31cd..19db80fae 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.FileIOFinder;
 
 import java.util.Map;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
index c99980c7c..702f5bbbb 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
@@ -19,14 +19,14 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.SchemaUtils;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.SchemaUtils;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.sink.StreamTableCommit;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
index 2cc8a55fa..2af7faa0a 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
@@ -19,9 +19,9 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
 
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
index 4bdcf8d60..5c526ed40 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.stats.BinaryTableStats;
 
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
index d9b2dede5..5b2055884 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.stats.BinaryTableStats;
 
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
index 0a808a214..57c5e9c6e 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
@@ -19,9 +19,9 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
 
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
index 50e0aa36f..8ec307aec 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.stats.BinaryTableStats;
 
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
index b20cd1df5..6be2290c6 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
@@ -19,9 +19,9 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
 
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
index 1fb3184f8..8ae938a78 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.stats.BinaryTableStats;
 
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
index 3a3bc0ffa..16fe2758e 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
@@ -19,15 +19,15 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.io.DataFilePathFactory;
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.io.DataFilePathFactory;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.SchemaUtils;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.SchemaUtils;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
index 19ddbc69f..70d1cb358 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
+import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.table.source.Split;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
index 079fde7b6..b817fb441 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.table.source.Split;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
index 17bcc4997..7e6df5b47 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
@@ -19,13 +19,13 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.table.source.DataSplit;
 
 import org.junit.jupiter.api.BeforeEach;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
index e0dd1790d..ac3c340ef 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
@@ -20,14 +20,14 @@ package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.SchemaUtils;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.SchemaUtils;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.sink.BatchTableCommit;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
index fdb587f03..e651fb612 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
@@ -19,13 +19,13 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.table.source.DataSplit;
 
 import org.apache.paimon.data.BinaryString;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
index d77e265d5..dfe969fd0 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
@@ -19,10 +19,10 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
+import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.table.source.DataSplit;
 
 import org.apache.paimon.data.BinaryString;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
index 1c56bccbc..637d0f6d1 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.file.operation.ScanKind;
+import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Equal;
 import org.apache.paimon.file.predicate.IsNull;
 import org.apache.paimon.file.predicate.LeafPredicate;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
index 56297d81d..637dab952 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
+import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.table.source.DataSplit;
 
 import org.apache.paimon.format.FieldStats;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
index f42c40530..9f3ba1455 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
@@ -18,15 +18,15 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
-import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader.ReaderSupplier;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.file.mergetree.compact.ConcatRecordReader.ReaderSupplier;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.SchemaChange;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.file.utils.TraceableFileIO;
+import org.apache.paimon.file.schema.SchemaChange;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
index f14553ed4..151ccd6b7 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
@@ -19,13 +19,13 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaChange;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.TraceableFileIO;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaChange;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
index b09454ba4..b8c73354f 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
@@ -20,9 +20,9 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaChange;
-import org.apache.flink.table.store.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaChange;
+import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.sink.StreamTableWrite;
@@ -51,8 +51,8 @@ import java.util.List;
 import java.util.UUID;
 import java.util.function.Consumer;
 
-import static org.apache.flink.table.store.file.schema.SystemColumns.KEY_FIELD_PREFIX;
-import static org.apache.flink.table.store.file.schema.SystemColumns.SYSTEM_FIELD_NAMES;
+import static org.apache.paimon.file.schema.SystemColumns.KEY_FIELD_PREFIX;
+import static org.apache.paimon.file.schema.SystemColumns.SYSTEM_FIELD_NAMES;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
index bf75ec614..49c733e9d 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.SchemaUtils;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.SchemaUtils;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.options.Options;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
index f0a057351..8ff4402ee 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
@@ -18,16 +18,16 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.file.io.CompactIncrement;
-import org.apache.flink.table.store.file.io.NewFilesIncrement;
+import org.apache.paimon.file.io.CompactIncrement;
+import org.apache.paimon.file.io.NewFilesIncrement;
 
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
 
-import static org.apache.flink.table.store.file.manifest.ManifestCommittableSerializerTest.randomCompactIncrement;
-import static org.apache.flink.table.store.file.manifest.ManifestCommittableSerializerTest.randomNewFilesIncrement;
-import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.file.manifest.ManifestCommittableSerializerTest.randomCompactIncrement;
+import static org.apache.paimon.file.manifest.ManifestCommittableSerializerTest.randomNewFilesIncrement;
+import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link CommitMessageSerializer}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
index 9ea99b439..f18076327 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
index ba26be452..598c2e3b9 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
@@ -19,12 +19,12 @@
 package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.operation.AbstractFileStoreWrite;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.SchemaUtils;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.TraceableFileIO;
+import org.apache.paimon.file.operation.AbstractFileStoreWrite;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.SchemaUtils;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.MemorySize;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
index 28bc5d649..23f1e0923 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.snapshot.ScannerTestBase;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
index b3dac2975..50b1baaf7 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.utils.ReusingTestData;
-import org.apache.flink.table.store.file.utils.TestReusingRecordReader;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.utils.ReusingTestData;
+import org.apache.paimon.file.utils.TestReusingRecordReader;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
index e1196d6af..6431ec4c0 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMeta;
 
 import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
@@ -29,7 +29,7 @@ import java.util.Comparator;
 import java.util.List;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.io.DataFileTestUtils.fromMinMax;
+import static org.apache.paimon.file.io.DataFileTestUtils.fromMinMax;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link AppendOnlySplitGenerator} and {@link MergeTreeSplitGenerator}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
index c3b84f57a..d1948ba67 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.DataFileTestDataGenerator;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileTestDataGenerator;
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
index 0290c7162..3d790f9c7 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.utils.ReusingTestData;
+import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
index 5d2e60ddf..7af4c1f1b 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.file.utils.ReusingTestData;
+import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.ProjectedRow;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
index c9243a14f..c8252b641 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.TableCommitImpl;
 
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
index a8a284dc1..2d2286ac2 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
index 1e9ae442f..76bcf29fa 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.StreamTableCommit;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
index bddde856d..729618a57 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.io.DataFileMetaSerializer;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
index 690979457..393f22aa0 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
index 18a6b54d8..8f0765c44 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
index d339f19db..ab32ecd6d 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
index 986622644..344f7640b 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
index 1eb31f653..a43f670c9 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
index 952501d0f..52ce68184 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.StreamTableCommit;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
index 8ab4b1758..b39682ae3 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.TraceableFileIO;
+import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory b/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
index 7bf0c996d..eca7d57a4 100644
--- a/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
+++ b/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
@@ -13,4 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.flink.table.store.file.format.FileStatsExtractingAvroFormatFactory
\ No newline at end of file
+org.apache.paimon.file.format.FileStatsExtractingAvroFormatFactory
\ No newline at end of file
diff --git a/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader b/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
index 6a638f03f..7e3ef65e3 100644
--- a/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
+++ b/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
@@ -13,5 +13,5 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.flink.table.store.file.utils.FailingFileIO$Loader
-org.apache.flink.table.store.file.utils.TraceableFileIO$Loader
+org.apache.paimon.file.utils.FailingFileIO$Loader
+org.apache.paimon.file.utils.TraceableFileIO$Loader
diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
index 8dd5138de..d91d7696a 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
@@ -20,10 +20,10 @@ package org.apache.paimon.benchmark;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.catalog.Catalog;
-import org.apache.flink.table.store.file.catalog.CatalogFactory;
-import org.apache.flink.table.store.file.catalog.Identifier;
-import org.apache.flink.table.store.file.schema.Schema;
+import org.apache.paimon.file.catalog.Catalog;
+import org.apache.paimon.file.catalog.CatalogFactory;
+import org.apache.paimon.file.catalog.Identifier;
+import org.apache.paimon.file.schema.Schema;
 import org.apache.paimon.options.CatalogOptions;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.Table;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index bcd63486c..0e7107efd 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -30,8 +30,8 @@ import org.apache.flink.table.catalog.exceptions.TableNotExistException;
 import org.apache.flink.table.delegation.Parser;
 import org.apache.flink.table.operations.Operation;
 import org.apache.flink.table.operations.ddl.CreateCatalogOperation;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.test.util.AbstractTestBase;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index 1960e87e3..7b459e169 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.BlockingIterator;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.types.Row;
 
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
index 080dd784f..296416616 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.utils.BlockingIterator;
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.connector.action.DeleteAction;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
index c40e3e413..950d90752 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.utils.BlockingIterator;
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
 import org.junit.Test;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index bcd63486c..0e7107efd 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -30,8 +30,8 @@ import org.apache.flink.table.catalog.exceptions.TableNotExistException;
 import org.apache.flink.table.delegation.Parser;
 import org.apache.flink.table.operations.Operation;
 import org.apache.flink.table.operations.ddl.CreateCatalogOperation;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.test.util.AbstractTestBase;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index 1960e87e3..7b459e169 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.BlockingIterator;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.types.Row;
 
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
index 080dd784f..296416616 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.utils.BlockingIterator;
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.connector.action.DeleteAction;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
index c40e3e413..950d90752 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.utils.BlockingIterator;
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
 import org.junit.Test;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
index b367850dc..e716086b5 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
@@ -31,8 +31,8 @@ import org.apache.flink.table.factories.DynamicTableSourceFactory;
 import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
 import org.apache.flink.table.store.CoreOptions.LogConsistency;
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
index af31b94ec..999a10f1e 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
@@ -42,10 +42,10 @@ import org.apache.flink.table.catalog.stats.CatalogTableStatistics;
 import org.apache.flink.table.descriptors.DescriptorProperties;
 import org.apache.flink.table.expressions.Expression;
 import org.apache.flink.table.factories.Factory;
-import org.apache.flink.table.store.file.catalog.Catalog;
-import org.apache.flink.table.store.file.catalog.Identifier;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaChange;
+import org.apache.paimon.file.catalog.Catalog;
+import org.apache.paimon.file.catalog.Identifier;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaChange;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.Table;
 import org.apache.flink.table.types.logical.RowType;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
index 81bffe328..5fa05cf9d 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.catalog.Catalog;
-import org.apache.flink.table.store.file.catalog.CatalogFactory;
+import org.apache.paimon.file.catalog.Catalog;
+import org.apache.paimon.file.catalog.CatalogFactory;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.ConfigOptions;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
index d28a8d97e..03ba38824 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
@@ -24,8 +24,8 @@ import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.factories.FactoryUtil;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.catalog.CatalogLock;
-import org.apache.flink.table.store.file.schema.SchemaManager;
+import org.apache.paimon.file.catalog.CatalogLock;
+import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.paimon.options.Options;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
index a5c49490a..757c0ea53 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
@@ -20,7 +20,7 @@ package org.apache.paimon.connector.action;
 
 import org.apache.flink.api.java.tuple.Tuple3;
 import org.apache.flink.api.java.utils.MultipleParameterTool;
-import org.apache.flink.table.store.file.catalog.CatalogUtils;
+import org.apache.paimon.file.catalog.CatalogUtils;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
index f32ef97b0..c8c60328c 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
@@ -25,10 +25,10 @@ import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.bridge.java.StreamTableEnvironment;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.catalog.Catalog;
-import org.apache.flink.table.store.file.catalog.CatalogFactory;
-import org.apache.flink.table.store.file.catalog.Identifier;
-import org.apache.flink.table.store.file.operation.Lock;
+import org.apache.paimon.file.catalog.Catalog;
+import org.apache.paimon.file.catalog.CatalogFactory;
+import org.apache.paimon.file.catalog.Identifier;
+import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.options.CatalogOptions;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
@@ -49,7 +49,7 @@ import java.util.List;
 import java.util.UUID;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.catalog.Catalog.DEFAULT_DATABASE;
+import static org.apache.paimon.file.catalog.Catalog.DEFAULT_DATABASE;
 
 /** Abstract base of {@link Action}. */
 public abstract class ActionBase implements Action {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
index 439e122a4..da63f9bc4 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
@@ -25,7 +25,7 @@ import org.apache.flink.table.functions.TableFunction;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateFilter;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.StreamDataTableScan;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
index 4b02f3053..2ff51ba16 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
@@ -23,7 +23,7 @@ import org.apache.flink.runtime.plugable.SerializationDelegate;
 import org.apache.flink.streaming.runtime.partitioner.StreamPartitioner;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.file.schema.TableSchema;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.table.sink.BucketComputer;
 import org.apache.paimon.table.sink.PartitionComputer;
 


[incubator-paimon] 21/32: [core] Rename paimon to change workflows

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 93fdb6fd93c23a3fd45573ebe718361c51efd107
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 15:31:11 2023 +0800

    [core] Rename paimon to change workflows
---
 .github/workflows/e2e-tests.yml        | 6 +++---
 .github/workflows/publish_snapshot.yml | 2 +-
 .github/workflows/utcase-itcase.yml    | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml
index 4835dcdb1..934e4a6e4 100644
--- a/.github/workflows/e2e-tests.yml
+++ b/.github/workflows/e2e-tests.yml
@@ -21,7 +21,7 @@ jobs:
           . .github/workflows/utils.sh
           jvm_timezone=$(random_timezone)
           echo "JVM timezone is set to $jvm_timezone"
-          ./mvnw test -pl flink-table-store-e2e-tests -Duser.timezone=$jvm_timezone
+          ./mvnw test -pl paimon-e2e-tests -Duser.timezone=$jvm_timezone
       - name: Build Flink 1.15
         run: ./mvnw clean install -Dmaven.test.skip=true -Pflink-1.15
       - name: Test Flink 1.15
@@ -30,7 +30,7 @@ jobs:
           . .github/workflows/utils.sh
           jvm_timezone=$(random_timezone)
           echo "JVM timezone is set to $jvm_timezone"
-          ./mvnw test -pl flink-table-store-e2e-tests -Duser.timezone=$jvm_timezone -Pflink-1.15
+          ./mvnw test -pl paimon-e2e-tests -Duser.timezone=$jvm_timezone -Pflink-1.15
       - name: Build Flink 1.14
         run: ./mvnw clean install -Dmaven.test.skip=true -Pflink-1.14
       - name: Test Flink 1.14
@@ -39,4 +39,4 @@ jobs:
           . .github/workflows/utils.sh
           jvm_timezone=$(random_timezone)
           echo "JVM timezone is set to $jvm_timezone"
-          ./mvnw test -pl flink-table-store-e2e-tests -Duser.timezone=$jvm_timezone -Pflink-1.14
+          ./mvnw test -pl paimon-e2e-tests -Duser.timezone=$jvm_timezone -Pflink-1.14
diff --git a/.github/workflows/publish_snapshot.yml b/.github/workflows/publish_snapshot.yml
index 0d2eaa72d..f3a391c63 100644
--- a/.github/workflows/publish_snapshot.yml
+++ b/.github/workflows/publish_snapshot.yml
@@ -25,7 +25,7 @@ on:
   workflow_dispatch:
 jobs:
   publish-snapshot:
-    if: github.repository == 'apache/flink-table-store'
+    if: github.repository == 'apache/incubator-paimon'
     runs-on: ubuntu-latest
     steps:
       - name: Checkout code
diff --git a/.github/workflows/utcase-itcase.yml b/.github/workflows/utcase-itcase.yml
index 5a0c473c3..31e73b9b6 100644
--- a/.github/workflows/utcase-itcase.yml
+++ b/.github/workflows/utcase-itcase.yml
@@ -19,4 +19,4 @@ jobs:
           . .github/workflows/utils.sh
           jvm_timezone=$(random_timezone)
           echo "JVM timezone is set to $jvm_timezone"
-          ./mvnw clean install -pl '!flink-table-store-e2e-tests' -Duser.timezone=$jvm_timezone
+          ./mvnw clean install -pl '!paimon-e2e-tests' -Duser.timezone=$jvm_timezone


[incubator-paimon] 13/32: [core] Rename paimon datagen in tests

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 04e023b006ae18efbe5eef841a81987afdd58636
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 14:17:25 2023 +0800

    [core] Rename paimon datagen in tests
---
 .../{flink/table/store => paimon}/datagen/DataGenVisitorBase.java   | 2 +-
 .../apache/{flink/table/store => paimon}/datagen/DataGenerator.java | 2 +-
 .../table/store => paimon}/datagen/DataGeneratorContainer.java      | 2 +-
 .../{flink/table/store => paimon}/datagen/DataGeneratorMapper.java  | 2 +-
 .../{flink/table/store => paimon}/datagen/RandomGenerator.java      | 2 +-
 .../table/store => paimon}/datagen/RandomGeneratorVisitor.java      | 2 +-
 .../{flink/table/store => paimon}/datagen/RowDataGenerator.java     | 2 +-
 .../src/test/java/org/apache/paimon/utils/RowDataUtilsTest.java     | 6 +++---
 8 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java b/paimon-common/src/test/java/org/apache/paimon/datagen/DataGenVisitorBase.java
similarity index 98%
rename from paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java
rename to paimon-common/src/test/java/org/apache/paimon/datagen/DataGenVisitorBase.java
index 38f22ae56..f4c3bfe16 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java
+++ b/paimon-common/src/test/java/org/apache/paimon/datagen/DataGenVisitorBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.datagen;
+package org.apache.paimon.datagen;
 
 import org.apache.paimon.options.Options;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenerator.java b/paimon-common/src/test/java/org/apache/paimon/datagen/DataGenerator.java
similarity index 95%
rename from paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenerator.java
rename to paimon-common/src/test/java/org/apache/paimon/datagen/DataGenerator.java
index 77ecdb242..3273cd22b 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenerator.java
+++ b/paimon-common/src/test/java/org/apache/paimon/datagen/DataGenerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.datagen;
+package org.apache.paimon.datagen;
 
 import java.io.Serializable;
 import java.util.Iterator;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorContainer.java b/paimon-common/src/test/java/org/apache/paimon/datagen/DataGeneratorContainer.java
similarity index 97%
rename from paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorContainer.java
rename to paimon-common/src/test/java/org/apache/paimon/datagen/DataGeneratorContainer.java
index c6dc52922..6b1976e4e 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorContainer.java
+++ b/paimon-common/src/test/java/org/apache/paimon/datagen/DataGeneratorContainer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.datagen;
+package org.apache.paimon.datagen;
 
 import org.apache.paimon.options.ConfigOption;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorMapper.java b/paimon-common/src/test/java/org/apache/paimon/datagen/DataGeneratorMapper.java
similarity index 97%
rename from paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorMapper.java
rename to paimon-common/src/test/java/org/apache/paimon/datagen/DataGeneratorMapper.java
index d6e606196..f1c8c8a20 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorMapper.java
+++ b/paimon-common/src/test/java/org/apache/paimon/datagen/DataGeneratorMapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.datagen;
+package org.apache.paimon.datagen;
 
 import org.apache.paimon.utils.SerializableFunction;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGenerator.java b/paimon-common/src/test/java/org/apache/paimon/datagen/RandomGenerator.java
similarity index 98%
rename from paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGenerator.java
rename to paimon-common/src/test/java/org/apache/paimon/datagen/RandomGenerator.java
index 7da89d9a6..cc2d0d76f 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGenerator.java
+++ b/paimon-common/src/test/java/org/apache/paimon/datagen/RandomGenerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.datagen;
+package org.apache.paimon.datagen;
 
 import org.apache.commons.math3.random.RandomDataGenerator;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java b/paimon-common/src/test/java/org/apache/paimon/datagen/RandomGeneratorVisitor.java
similarity index 99%
rename from paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java
rename to paimon-common/src/test/java/org/apache/paimon/datagen/RandomGeneratorVisitor.java
index ecb81c846..ec81f9e3d 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java
+++ b/paimon-common/src/test/java/org/apache/paimon/datagen/RandomGeneratorVisitor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.datagen;
+package org.apache.paimon.datagen;
 
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.ConfigOptions;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RowDataGenerator.java b/paimon-common/src/test/java/org/apache/paimon/datagen/RowDataGenerator.java
similarity index 97%
rename from paimon-common/src/test/java/org/apache/flink/table/store/datagen/RowDataGenerator.java
rename to paimon-common/src/test/java/org/apache/paimon/datagen/RowDataGenerator.java
index 8685d7a6d..543b5257c 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RowDataGenerator.java
+++ b/paimon-common/src/test/java/org/apache/paimon/datagen/RowDataGenerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.datagen;
+package org.apache.paimon.datagen;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-common/src/test/java/org/apache/paimon/utils/RowDataUtilsTest.java b/paimon-common/src/test/java/org/apache/paimon/utils/RowDataUtilsTest.java
index 85b05fa22..8288c89ac 100644
--- a/paimon-common/src/test/java/org/apache/paimon/utils/RowDataUtilsTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/utils/RowDataUtilsTest.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.utils;
 
-import org.apache.flink.table.store.datagen.DataGenerator;
-import org.apache.flink.table.store.datagen.RandomGeneratorVisitor;
-import org.apache.flink.table.store.datagen.RowDataGenerator;
+import org.apache.paimon.datagen.DataGenerator;
+import org.apache.paimon.datagen.RandomGeneratorVisitor;
+import org.apache.paimon.datagen.RowDataGenerator;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.types.DataTypeRoot;
 import org.apache.paimon.types.DataTypes;


[incubator-paimon] 24/32: [core] Rename paimon half file packages

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 309fd5db0bffaed71c749b362745c0ffeb5a9277
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 20:12:07 2023 +0800

    [core] Rename paimon half file packages
---
 .../apache/paimon/benchmark/TableBenchmark.java    |  8 ++---
 .../java/org/apache/paimon/format/FileFormat.java  |  2 +-
 .../apache/paimon/{file => }/predicate/And.java    |  2 +-
 .../paimon/{file => }/predicate/CompareUtils.java  |  2 +-
 .../{file => }/predicate/CompoundPredicate.java    |  2 +-
 .../apache/paimon/{file => }/predicate/Equal.java  |  4 +--
 .../paimon/{file => }/predicate/FieldRef.java      |  2 +-
 .../{file => }/predicate/FunctionVisitor.java      |  2 +-
 .../{file => }/predicate/GreaterOrEqual.java       |  4 +--
 .../paimon/{file => }/predicate/GreaterThan.java   |  4 +--
 .../org/apache/paimon/{file => }/predicate/In.java |  4 +--
 .../paimon/{file => }/predicate/IsNotNull.java     |  2 +-
 .../apache/paimon/{file => }/predicate/IsNull.java |  2 +-
 .../paimon/{file => }/predicate/LeafFunction.java  |  2 +-
 .../paimon/{file => }/predicate/LeafPredicate.java |  2 +-
 .../{file => }/predicate/LeafUnaryFunction.java    |  2 +-
 .../paimon/{file => }/predicate/LessOrEqual.java   |  4 +--
 .../paimon/{file => }/predicate/LessThan.java      |  4 +--
 .../paimon/{file => }/predicate/NotEqual.java      |  4 +--
 .../apache/paimon/{file => }/predicate/NotIn.java  |  4 +--
 .../predicate/NullFalseLeafBinaryFunction.java     |  2 +-
 .../org/apache/paimon/{file => }/predicate/Or.java |  2 +-
 .../paimon/{file => }/predicate/Predicate.java     |  2 +-
 .../{file => }/predicate/PredicateBuilder.java     |  2 +-
 .../{file => }/predicate/PredicateFilter.java      |  2 +-
 .../predicate/PredicateReplaceVisitor.java         |  2 +-
 .../{file => }/predicate/PredicateVisitor.java     |  2 +-
 .../paimon/{file => }/predicate/StartsWith.java    |  2 +-
 .../main/java/org/apache/paimon/utils/Filter.java  |  2 +-
 .../append/AppendOnlyCompactManager.java           | 12 +++----
 .../paimon/{file => }/append/AppendOnlyWriter.java | 16 ++++-----
 .../paimon/{file => }/casting/CastExecutor.java    |  2 +-
 .../paimon/{file => }/casting/CastExecutors.java   |  2 +-
 .../paimon/{file => }/casting/CastFieldGetter.java |  2 +-
 .../paimon/{file => }/casting/CastedRow.java       |  2 +-
 .../paimon/{file => }/catalog/AbstractCatalog.java |  4 +--
 .../apache/paimon/{file => }/catalog/Catalog.java  |  6 ++--
 .../paimon/{file => }/catalog/CatalogFactory.java  |  2 +-
 .../paimon/{file => }/catalog/CatalogLock.java     |  2 +-
 .../paimon/{file => }/catalog/CatalogUtils.java    |  2 +-
 .../{file => }/catalog/FileSystemCatalog.java      | 10 +++---
 .../catalog/FileSystemCatalogFactory.java          |  2 +-
 .../paimon/{file => }/catalog/Identifier.java      |  4 +--
 .../{file => }/compact/CompactFutureManager.java   |  2 +-
 .../paimon/{file => }/compact/CompactManager.java  |  4 +--
 .../paimon/{file => }/compact/CompactResult.java   |  4 +--
 .../paimon/{file => }/compact/CompactTask.java     |  4 +--
 .../paimon/{file => }/compact/CompactUnit.java     |  6 ++--
 .../{file => }/compact/NoopCompactManager.java     |  4 +--
 .../compression/BlockCompressionFactory.java       |  2 +-
 .../{file => }/compression/BlockCompressor.java    |  2 +-
 .../{file => }/compression/BlockDecompressor.java  |  2 +-
 .../compression/BufferCompressionException.java    |  2 +-
 .../compression/BufferDecompressionException.java  |  2 +-
 .../{file => }/compression/CompressorUtils.java    |  2 +-
 .../compression/Lz4BlockCompressionFactory.java    |  2 +-
 .../{file => }/compression/Lz4BlockCompressor.java |  6 ++--
 .../compression/Lz4BlockDecompressor.java          |  8 ++---
 .../{file => }/disk/AbstractFileIOChannel.java     |  2 +-
 .../{file => }/disk/BufferFileChannelReader.java   |  4 +--
 .../paimon/{file => }/disk/BufferFileReader.java   |  4 +--
 .../{file => }/disk/BufferFileReaderImpl.java      |  4 +--
 .../paimon/{file => }/disk/BufferFileWriter.java   |  4 +--
 .../{file => }/disk/BufferFileWriterImpl.java      |  4 +--
 .../{file => }/disk/ChannelReaderInputView.java    |  8 ++---
 .../disk/ChannelReaderInputViewIterator.java       |  2 +-
 .../paimon/{file => }/disk/ChannelWithMeta.java    |  2 +-
 .../{file => }/disk/ChannelWriterOutputView.java   |  8 ++---
 .../paimon/{file => }/disk/FileChannelManager.java |  2 +-
 .../{file => }/disk/FileChannelManagerImpl.java    |  6 ++--
 .../paimon/{file => }/disk/FileChannelUtil.java    |  4 +--
 .../paimon/{file => }/disk/FileIOChannel.java      |  2 +-
 .../apache/paimon/{file => }/disk/IOManager.java   |  6 ++--
 .../paimon/{file => }/disk/IOManagerImpl.java      |  6 ++--
 .../org/apache/paimon/file/AbstractFileStore.java  | 12 +++----
 .../apache/paimon/file/AppendOnlyFileStore.java    |  8 ++---
 .../java/org/apache/paimon/file/FileStore.java     | 12 +++----
 .../main/java/org/apache/paimon/file/KeyValue.java |  4 +--
 .../org/apache/paimon/file/KeyValueFileStore.java  | 12 +++----
 .../main/java/org/apache/paimon/file/Snapshot.java |  8 ++---
 .../file/sort/AbstractBinaryExternalMerger.java    | 14 ++++----
 .../paimon/file/sort/BinaryExternalMerger.java     |  8 ++---
 .../paimon/file/sort/BinaryExternalSortBuffer.java | 14 ++++----
 .../paimon/file/sort/BinaryInMemorySortBuffer.java |  2 +-
 .../paimon/file/sort/BinaryIndexedSortable.java    |  2 +-
 .../paimon/file/sort/SpillChannelManager.java      |  2 +-
 .../file/stats/FieldStatsArraySerializer.java      |  2 +-
 .../paimon/file/stats/FieldStatsConverters.java    |  4 +--
 .../paimon/file/utils/BulkFormatMapping.java       | 12 +++----
 .../apache/paimon/file/utils/CommitIncrement.java  |  4 +--
 .../paimon/file/utils/FileStorePathFactory.java    |  2 +-
 .../apache/paimon/file/utils/JsonSerdeUtil.java    |  4 +--
 .../org/apache/paimon/file/utils/RecordWriter.java |  4 +--
 .../{file => }/io/AbstractFileRecordIterator.java  |  6 ++--
 .../paimon/{file => }/io/CompactIncrement.java     |  2 +-
 .../apache/paimon/{file => }/io/DataFileMeta.java  |  2 +-
 .../{file => }/io/DataFileMetaSerializer.java      |  2 +-
 .../paimon/{file => }/io/DataFilePathFactory.java  |  2 +-
 .../apache/paimon/{file => }/io/FileWriter.java    |  2 +-
 .../io/KeyValueDataFileRecordReader.java           |  4 +--
 .../{file => }/io/KeyValueDataFileWriter.java      |  2 +-
 .../{file => }/io/KeyValueFileReaderFactory.java   | 10 +++---
 .../{file => }/io/KeyValueFileWriterFactory.java   |  2 +-
 .../paimon/{file => }/io/NewFilesIncrement.java    |  2 +-
 .../paimon/{file => }/io/RollingFileWriter.java    |  2 +-
 .../{file => }/io/RowDataFileRecordReader.java     |  4 +--
 .../paimon/{file => }/io/RowDataFileWriter.java    |  2 +-
 .../{file => }/io/RowDataRollingFileWriter.java    |  2 +-
 .../paimon/{file => }/io/SingleFileWriter.java     |  2 +-
 .../io/StatsCollectingSingleFileWriter.java        |  2 +-
 .../paimon/{file => }/manifest/FileKind.java       |  2 +-
 .../{file => }/manifest/ManifestCommittable.java   |  2 +-
 .../manifest/ManifestCommittableSerializer.java    |  2 +-
 .../paimon/{file => }/manifest/ManifestEntry.java  |  4 +--
 .../manifest/ManifestEntrySerializer.java          |  4 +--
 .../paimon/{file => }/manifest/ManifestFile.java   |  8 ++---
 .../{file => }/manifest/ManifestFileMeta.java      |  2 +-
 .../manifest/ManifestFileMetaSerializer.java       |  2 +-
 .../paimon/{file => }/manifest/ManifestList.java   |  2 +-
 .../apache/paimon/{file => }/memory/Buffer.java    |  4 +--
 .../{file => }/memory/HeapMemorySegmentPool.java   |  4 +--
 .../paimon/{file => }/memory/MemoryOwner.java      |  2 +-
 .../{file => }/memory/MemoryPoolFactory.java       |  4 +--
 .../{file => }/memory/MemorySegmentPool.java       |  4 +--
 .../{file => }/mergetree/DataFileReader.java       |  4 +--
 .../{file => }/mergetree/DropDeleteReader.java     |  2 +-
 .../{file => }/mergetree/LevelSortedRun.java       |  2 +-
 .../apache/paimon/{file => }/mergetree/Levels.java |  4 +--
 .../paimon/{file => }/mergetree/LookupLevels.java  |  4 +--
 .../{file => }/mergetree/MergeTreeReaders.java     | 16 ++++-----
 .../{file => }/mergetree/MergeTreeWriter.java      | 24 ++++++-------
 .../mergetree/SortBufferWriteBuffer.java           | 10 +++---
 .../paimon/{file => }/mergetree/SortedRun.java     |  4 +--
 .../paimon/{file => }/mergetree/WriteBuffer.java   |  4 +--
 .../mergetree/compact/AbstractCompactRewriter.java |  8 ++---
 .../compact/ChangelogMergeTreeRewriter.java        | 16 ++++-----
 .../mergetree/compact/ChangelogResult.java         |  2 +-
 .../mergetree/compact/CompactRewriter.java         |  8 ++---
 .../mergetree/compact/CompactStrategy.java         |  6 ++--
 .../mergetree/compact/ConcatRecordReader.java      |  2 +-
 .../compact/DeduplicateMergeFunction.java          |  2 +-
 .../mergetree/compact/ForceUpLevel0Compaction.java |  6 ++--
 .../compact/FullChangelogMergeFunctionWrapper.java |  2 +-
 .../FullChangelogMergeTreeCompactRewriter.java     | 10 +++---
 .../mergetree/compact/IntervalPartition.java       |  6 ++--
 .../LookupChangelogMergeFunctionWrapper.java       |  2 +-
 .../mergetree/compact/LookupCompaction.java        |  6 ++--
 .../mergetree/compact/LookupMergeFunction.java     |  2 +-
 .../compact/LookupMergeTreeCompactRewriter.java    | 12 +++----
 .../mergetree/compact/MergeFunction.java           |  2 +-
 .../mergetree/compact/MergeFunctionFactory.java    |  2 +-
 .../mergetree/compact/MergeFunctionWrapper.java    |  2 +-
 .../mergetree/compact/MergeTreeCompactManager.java | 14 ++++----
 .../compact/MergeTreeCompactRewriter.java          | 16 ++++-----
 .../mergetree/compact/MergeTreeCompactTask.java    | 12 +++----
 .../compact/PartialUpdateMergeFunction.java        |  2 +-
 .../compact/ReducerMergeFunctionWrapper.java       |  2 +-
 .../mergetree/compact/SortMergeReader.java         |  2 +-
 .../mergetree/compact/UniversalCompaction.java     |  8 ++---
 .../mergetree/compact/ValueCountMergeFunction.java |  2 +-
 .../compact/aggregate/AggregateMergeFunction.java  |  6 ++--
 .../compact/aggregate/FieldAggregator.java         |  2 +-
 .../compact/aggregate/FieldBoolAndAgg.java         |  2 +-
 .../compact/aggregate/FieldBoolOrAgg.java          |  2 +-
 .../compact/aggregate/FieldIgnoreRetractAgg.java   |  2 +-
 .../aggregate/FieldLastNonNullValueAgg.java        |  2 +-
 .../compact/aggregate/FieldLastValueAgg.java       |  2 +-
 .../compact/aggregate/FieldListaggAgg.java         |  2 +-
 .../mergetree/compact/aggregate/FieldMaxAgg.java   |  2 +-
 .../mergetree/compact/aggregate/FieldMinAgg.java   |  2 +-
 .../compact/aggregate/FieldPrimaryKeyAgg.java      |  2 +-
 .../mergetree/compact/aggregate/FieldSumAgg.java   |  2 +-
 .../operation/AbstractFileStoreScan.java           | 20 +++++------
 .../operation/AbstractFileStoreWrite.java          |  8 ++---
 .../operation/AppendOnlyFileStoreRead.java         | 22 ++++++------
 .../operation/AppendOnlyFileStoreScan.java         | 18 +++++-----
 .../operation/AppendOnlyFileStoreWrite.java        | 18 +++++-----
 .../{file => }/operation/FileStoreCommit.java      |  4 +--
 .../{file => }/operation/FileStoreCommitImpl.java  | 22 ++++++------
 .../{file => }/operation/FileStoreExpire.java      |  2 +-
 .../{file => }/operation/FileStoreExpireImpl.java  | 10 +++---
 .../paimon/{file => }/operation/FileStoreRead.java |  4 +--
 .../paimon/{file => }/operation/FileStoreScan.java | 12 +++----
 .../{file => }/operation/FileStoreWrite.java       |  6 ++--
 .../operation/KeyValueFileStoreRead.java           | 36 +++++++++----------
 .../operation/KeyValueFileStoreScan.java           | 20 +++++------
 .../operation/KeyValueFileStoreWrite.java          | 42 +++++++++++-----------
 .../apache/paimon/{file => }/operation/Lock.java   |  6 ++--
 .../{file => }/operation/MemoryFileStoreWrite.java |  8 ++---
 .../{file => }/operation/PartitionExpire.java      |  8 ++---
 .../paimon/{file => }/operation/ReverseReader.java |  2 +-
 .../paimon/{file => }/operation/ScanKind.java      |  2 +-
 .../partition/PartitionTimeExtractor.java          |  2 +-
 .../{file => }/predicate/BucketSelector.java       |  6 ++--
 .../paimon/{file => }/schema/IndexCastMapping.java |  4 +--
 .../{file => }/schema/KeyValueFieldsExtractor.java |  2 +-
 .../apache/paimon/{file => }/schema/Schema.java    |  2 +-
 .../paimon/{file => }/schema/SchemaChange.java     |  2 +-
 .../{file => }/schema/SchemaEvolutionUtil.java     | 14 ++++----
 .../paimon/{file => }/schema/SchemaManager.java    | 24 ++++++-------
 .../paimon/{file => }/schema/SchemaSerializer.java |  2 +-
 .../paimon/{file => }/schema/SchemaValidation.java |  6 ++--
 .../paimon/{file => }/schema/SystemColumns.java    |  2 +-
 .../paimon/{file => }/schema/TableSchema.java      |  2 +-
 .../paimon/table/AbstractFileStoreTable.java       | 10 +++---
 .../paimon/table/AppendOnlyFileStoreTable.java     | 12 +++----
 .../table/ChangelogValueCountFileStoreTable.java   | 18 +++++-----
 .../table/ChangelogWithKeyFileStoreTable.java      | 28 +++++++--------
 .../org/apache/paimon/table/FileStoreTable.java    |  4 +--
 .../apache/paimon/table/FileStoreTableFactory.java |  4 +--
 .../java/org/apache/paimon/table/TableUtils.java   |  6 ++--
 .../apache/paimon/table/sink/BucketComputer.java   |  2 +-
 .../paimon/table/sink/CommitMessageImpl.java       |  4 +--
 .../paimon/table/sink/CommitMessageSerializer.java |  6 ++--
 .../apache/paimon/table/sink/InnerTableCommit.java |  2 +-
 .../paimon/table/sink/PartitionComputer.java       |  2 +-
 .../paimon/table/sink/SinkRecordConverter.java     |  2 +-
 .../apache/paimon/table/sink/TableCommitImpl.java  | 10 +++---
 .../org/apache/paimon/table/sink/TableWrite.java   |  2 +-
 .../apache/paimon/table/sink/TableWriteImpl.java   |  8 ++---
 .../paimon/table/source/AbstractDataTableScan.java |  6 ++--
 .../table/source/AppendOnlySplitGenerator.java     |  2 +-
 .../org/apache/paimon/table/source/DataSplit.java  |  4 +--
 .../apache/paimon/table/source/DataTableScan.java  |  4 +--
 .../apache/paimon/table/source/InnerTableRead.java |  4 +--
 .../apache/paimon/table/source/InnerTableScan.java |  4 +--
 .../paimon/table/source/KeyValueTableRead.java     |  2 +-
 .../table/source/MergeTreeSplitGenerator.java      |  6 ++--
 .../apache/paimon/table/source/ReadBuilder.java    |  4 +--
 .../paimon/table/source/ReadBuilderImpl.java       |  2 +-
 .../apache/paimon/table/source/SplitGenerator.java |  2 +-
 .../paimon/table/source/StreamDataTableScan.java   |  2 +-
 .../org/apache/paimon/table/source/TableRead.java  |  4 +--
 .../paimon/table/source/TableStreamingReader.java  |  8 ++---
 .../source/snapshot/CompactedStartingScanner.java  |  2 +-
 .../CompactionChangelogFollowUpScanner.java        |  2 +-
 .../ContinuousCompactorFollowUpScanner.java        |  2 +-
 .../source/snapshot/DeltaFollowUpScanner.java      |  2 +-
 .../table/source/snapshot/FullStartingScanner.java |  2 +-
 .../snapshot/InputChangelogFollowUpScanner.java    |  2 +-
 .../table/source/snapshot/SnapshotSplitReader.java |  6 ++--
 .../source/snapshot/SnapshotSplitReaderImpl.java   | 16 ++++-----
 .../StaticFromSnapshotStartingScanner.java         |  2 +-
 .../StaticFromTimestampStartingScanner.java        |  2 +-
 .../apache/paimon/table/system/AuditLogTable.java  | 12 +++----
 .../apache/paimon/table/system/BucketsTable.java   |  6 ++--
 .../org/apache/paimon/table/system/FilesTable.java | 12 +++----
 .../apache/paimon/table/system/OptionsTable.java   |  6 ++--
 .../apache/paimon/table/system/SchemasTable.java   |  8 ++---
 .../apache/paimon/table/system/SnapshotsTable.java |  4 +--
 ....file.org.apache.paimon.catalog.CatalogFactory} |  2 +-
 .../append/AppendOnlyCompactManagerTest.java       |  6 ++--
 .../{file => }/append/AppendOnlyWriterTest.java    |  8 ++---
 .../append/IterativeCompactTaskTest.java           |  8 ++---
 .../{file => }/casting/CastExecutorTest.java       |  2 +-
 .../{file => }/catalog/CatalogFactoryTest.java     |  2 +-
 .../disk/BufferFileWriterReaderTest.java           |  4 +--
 .../paimon/{file => }/disk/IOManagerTest.java      |  2 +-
 .../java/org/apache/paimon/file/TestFileStore.java | 34 +++++++++---------
 .../apache/paimon/file/TestKeyValueGenerator.java  |  6 ++--
 .../paimon/file/format/FileFormatSuffixTest.java   | 12 +++----
 .../file/format/FileStatsExtractingAvroFormat.java |  2 +-
 .../paimon/file/format/FlushingFileFormat.java     |  2 +-
 .../file/sort/BinaryExternalSortBufferTest.java    |  6 ++--
 .../file/stats/FieldStatsArraySerializerTest.java  |  8 ++---
 .../file/utils/FileStorePathFactoryTest.java       |  2 +-
 .../{file => }/io/DataFileMetaSerializerTest.java  |  2 +-
 .../{file => }/io/DataFilePathFactoryTest.java     |  2 +-
 .../{file => }/io/DataFileTestDataGenerator.java   |  2 +-
 .../paimon/{file => }/io/DataFileTestUtils.java    |  2 +-
 .../{file => }/io/KeyValueFileReadWriteTest.java   |  2 +-
 .../{file => }/io/RollingFileWriterTest.java       |  2 +-
 .../ManifestCommittableSerializerTest.java         | 10 +++---
 .../manifest/ManifestEntrySerializerTest.java      |  2 +-
 .../manifest/ManifestFileMetaSerializerTest.java   |  2 +-
 .../{file => }/manifest/ManifestFileMetaTest.java  |  6 ++--
 .../{file => }/manifest/ManifestFileTest.java      |  4 +--
 .../{file => }/manifest/ManifestListTest.java      |  2 +-
 .../manifest/ManifestTestDataGenerator.java        |  4 +--
 .../{file => }/memory/MemoryPoolFactoryTest.java   |  2 +-
 .../paimon/{file => }/mergetree/LevelsTest.java    |  6 ++--
 .../{file => }/mergetree/LookupLevelsTest.java     | 18 +++++-----
 .../paimon/{file => }/mergetree/MergeTreeTest.java | 32 ++++++++---------
 .../mergetree/SortBufferWriteBufferTestBase.java   | 12 +++----
 .../compact/CombiningRecordReaderTestBase.java     |  2 +-
 .../mergetree/compact/ConcatRecordReaderTest.java  |  2 +-
 .../compact/ForceUpLevel0CompactionTest.java       | 10 +++---
 .../FullChangelogMergeFunctionWrapperTestBase.java |  4 +--
 .../mergetree/compact/IntervalPartitionTest.java   |  6 ++--
 .../LookupChangelogMergeFunctionWrapperTest.java   | 10 +++---
 .../mergetree/compact/MergeFunctionTestUtils.java  |  2 +-
 .../compact/MergeTreeCompactManagerTest.java       | 16 ++++-----
 .../ReducerMergeFunctionWrapperTestBase.java       |  4 +--
 .../mergetree/compact/SortMergeReaderTestBase.java |  2 +-
 .../mergetree/compact/UniversalCompactionTest.java | 12 +++----
 .../compact/aggregate/FieldAggregatorTest.java     |  2 +-
 .../operation/CleanedFileStoreExpireTest.java      |  8 ++---
 .../{file => }/operation/FileStoreCommitTest.java  | 12 +++----
 .../operation/FileStoreExpireTestBase.java         |  8 ++---
 .../operation/KeyValueFileStoreReadTest.java       | 18 +++++-----
 .../operation/KeyValueFileStoreScanTest.java       | 14 ++++----
 .../{file => }/operation/PartitionExpireTest.java  |  6 ++--
 .../{file => }/operation/TestCommitThread.java     |  8 ++---
 .../operation/UncleanedFileStoreExpireTest.java    |  2 +-
 .../partition/PartitionTimeExtractorTest.java      |  2 +-
 .../{file => }/predicate/BucketSelectorTest.java   |  6 ++--
 .../{file => }/predicate/PredicateBuilderTest.java |  2 +-
 .../paimon/{file => }/predicate/PredicateTest.java |  2 +-
 .../{file => }/schema/DataTypeJsonParserTest.java  |  2 +-
 .../{file => }/schema/SchemaEvolutionUtilTest.java | 12 +++----
 .../{file => }/schema/SchemaManagerTest.java       |  2 +-
 .../paimon/{file => }/schema/SchemaUtils.java      |  2 +-
 .../schema/TableSchemaSerializationTest.java       |  4 +--
 .../paimon/{file => }/schema/TableSchemaTest.java  |  2 +-
 .../paimon/table/AppendOnlyFileDataTableTest.java  |  4 +--
 .../paimon/table/AppendOnlyFileStoreTableTest.java | 14 ++++----
 .../AppendOnlyTableColumnTypeFileDataTest.java     |  4 +--
 .../AppendOnlyTableColumnTypeFileMetaTest.java     |  6 ++--
 .../table/AppendOnlyTableFileMetaFilterTest.java   |  6 ++--
 .../ChangelogValueCountColumnTypeFileDataTest.java |  4 +--
 .../ChangelogValueCountColumnTypeFileMetaTest.java |  6 ++--
 .../ChangelogValueCountFileDataTableTest.java      |  4 +--
 .../ChangelogValueCountFileMetaFilterTest.java     |  6 ++--
 .../ChangelogValueCountFileStoreTableTest.java     | 16 ++++-----
 .../ChangelogWithKeyColumnTypeFileDataTest.java    |  8 ++---
 .../table/ChangelogWithKeyFileDataTableTest.java   |  8 ++---
 .../table/ChangelogWithKeyFileMetaFilterTest.java  | 10 +++---
 .../table/ChangelogWithKeyFileStoreTableTest.java  | 14 ++++----
 ...hangelogWithKeyTableColumnTypeFileMetaTest.java | 10 +++---
 .../paimon/table/ColumnTypeFileDataTestBase.java   |  4 +--
 .../paimon/table/ColumnTypeFileMetaTestBase.java   |  6 ++--
 .../paimon/table/FileDataFilterTestBase.java       | 12 +++----
 .../paimon/table/FileMetaFilterTestBase.java       |  6 ++--
 .../paimon/table/FileStoreTableTestBase.java       | 12 +++----
 .../paimon/table/SchemaEvolutionTableTestBase.java | 12 +++----
 .../apache/paimon/table/SchemaEvolutionTest.java   | 14 ++++----
 .../paimon/table/WritePreemptMemoryTest.java       |  8 ++---
 .../table/sink/CommitMessageSerializerTest.java    | 10 +++---
 .../paimon/table/sink/SinkRecordConverterTest.java |  2 +-
 .../apache/paimon/table/sink/TableWriteTest.java   | 10 +++---
 .../paimon/table/source/SplitGeneratorTest.java    |  4 +--
 .../org/apache/paimon/table/source/SplitTest.java  |  4 +--
 .../BoundedWatermarkFollowUpScannerTest.java       |  2 +-
 .../ContinuousCompactorFollowUpScannerTest.java    |  2 +-
 .../table/source/snapshot/ScannerTestBase.java     |  8 ++---
 .../connector/AbstractTableStoreFactory.java       |  4 +--
 .../org/apache/paimon/connector/FlinkCatalog.java  |  8 ++---
 .../paimon/connector/FlinkCatalogFactory.java      |  4 +--
 .../paimon/connector/PredicateConverter.java       |  4 +--
 .../connector/TableStoreConnectorFactory.java      |  4 +--
 .../org/apache/paimon/connector/action/Action.java |  2 +-
 .../apache/paimon/connector/action/ActionBase.java | 10 +++---
 .../connector/lookup/FileStoreLookupFunction.java  |  8 ++---
 .../connector/sink/BucketStreamPartitioner.java    |  2 +-
 .../connector/sink/CommittableStateManager.java    |  4 +--
 .../apache/paimon/connector/sink/Committer.java    |  2 +-
 .../paimon/connector/sink/CommitterOperator.java   |  2 +-
 .../paimon/connector/sink/CompactorSink.java       |  2 +-
 .../connector/sink/CompactorSinkBuilder.java       |  2 +-
 .../paimon/connector/sink/FileStoreSink.java       |  4 +--
 .../paimon/connector/sink/FlinkSinkBuilder.java    |  2 +-
 .../sink/NoopCommittableStateManager.java          |  2 +-
 .../RestoreAndFailCommittableStateManager.java     |  2 +-
 .../paimon/connector/sink/StoreCommitter.java      |  2 +-
 .../connector/sink/StoreCompactOperator.java       |  4 +--
 .../paimon/connector/sink/StoreSinkWrite.java      |  2 +-
 .../paimon/connector/sink/StoreSinkWriteImpl.java  |  4 +--
 .../paimon/connector/sink/TableStoreSink.java      |  4 +--
 .../connector/source/CompactorSourceBuilder.java   |  4 +--
 .../source/ContinuousFileStoreSource.java          |  2 +-
 .../connector/source/FlinkSourceBuilder.java       |  2 +-
 .../paimon/connector/source/FlinkTableSource.java  |  4 +--
 .../connector/source/StaticFileStoreSource.java    |  2 +-
 .../paimon/connector/source/SystemTableSource.java |  2 +-
 .../paimon/connector/source/TableStoreSource.java  |  2 +-
 .../connector/BinaryRowTypeSerializerTest.java     |  2 +-
 .../paimon/connector/CatalogTableITCase.java       |  4 +--
 .../apache/paimon/connector/ChangelogModeTest.java |  4 +--
 .../apache/paimon/connector/FileStoreITCase.java   |  4 +--
 .../paimon/connector/FileSystemCatalogITCase.java  |  6 ++--
 .../apache/paimon/connector/FlinkCatalogTest.java  |  2 +-
 .../paimon/connector/ForceCompactionITCase.java    |  4 +--
 .../paimon/connector/PredicateConverterTest.java   |  4 +--
 .../paimon/connector/ReadWriteTableITCase.java     |  2 +-
 .../paimon/connector/RescaleBucketITCase.java      |  4 +--
 .../paimon/connector/action/ActionITCaseBase.java  |  8 ++---
 .../paimon/connector/kafka/KafkaLogTestUtils.java  |  2 +-
 .../connector/sink/CommittableSerializerTest.java  | 10 +++---
 .../connector/sink/CommitterOperatorTest.java      |  2 +-
 .../connector/sink/CommitterOperatorTestBase.java  |  4 +--
 .../paimon/connector/sink/CompactorSinkITCase.java |  6 ++--
 .../connector/sink/FileStoreShuffleBucketTest.java |  2 +-
 .../connector/source/CompactorSourceITCase.java    |  8 ++---
 .../source/ContinuousFileSplitEnumeratorTest.java  |  4 +--
 .../source/FileStoreSourceReaderTest.java          |  6 ++--
 .../source/FileStoreSourceSplitGeneratorTest.java  | 10 +++---
 .../source/FileStoreSourceSplitReaderTest.java     |  8 ++---
 .../source/FileStoreSourceSplitSerializerTest.java |  4 +--
 .../source/FileStoreSourceSplitStateTest.java      |  2 +-
 .../PendingSplitsCheckpointSerializerTest.java     |  2 +-
 .../source/TestChangelogDataReadWrite.java         | 20 +++++------
 .../apache/paimon/format/avro/AvroFileFormat.java  |  2 +-
 .../apache/paimon/format/orc/OrcFileFormat.java    |  2 +-
 .../orc/filter/OrcPredicateFunctionVisitor.java    |  6 ++--
 .../paimon/format/parquet/ParquetFileFormat.java   |  2 +-
 .../paimon/format/orc/OrcFilterConverterTest.java  |  4 +--
 .../java/org/apache/paimon/hive/HiveCatalog.java   | 16 ++++-----
 .../org/apache/paimon/hive/HiveCatalogFactory.java |  4 +--
 .../org/apache/paimon/hive/HiveCatalogLock.java    |  2 +-
 ....file.org.apache.paimon.catalog.CatalogFactory} |  0
 .../org/apache/paimon/hive/HiveCatalogITCase.java  | 10 +++---
 .../java/org/apache/paimon/hive/HiveSchema.java    |  2 +-
 .../hive/SearchArgumentToPredicateConverter.java   |  6 ++--
 .../paimon/hive/mapred/TableStoreInputFormat.java  |  4 +--
 .../paimon/hive/mapred/TableStoreInputSplit.java   |  2 +-
 .../org/apache/paimon/hive/FileStoreTestUtils.java |  4 +--
 .../apache/paimon/hive/HiveTableSchemaTest.java    |  4 +--
 .../SearchArgumentToPredicateConverterTest.java    |  4 +--
 .../apache/paimon/hive/TableStoreSerDeTest.java    |  4 +--
 .../hive/mapred/TableStoreInputSplitTest.java      |  2 +-
 .../apache/paimon/spark/SparkDataSourceReader.java |  2 +-
 .../apache/paimon/spark/SimpleTableTestHelper.java |  4 +--
 .../paimon/spark/SparkFilterConverterTest.java     |  4 +--
 .../java/org/apache/paimon/spark/SparkCatalog.java |  8 ++---
 .../apache/paimon/spark/SparkFilterConverter.java  |  6 ++--
 .../org/apache/paimon/spark/SparkScanBuilder.java  |  2 +-
 .../java/org/apache/paimon/spark/SparkSource.java  |  2 +-
 .../java/org/apache/paimon/spark/SparkTable.java   |  4 +--
 .../java/org/apache/paimon/spark/SparkWrite.java   |  2 +-
 .../org/apache/paimon/spark/SparkWriteBuilder.java |  2 +-
 .../paimon/spark/SparkFilterConverterTest.java     |  4 +--
 .../org/apache/paimon/spark/SparkReadITCase.java   |  2 +-
 .../org/apache/paimon/spark/SparkReadTestBase.java |  2 +-
 433 files changed, 1170 insertions(+), 1176 deletions(-)

diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
index 028dd94f3..72f1a697b 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
@@ -25,10 +25,10 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.catalog.Catalog;
-import org.apache.paimon.file.catalog.CatalogFactory;
-import org.apache.paimon.file.catalog.Identifier;
-import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogFactory;
+import org.apache.paimon.catalog.Identifier;
+import org.apache.paimon.schema.Schema;
 import org.apache.paimon.options.CatalogOptions;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.Table;
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java b/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
index f0ab792c0..946e549db 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.format;
 
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/And.java b/paimon-common/src/main/java/org/apache/paimon/predicate/And.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/And.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/And.java
index 8caf6e83e..011449ecf 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/And.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/And.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/CompareUtils.java b/paimon-common/src/main/java/org/apache/paimon/predicate/CompareUtils.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/CompareUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/CompareUtils.java
index 80a0520f2..9f64d316a 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/CompareUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/CompareUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/CompoundPredicate.java b/paimon-common/src/main/java/org/apache/paimon/predicate/CompoundPredicate.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/CompoundPredicate.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/CompoundPredicate.java
index 5f4bf1ee9..dcaa5c949 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/CompoundPredicate.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/CompoundPredicate.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java b/paimon-common/src/main/java/org/apache/paimon/predicate/Equal.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/Equal.java
index 7af47ee56..e375479a6 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/Equal.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
@@ -24,7 +24,7 @@ import org.apache.paimon.types.DataType;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.predicate.CompareUtils.compareLiteral;
 
 /** A {@link NullFalseLeafBinaryFunction} to eval equal. */
 public class Equal extends NullFalseLeafBinaryFunction {
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/FieldRef.java b/paimon-common/src/main/java/org/apache/paimon/predicate/FieldRef.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/FieldRef.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/FieldRef.java
index 607255757..a760ec273 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/FieldRef.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/FieldRef.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/FunctionVisitor.java b/paimon-common/src/main/java/org/apache/paimon/predicate/FunctionVisitor.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/FunctionVisitor.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/FunctionVisitor.java
index cab41a6a7..f15e85d7f 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/FunctionVisitor.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/FunctionVisitor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import java.util.List;
 import java.util.stream.Collectors;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java b/paimon-common/src/main/java/org/apache/paimon/predicate/GreaterOrEqual.java
similarity index 93%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/GreaterOrEqual.java
index 6f4256952..85005c55b 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/GreaterOrEqual.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
@@ -24,7 +24,7 @@ import org.apache.paimon.types.DataType;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.predicate.CompareUtils.compareLiteral;
 
 /** A {@link NullFalseLeafBinaryFunction} to eval greater or equal. */
 public class GreaterOrEqual extends NullFalseLeafBinaryFunction {
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java b/paimon-common/src/main/java/org/apache/paimon/predicate/GreaterThan.java
similarity index 93%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/GreaterThan.java
index 00d189040..57300945c 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/GreaterThan.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
@@ -24,7 +24,7 @@ import org.apache.paimon.types.DataType;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.predicate.CompareUtils.compareLiteral;
 
 /** A {@link LeafFunction} to eval greater. */
 public class GreaterThan extends NullFalseLeafBinaryFunction {
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java b/paimon-common/src/main/java/org/apache/paimon/predicate/In.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/In.java
index 56f32be79..2360b3f4f 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/In.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
@@ -24,7 +24,7 @@ import org.apache.paimon.types.DataType;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.predicate.CompareUtils.compareLiteral;
 
 /** A {@link LeafFunction} to eval in. */
 public class In extends LeafFunction {
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java b/paimon-common/src/main/java/org/apache/paimon/predicate/IsNotNull.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/IsNotNull.java
index 6844619a0..dcf5d1687 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/IsNotNull.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java b/paimon-common/src/main/java/org/apache/paimon/predicate/IsNull.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/IsNull.java
index adf4eebd4..22300c718 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/IsNull.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java b/paimon-common/src/main/java/org/apache/paimon/predicate/LeafFunction.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/LeafFunction.java
index e04ba86c6..c9c367e82 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/LeafFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java b/paimon-common/src/main/java/org/apache/paimon/predicate/LeafPredicate.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/LeafPredicate.java
index d79b23192..134384252 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/LeafPredicate.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.data.serializer.InternalSerializers;
 import org.apache.paimon.data.serializer.ListSerializer;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java b/paimon-common/src/main/java/org/apache/paimon/predicate/LeafUnaryFunction.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/LeafUnaryFunction.java
index 30c0e663b..429411c24 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/LeafUnaryFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java b/paimon-common/src/main/java/org/apache/paimon/predicate/LessOrEqual.java
similarity index 93%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/LessOrEqual.java
index bd9412abc..42bfe1192 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/LessOrEqual.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
@@ -24,7 +24,7 @@ import org.apache.paimon.types.DataType;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.predicate.CompareUtils.compareLiteral;
 
 /** A {@link NullFalseLeafBinaryFunction} to eval less or equal. */
 public class LessOrEqual extends NullFalseLeafBinaryFunction {
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java b/paimon-common/src/main/java/org/apache/paimon/predicate/LessThan.java
similarity index 93%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/LessThan.java
index ac5387106..8149f550c 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/LessThan.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
@@ -24,7 +24,7 @@ import org.apache.paimon.types.DataType;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.predicate.CompareUtils.compareLiteral;
 
 /** A {@link NullFalseLeafBinaryFunction} to eval less or equal. */
 public class LessThan extends NullFalseLeafBinaryFunction {
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java b/paimon-common/src/main/java/org/apache/paimon/predicate/NotEqual.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/NotEqual.java
index e6cca773c..0e2704ada 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/NotEqual.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
@@ -24,7 +24,7 @@ import org.apache.paimon.types.DataType;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.predicate.CompareUtils.compareLiteral;
 
 /** A {@link NullFalseLeafBinaryFunction} to eval not equal. */
 public class NotEqual extends NullFalseLeafBinaryFunction {
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java b/paimon-common/src/main/java/org/apache/paimon/predicate/NotIn.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/NotIn.java
index 5783b58c7..0a0a014df 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/NotIn.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
@@ -24,7 +24,7 @@ import org.apache.paimon.types.DataType;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.predicate.CompareUtils.compareLiteral;
 
 /** A {@link LeafFunction} to eval not in. */
 public class NotIn extends LeafFunction {
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java b/paimon-common/src/main/java/org/apache/paimon/predicate/NullFalseLeafBinaryFunction.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/NullFalseLeafBinaryFunction.java
index a05d70b44..244ed3d72 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/NullFalseLeafBinaryFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/Or.java b/paimon-common/src/main/java/org/apache/paimon/predicate/Or.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/Or.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/Or.java
index 5e61237c6..07603e740 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/Or.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/Or.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/Predicate.java b/paimon-common/src/main/java/org/apache/paimon/predicate/Predicate.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/Predicate.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/Predicate.java
index 4c396904d..91dc058d9 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/Predicate.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/Predicate.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.format.FieldStats;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java b/paimon-common/src/main/java/org/apache/paimon/predicate/PredicateBuilder.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/PredicateBuilder.java
index 920b7d812..8d5b7ffa5 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/PredicateBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.BinaryString;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java b/paimon-common/src/main/java/org/apache/paimon/predicate/PredicateFilter.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/PredicateFilter.java
index 8e22f605f..900214c42 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/PredicateFilter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateReplaceVisitor.java b/paimon-common/src/main/java/org/apache/paimon/predicate/PredicateReplaceVisitor.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateReplaceVisitor.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/PredicateReplaceVisitor.java
index 3058f9a05..f5bc0cf67 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateReplaceVisitor.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/PredicateReplaceVisitor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateVisitor.java b/paimon-common/src/main/java/org/apache/paimon/predicate/PredicateVisitor.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateVisitor.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/PredicateVisitor.java
index 7135363ff..c741c05d4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateVisitor.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/PredicateVisitor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 /** A visitor to visit {@link Predicate}. */
 public interface PredicateVisitor<T> {
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java b/paimon-common/src/main/java/org/apache/paimon/predicate/StartsWith.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java
rename to paimon-common/src/main/java/org/apache/paimon/predicate/StartsWith.java
index 2d15d9305..acbdd6de1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java
+++ b/paimon-common/src/main/java/org/apache/paimon/predicate/StartsWith.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.format.FieldStats;
diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/Filter.java b/paimon-common/src/main/java/org/apache/paimon/utils/Filter.java
index c70de3adc..39ff64ea6 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/Filter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/Filter.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.utils;
 
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 
 /**
  * Represents a filter (boolean-valued function) of one argument. This class is for avoiding name
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java b/paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyCompactManager.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java
rename to paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyCompactManager.java
index 2ae045b28..a81dc6050 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyCompactManager.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.append;
+package org.apache.paimon.append;
 
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.file.compact.CompactFutureManager;
-import org.apache.paimon.file.compact.CompactResult;
-import org.apache.paimon.file.compact.CompactTask;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.DataFilePathFactory;
+import org.apache.paimon.compact.CompactFutureManager;
+import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.compact.CompactTask;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.utils.Preconditions;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java b/paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyWriter.java
similarity index 94%
rename from paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyWriter.java
index c39d73015..1c7b7c156 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyWriter.java
@@ -17,15 +17,15 @@
  * under the License.
  */
 
-package org.apache.paimon.file.append;
+package org.apache.paimon.append;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.compact.CompactManager;
-import org.apache.paimon.file.io.CompactIncrement;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.DataFilePathFactory;
-import org.apache.paimon.file.io.NewFilesIncrement;
-import org.apache.paimon.file.io.RowDataRollingFileWriter;
+import org.apache.paimon.compact.CompactManager;
+import org.apache.paimon.io.CompactIncrement;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFilePathFactory;
+import org.apache.paimon.io.NewFilesIncrement;
+import org.apache.paimon.io.RowDataRollingFileWriter;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.format.FileFormat;
@@ -42,7 +42,7 @@ import java.util.Collections;
 import java.util.List;
 import java.util.concurrent.ExecutionException;
 
-import static org.apache.paimon.file.io.DataFileMeta.getMaxSequenceNumber;
+import static org.apache.paimon.io.DataFileMeta.getMaxSequenceNumber;
 
 /**
  * A {@link RecordWriter} implementation that only accepts records which are always insert
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutor.java b/paimon-core/src/main/java/org/apache/paimon/casting/CastExecutor.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutor.java
rename to paimon-core/src/main/java/org/apache/paimon/casting/CastExecutor.java
index bfc2aeb0a..32e35bac5 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutor.java
+++ b/paimon-core/src/main/java/org/apache/paimon/casting/CastExecutor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.casting;
+package org.apache.paimon.casting;
 
 /**
  * Interface to model a function that performs the casting of a value from one type to another.
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java b/paimon-core/src/main/java/org/apache/paimon/casting/CastExecutors.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java
rename to paimon-core/src/main/java/org/apache/paimon/casting/CastExecutors.java
index a98a5e932..22915adcc 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java
+++ b/paimon-core/src/main/java/org/apache/paimon/casting/CastExecutors.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.casting;
+package org.apache.paimon.casting;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/casting/CastFieldGetter.java b/paimon-core/src/main/java/org/apache/paimon/casting/CastFieldGetter.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/casting/CastFieldGetter.java
rename to paimon-core/src/main/java/org/apache/paimon/casting/CastFieldGetter.java
index 3c7d197fb..02168300a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/casting/CastFieldGetter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/casting/CastFieldGetter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.casting;
+package org.apache.paimon.casting;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java b/paimon-core/src/main/java/org/apache/paimon/casting/CastedRow.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java
rename to paimon-core/src/main/java/org/apache/paimon/casting/CastedRow.java
index 5b3f944c4..25c574425 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java
+++ b/paimon-core/src/main/java/org/apache/paimon/casting/CastedRow.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.casting;
+package org.apache.paimon.casting;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java b/paimon-core/src/main/java/org/apache/paimon/catalog/AbstractCatalog.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java
rename to paimon-core/src/main/java/org/apache/paimon/catalog/AbstractCatalog.java
index 87e647d37..42095c604 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/AbstractCatalog.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.catalog;
+package org.apache.paimon.catalog;
 
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.table.FileStoreTable;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java b/paimon-core/src/main/java/org/apache/paimon/catalog/Catalog.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java
rename to paimon-core/src/main/java/org/apache/paimon/catalog/Catalog.java
index 109add99e..29d561df0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/Catalog.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.catalog;
+package org.apache.paimon.catalog;
 
 import org.apache.paimon.annotation.Experimental;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaChange;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaChange;
 import org.apache.paimon.table.Table;
 
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java b/paimon-core/src/main/java/org/apache/paimon/catalog/CatalogFactory.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/catalog/CatalogFactory.java
index 480ffe59e..611da3e18 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/CatalogFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.catalog;
+package org.apache.paimon.catalog;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogLock.java b/paimon-core/src/main/java/org/apache/paimon/catalog/CatalogLock.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogLock.java
rename to paimon-core/src/main/java/org/apache/paimon/catalog/CatalogLock.java
index bed5ff5a7..89555bf9a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogLock.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/CatalogLock.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.catalog;
+package org.apache.paimon.catalog;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogUtils.java b/paimon-core/src/main/java/org/apache/paimon/catalog/CatalogUtils.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/catalog/CatalogUtils.java
index f40fda356..0f2f37270 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogUtils.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/CatalogUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.catalog;
+package org.apache.paimon.catalog;
 
 import org.apache.paimon.fs.Path;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalog.java b/paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalog.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalog.java
rename to paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalog.java
index 198e58df4..0808a9ac7 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalog.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalog.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.catalog;
+package org.apache.paimon.catalog;
 
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaChange;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaChange;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java b/paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalogFactory.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalogFactory.java
index 23cd76fff..84afbaa53 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalogFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.catalog;
+package org.apache.paimon.catalog;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java b/paimon-core/src/main/java/org/apache/paimon/catalog/Identifier.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java
rename to paimon-core/src/main/java/org/apache/paimon/catalog/Identifier.java
index 059fc678f..a1240fb2d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/Identifier.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.catalog;
+package org.apache.paimon.catalog;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.fs.Path;
@@ -25,7 +25,7 @@ import org.apache.paimon.utils.StringUtils;
 import java.io.Serializable;
 import java.util.Objects;
 
-import static org.apache.paimon.file.catalog.AbstractCatalog.DB_SUFFIX;
+import static org.apache.paimon.catalog.AbstractCatalog.DB_SUFFIX;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactFutureManager.java b/paimon-core/src/main/java/org/apache/paimon/compact/CompactFutureManager.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/compact/CompactFutureManager.java
rename to paimon-core/src/main/java/org/apache/paimon/compact/CompactFutureManager.java
index efb7710f3..d86c2a534 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactFutureManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compact/CompactFutureManager.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compact;
+package org.apache.paimon.compact;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactManager.java b/paimon-core/src/main/java/org/apache/paimon/compact/CompactManager.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/compact/CompactManager.java
rename to paimon-core/src/main/java/org/apache/paimon/compact/CompactManager.java
index 175d827e4..163b453a5 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compact/CompactManager.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compact;
+package org.apache.paimon.compact;
 
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 
 import java.io.Closeable;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactResult.java b/paimon-core/src/main/java/org/apache/paimon/compact/CompactResult.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/compact/CompactResult.java
rename to paimon-core/src/main/java/org/apache/paimon/compact/CompactResult.java
index c71ce3ff6..6a004d305 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactResult.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compact/CompactResult.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compact;
+package org.apache.paimon.compact;
 
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 
 import java.util.ArrayList;
 import java.util.Collections;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java b/paimon-core/src/main/java/org/apache/paimon/compact/CompactTask.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java
rename to paimon-core/src/main/java/org/apache/paimon/compact/CompactTask.java
index 809632547..e7e0b1bb0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compact/CompactTask.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compact;
+package org.apache.paimon.compact;
 
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactUnit.java b/paimon-core/src/main/java/org/apache/paimon/compact/CompactUnit.java
similarity index 91%
rename from paimon-core/src/main/java/org/apache/paimon/file/compact/CompactUnit.java
rename to paimon-core/src/main/java/org/apache/paimon/compact/CompactUnit.java
index f4d8b2aeb..9b0fdd26a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactUnit.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compact/CompactUnit.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compact;
+package org.apache.paimon.compact;
 
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.LevelSortedRun;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.LevelSortedRun;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java b/paimon-core/src/main/java/org/apache/paimon/compact/NoopCompactManager.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java
rename to paimon-core/src/main/java/org/apache/paimon/compact/NoopCompactManager.java
index dae33fe10..db3ae9595 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compact/NoopCompactManager.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compact;
+package org.apache.paimon.compact;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.utils.Preconditions;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compression/BlockCompressionFactory.java b/paimon-core/src/main/java/org/apache/paimon/compression/BlockCompressionFactory.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/compression/BlockCompressionFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/compression/BlockCompressionFactory.java
index 276219733..1c9df6155 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compression/BlockCompressionFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compression/BlockCompressionFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compression;
+package org.apache.paimon.compression;
 
 /**
  * Each compression codec has an implementation of {@link BlockCompressionFactory} to create
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compression/BlockCompressor.java b/paimon-core/src/main/java/org/apache/paimon/compression/BlockCompressor.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/compression/BlockCompressor.java
rename to paimon-core/src/main/java/org/apache/paimon/compression/BlockCompressor.java
index 1ccc2b002..f8f1d317b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compression/BlockCompressor.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compression/BlockCompressor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compression;
+package org.apache.paimon.compression;
 
 /**
  * A compressor which compresses a whole byte array each time. It will read from and write to byte
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compression/BlockDecompressor.java b/paimon-core/src/main/java/org/apache/paimon/compression/BlockDecompressor.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/compression/BlockDecompressor.java
rename to paimon-core/src/main/java/org/apache/paimon/compression/BlockDecompressor.java
index 172720571..8fc68a062 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compression/BlockDecompressor.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compression/BlockDecompressor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compression;
+package org.apache.paimon.compression;
 
 /** A decompressor which decompresses a block each time. */
 public interface BlockDecompressor {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compression/BufferCompressionException.java b/paimon-core/src/main/java/org/apache/paimon/compression/BufferCompressionException.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/compression/BufferCompressionException.java
rename to paimon-core/src/main/java/org/apache/paimon/compression/BufferCompressionException.java
index bac3d9283..60520e06c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compression/BufferCompressionException.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compression/BufferCompressionException.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compression;
+package org.apache.paimon.compression;
 
 /**
  * A {@code BufferCompressionException} is thrown when the target data cannot be compressed, such as
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compression/BufferDecompressionException.java b/paimon-core/src/main/java/org/apache/paimon/compression/BufferDecompressionException.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/compression/BufferDecompressionException.java
rename to paimon-core/src/main/java/org/apache/paimon/compression/BufferDecompressionException.java
index 43a17e289..80f3082bc 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compression/BufferDecompressionException.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compression/BufferDecompressionException.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compression;
+package org.apache.paimon.compression;
 
 /**
  * A {@code BufferDecompressionException} is thrown when the target data cannot be decompressed,
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compression/CompressorUtils.java b/paimon-core/src/main/java/org/apache/paimon/compression/CompressorUtils.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/compression/CompressorUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/compression/CompressorUtils.java
index e780869bf..df284c327 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compression/CompressorUtils.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compression/CompressorUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compression;
+package org.apache.paimon.compression;
 
 /** Utils for {@link BlockCompressor}. */
 public class CompressorUtils {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressionFactory.java b/paimon-core/src/main/java/org/apache/paimon/compression/Lz4BlockCompressionFactory.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressionFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/compression/Lz4BlockCompressionFactory.java
index 616b72a39..91be9e916 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressionFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compression/Lz4BlockCompressionFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compression;
+package org.apache.paimon.compression;
 
 /** Implementation of {@link BlockCompressionFactory} for Lz4 codec. */
 public class Lz4BlockCompressionFactory implements BlockCompressionFactory {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressor.java b/paimon-core/src/main/java/org/apache/paimon/compression/Lz4BlockCompressor.java
similarity index 91%
rename from paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressor.java
rename to paimon-core/src/main/java/org/apache/paimon/compression/Lz4BlockCompressor.java
index 3534b5a1c..434f6242e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressor.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compression/Lz4BlockCompressor.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compression;
+package org.apache.paimon.compression;
 
 import net.jpountz.lz4.LZ4Compressor;
 import net.jpountz.lz4.LZ4Factory;
 
-import static org.apache.paimon.file.compression.CompressorUtils.HEADER_LENGTH;
-import static org.apache.paimon.file.compression.CompressorUtils.writeIntLE;
+import static org.apache.paimon.compression.CompressorUtils.HEADER_LENGTH;
+import static org.apache.paimon.compression.CompressorUtils.writeIntLE;
 
 /**
  * Encode data into LZ4 format (not compatible with the LZ4 Frame format). It reads from and writes
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockDecompressor.java b/paimon-core/src/main/java/org/apache/paimon/compression/Lz4BlockDecompressor.java
similarity index 90%
rename from paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockDecompressor.java
rename to paimon-core/src/main/java/org/apache/paimon/compression/Lz4BlockDecompressor.java
index 1d89f3bba..d707276e2 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockDecompressor.java
+++ b/paimon-core/src/main/java/org/apache/paimon/compression/Lz4BlockDecompressor.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.compression;
+package org.apache.paimon.compression;
 
 import net.jpountz.lz4.LZ4Exception;
 import net.jpountz.lz4.LZ4Factory;
 import net.jpountz.lz4.LZ4FastDecompressor;
 
-import static org.apache.paimon.file.compression.CompressorUtils.HEADER_LENGTH;
-import static org.apache.paimon.file.compression.CompressorUtils.readIntLE;
-import static org.apache.paimon.file.compression.CompressorUtils.validateLength;
+import static org.apache.paimon.compression.CompressorUtils.HEADER_LENGTH;
+import static org.apache.paimon.compression.CompressorUtils.readIntLE;
+import static org.apache.paimon.compression.CompressorUtils.validateLength;
 
 /**
  * Decode data written with {@link Lz4BlockCompressor}. It reads from and writes to byte arrays
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java b/paimon-core/src/main/java/org/apache/paimon/disk/AbstractFileIOChannel.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/AbstractFileIOChannel.java
index 2ccf522d0..7f868c332 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/AbstractFileIOChannel.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
 import org.apache.paimon.utils.Preconditions;
 import org.slf4j.Logger;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileChannelReader.java b/paimon-core/src/main/java/org/apache/paimon/disk/BufferFileChannelReader.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileChannelReader.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/BufferFileChannelReader.java
index cc63babbe..6762edeb4 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileChannelReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/BufferFileChannelReader.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
-import org.apache.paimon.file.memory.Buffer;
+import org.apache.paimon.memory.Buffer;
 
 import java.io.IOException;
 import java.nio.ByteBuffer;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java b/paimon-core/src/main/java/org/apache/paimon/disk/BufferFileReader.java
similarity index 93%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/BufferFileReader.java
index 54b6e23c0..b44c40fe6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/BufferFileReader.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
 import org.apache.paimon.annotation.Experimental;
-import org.apache.paimon.file.memory.Buffer;
+import org.apache.paimon.memory.Buffer;
 
 import java.io.IOException;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReaderImpl.java b/paimon-core/src/main/java/org/apache/paimon/disk/BufferFileReaderImpl.java
similarity index 94%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReaderImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/BufferFileReaderImpl.java
index 893a73def..0e7db1b4f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReaderImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/BufferFileReaderImpl.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
-import org.apache.paimon.file.memory.Buffer;
+import org.apache.paimon.memory.Buffer;
 
 import java.io.IOException;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/disk/BufferFileWriter.java
similarity index 94%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/BufferFileWriter.java
index fe79a8fed..0f32189cb 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/BufferFileWriter.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
 import org.apache.paimon.annotation.Experimental;
-import org.apache.paimon.file.memory.Buffer;
+import org.apache.paimon.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriterImpl.java b/paimon-core/src/main/java/org/apache/paimon/disk/BufferFileWriterImpl.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriterImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/BufferFileWriterImpl.java
index 6d2cbe145..6849416a0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriterImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/BufferFileWriterImpl.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
-import org.apache.paimon.file.memory.Buffer;
+import org.apache.paimon.memory.Buffer;
 import org.apache.paimon.utils.FileIOUtils;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputView.java
similarity index 94%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputView.java
index b545b8ab1..bc99ab6cb 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputView.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
 import org.apache.paimon.data.AbstractPagedInputView;
-import org.apache.paimon.file.compression.BlockCompressionFactory;
-import org.apache.paimon.file.compression.BlockDecompressor;
-import org.apache.paimon.file.memory.Buffer;
+import org.apache.paimon.compression.BlockCompressionFactory;
+import org.apache.paimon.compression.BlockDecompressor;
+import org.apache.paimon.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 
 import java.io.EOFException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputViewIterator.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputViewIterator.java
index 47e012e4c..d86909df5 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputViewIterator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWithMeta.java b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelWithMeta.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWithMeta.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/ChannelWithMeta.java
index e9cbf6c27..f728ad1dd 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWithMeta.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelWithMeta.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
 /** Channel with block count and numBytesInLastBlock of file. */
 public class ChannelWithMeta {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelWriterOutputView.java
similarity index 93%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/ChannelWriterOutputView.java
index d85efa25b..7883b1d2a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelWriterOutputView.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
 import org.apache.paimon.data.AbstractPagedOutputView;
-import org.apache.paimon.file.compression.BlockCompressionFactory;
-import org.apache.paimon.file.compression.BlockCompressor;
-import org.apache.paimon.file.memory.Buffer;
+import org.apache.paimon.compression.BlockCompressionFactory;
+import org.apache.paimon.compression.BlockCompressor;
+import org.apache.paimon.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManager.java b/paimon-core/src/main/java/org/apache/paimon/disk/FileChannelManager.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManager.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/FileChannelManager.java
index 7b7965f6c..1c6a709cf 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/FileChannelManager.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
 import java.io.File;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java b/paimon-core/src/main/java/org/apache/paimon/disk/FileChannelManagerImpl.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/FileChannelManagerImpl.java
index b50c94ee7..b6e1a1b6e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/FileChannelManagerImpl.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
-import org.apache.paimon.file.disk.FileIOChannel.Enumerator;
-import org.apache.paimon.file.disk.FileIOChannel.ID;
+import org.apache.paimon.disk.FileIOChannel.Enumerator;
+import org.apache.paimon.disk.FileIOChannel.ID;
 import org.apache.paimon.utils.FileIOUtils;
 import org.apache.paimon.utils.IOUtils;
 import org.slf4j.Logger;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelUtil.java b/paimon-core/src/main/java/org/apache/paimon/disk/FileChannelUtil.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelUtil.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/FileChannelUtil.java
index c14d58016..1dbfcdb9c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelUtil.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/FileChannelUtil.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
-import org.apache.paimon.file.compression.BlockCompressionFactory;
+import org.apache.paimon.compression.BlockCompressionFactory;
 
 import java.io.IOException;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java b/paimon-core/src/main/java/org/apache/paimon/disk/FileIOChannel.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/FileIOChannel.java
index 492d1535e..c9fe2fdf7 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/FileIOChannel.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.utils.StringUtils;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManager.java b/paimon-core/src/main/java/org/apache/paimon/disk/IOManager.java
similarity index 90%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/IOManager.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/IOManager.java
index 19ee72d50..8e71c3706 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/IOManager.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
 import org.apache.paimon.annotation.Experimental;
-import org.apache.paimon.file.disk.FileIOChannel.Enumerator;
-import org.apache.paimon.file.disk.FileIOChannel.ID;
+import org.apache.paimon.disk.FileIOChannel.Enumerator;
+import org.apache.paimon.disk.FileIOChannel.ID;
 
 import java.io.IOException;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java b/paimon-core/src/main/java/org/apache/paimon/disk/IOManagerImpl.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/disk/IOManagerImpl.java
index ca366b9a8..68f9f5eff 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/IOManagerImpl.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
-import org.apache.paimon.file.disk.FileIOChannel.Enumerator;
-import org.apache.paimon.file.disk.FileIOChannel.ID;
+import org.apache.paimon.disk.FileIOChannel.Enumerator;
+import org.apache.paimon.disk.FileIOChannel.ID;
 import org.apache.paimon.utils.Preconditions;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java b/paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
index d0b0b6a8a..aab0b6526 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
@@ -21,12 +21,12 @@ package org.apache.paimon.file;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.manifest.ManifestFile;
-import org.apache.paimon.file.manifest.ManifestList;
-import org.apache.paimon.file.operation.FileStoreCommitImpl;
-import org.apache.paimon.file.operation.FileStoreExpireImpl;
-import org.apache.paimon.file.operation.PartitionExpire;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.manifest.ManifestFile;
+import org.apache.paimon.manifest.ManifestList;
+import org.apache.paimon.operation.FileStoreCommitImpl;
+import org.apache.paimon.operation.FileStoreExpireImpl;
+import org.apache.paimon.operation.PartitionExpire;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java b/paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
index 05ef96e11..d446dfc29 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
@@ -20,10 +20,10 @@ package org.apache.paimon.file;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.operation.AppendOnlyFileStoreRead;
-import org.apache.paimon.file.operation.AppendOnlyFileStoreScan;
-import org.apache.paimon.file.operation.AppendOnlyFileStoreWrite;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.operation.AppendOnlyFileStoreRead;
+import org.apache.paimon.operation.AppendOnlyFileStoreScan;
+import org.apache.paimon.operation.AppendOnlyFileStoreWrite;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.format.FileFormatDiscover;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/FileStore.java b/paimon-core/src/main/java/org/apache/paimon/file/FileStore.java
index ff7d5ac91..18a26c861 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/FileStore.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/FileStore.java
@@ -19,12 +19,12 @@
 package org.apache.paimon.file;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.operation.FileStoreCommit;
-import org.apache.paimon.file.operation.FileStoreExpire;
-import org.apache.paimon.file.operation.FileStoreRead;
-import org.apache.paimon.file.operation.FileStoreScan;
-import org.apache.paimon.file.operation.FileStoreWrite;
-import org.apache.paimon.file.operation.PartitionExpire;
+import org.apache.paimon.operation.FileStoreCommit;
+import org.apache.paimon.operation.FileStoreExpire;
+import org.apache.paimon.operation.FileStoreRead;
+import org.apache.paimon.operation.FileStoreScan;
+import org.apache.paimon.operation.FileStoreWrite;
+import org.apache.paimon.operation.PartitionExpire;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.types.RowType;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java b/paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java
index 42a5350f3..3d6f16254 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java
@@ -33,8 +33,8 @@ import java.util.List;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
-import static org.apache.paimon.file.schema.SystemColumns.SEQUENCE_NUMBER;
-import static org.apache.paimon.file.schema.SystemColumns.VALUE_KIND;
+import static org.apache.paimon.schema.SystemColumns.SEQUENCE_NUMBER;
+import static org.apache.paimon.schema.SystemColumns.VALUE_KIND;
 import static org.apache.paimon.utils.Preconditions.checkState;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java b/paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
index e3d92dc88..f0c0f68c8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
@@ -20,12 +20,12 @@ package org.apache.paimon.file;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.paimon.file.operation.KeyValueFileStoreRead;
-import org.apache.paimon.file.operation.KeyValueFileStoreScan;
-import org.apache.paimon.file.operation.KeyValueFileStoreWrite;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.operation.KeyValueFileStoreRead;
+import org.apache.paimon.operation.KeyValueFileStoreScan;
+import org.apache.paimon.operation.KeyValueFileStoreWrite;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.utils.KeyComparatorSupplier;
 import org.apache.paimon.format.FileFormatDiscover;
 import org.apache.paimon.fs.FileIO;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java b/paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java
index 239d12bff..2f4a6dee2 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java
@@ -22,10 +22,10 @@ import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonCre
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonGetter;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonProperty;
 
-import org.apache.paimon.file.manifest.ManifestEntry;
-import org.apache.paimon.file.manifest.ManifestFileMeta;
-import org.apache.paimon.file.manifest.ManifestList;
-import org.apache.paimon.file.operation.FileStoreScan;
+import org.apache.paimon.manifest.ManifestEntry;
+import org.apache.paimon.manifest.ManifestFileMeta;
+import org.apache.paimon.manifest.ManifestList;
+import org.apache.paimon.operation.FileStoreScan;
 import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
index b810c2009..6c746d745 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
@@ -19,13 +19,13 @@
 package org.apache.paimon.file.sort;
 
 import org.apache.paimon.data.AbstractPagedOutputView;
-import org.apache.paimon.file.compression.BlockCompressionFactory;
-import org.apache.paimon.file.disk.ChannelReaderInputView;
-import org.apache.paimon.file.disk.ChannelWithMeta;
-import org.apache.paimon.file.disk.ChannelWriterOutputView;
-import org.apache.paimon.file.disk.FileChannelUtil;
-import org.apache.paimon.file.disk.FileIOChannel;
-import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.compression.BlockCompressionFactory;
+import org.apache.paimon.disk.ChannelReaderInputView;
+import org.apache.paimon.disk.ChannelWithMeta;
+import org.apache.paimon.disk.ChannelWriterOutputView;
+import org.apache.paimon.disk.FileChannelUtil;
+import org.apache.paimon.disk.FileIOChannel;
+import org.apache.paimon.disk.IOManager;
 import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
index 2fef1950f..cd27cda20 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
@@ -22,10 +22,10 @@ import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
-import org.apache.paimon.file.compression.BlockCompressionFactory;
-import org.apache.paimon.file.disk.ChannelReaderInputView;
-import org.apache.paimon.file.disk.ChannelReaderInputViewIterator;
-import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.compression.BlockCompressionFactory;
+import org.apache.paimon.disk.ChannelReaderInputView;
+import org.apache.paimon.disk.ChannelReaderInputViewIterator;
+import org.apache.paimon.disk.IOManager;
 import org.apache.paimon.file.utils.MutableObjectIterator;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
index 70a6b7c70..e82a1d34f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
@@ -23,13 +23,13 @@ import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
-import org.apache.paimon.file.compression.BlockCompressionFactory;
-import org.apache.paimon.file.compression.Lz4BlockCompressionFactory;
-import org.apache.paimon.file.disk.ChannelWithMeta;
-import org.apache.paimon.file.disk.ChannelWriterOutputView;
-import org.apache.paimon.file.disk.FileChannelUtil;
-import org.apache.paimon.file.disk.FileIOChannel;
-import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.compression.BlockCompressionFactory;
+import org.apache.paimon.compression.Lz4BlockCompressionFactory;
+import org.apache.paimon.disk.ChannelWithMeta;
+import org.apache.paimon.disk.ChannelWriterOutputView;
+import org.apache.paimon.disk.FileChannelUtil;
+import org.apache.paimon.disk.FileIOChannel;
+import org.apache.paimon.disk.IOManager;
 import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.apache.paimon.options.MemorySize;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
index 401459de4..351ec0f4a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
@@ -25,7 +25,7 @@ import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.SimpleCollectingOutputView;
 import org.apache.paimon.data.serializer.AbstractRowDataSerializer;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
-import org.apache.paimon.file.memory.MemorySegmentPool;
+import org.apache.paimon.memory.MemorySegmentPool;
 import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.apache.paimon.memory.MemorySegment;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
index 97d871677..d9735d64c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
@@ -25,7 +25,7 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.RandomAccessInputView;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
-import org.apache.paimon.file.memory.MemorySegmentPool;
+import org.apache.paimon.memory.MemorySegmentPool;
 import org.apache.paimon.memory.MemorySegment;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java
index 2c85b25f7..b90daf042 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.sort;
 
-import org.apache.paimon.file.disk.FileIOChannel;
+import org.apache.paimon.disk.FileIOChannel;
 
 import java.io.Closeable;
 import java.io.File;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
index 3f7c4063c..821748601 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
@@ -21,7 +21,7 @@ package org.apache.paimon.file.stats;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.file.casting.CastExecutor;
+import org.apache.paimon.casting.CastExecutor;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.BigIntType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java b/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java
index 86e0e472f..1b2725c9a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.file.stats;
 
-import org.apache.paimon.file.casting.CastExecutor;
-import org.apache.paimon.file.schema.SchemaEvolutionUtil;
+import org.apache.paimon.casting.CastExecutor;
+import org.apache.paimon.schema.SchemaEvolutionUtil;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
index 42bbaac69..73114f7b9 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
@@ -19,12 +19,12 @@
 package org.apache.paimon.file.utils;
 
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.casting.CastFieldGetter;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.IndexCastMapping;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.SchemaEvolutionUtil;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.casting.CastFieldGetter;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.IndexCastMapping;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaEvolutionUtil;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.format.FileFormatDiscover;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.types.DataField;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java
index 0d9624671..6f647c949 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.file.utils;
 
-import org.apache.paimon.file.io.CompactIncrement;
-import org.apache.paimon.file.io.NewFilesIncrement;
+import org.apache.paimon.io.CompactIncrement;
+import org.apache.paimon.io.NewFilesIncrement;
 
 /** Changes to commit. */
 public class CommitIncrement {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
index dc767a893..32bff8b65 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
@@ -21,7 +21,7 @@ package org.apache.paimon.file.utils;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.io.DataFilePathFactory;
+import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
index 09c39fa62..9c64554ed 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
@@ -29,8 +29,8 @@ import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.deser.std
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.module.SimpleModule;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.std.StdSerializer;
 
-import org.apache.paimon.file.schema.SchemaSerializer;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.SchemaSerializer;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypeJsonParser;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java
index e51505623..f912e1b96 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.utils;
 
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 
 import java.util.List;
 
@@ -43,7 +43,7 @@ public interface RecordWriter<T> {
     void compact(boolean fullCompaction) throws Exception;
 
     /**
-     * Add files to the internal {@link org.apache.paimon.file.compact.CompactManager}.
+     * Add files to the internal {@link org.apache.paimon.compact.CompactManager}.
      *
      * @param files files to add
      */
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/io/AbstractFileRecordIterator.java
similarity index 93%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java
rename to paimon-core/src/main/java/org/apache/paimon/io/AbstractFileRecordIterator.java
index 63e233ac1..68f63be5a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/AbstractFileRecordIterator.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.casting.CastFieldGetter;
-import org.apache.paimon.file.casting.CastedRow;
+import org.apache.paimon.casting.CastFieldGetter;
+import org.apache.paimon.casting.CastedRow;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.utils.ProjectedRow;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/CompactIncrement.java b/paimon-core/src/main/java/org/apache/paimon/io/CompactIncrement.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/CompactIncrement.java
rename to paimon-core/src/main/java/org/apache/paimon/io/CompactIncrement.java
index 10bfef732..cc3e79f01 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/CompactIncrement.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/CompactIncrement.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import java.util.List;
 import java.util.Objects;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java b/paimon-core/src/main/java/org/apache/paimon/io/DataFileMeta.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
rename to paimon-core/src/main/java/org/apache/paimon/io/DataFileMeta.java
index 1cfb53168..de0c78c64 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/DataFileMeta.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java b/paimon-core/src/main/java/org/apache/paimon/io/DataFileMetaSerializer.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/io/DataFileMetaSerializer.java
index d9570c995..51b9102da 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/DataFileMetaSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java b/paimon-core/src/main/java/org/apache/paimon/io/DataFilePathFactory.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/io/DataFilePathFactory.java
index 1ff0c1575..d4a49cc46 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/DataFilePathFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/FileWriter.java b/paimon-core/src/main/java/org/apache/paimon/io/FileWriter.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/FileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/io/FileWriter.java
index 3869b8013..94d67b67d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/FileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/FileWriter.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.utils.CloseableIterator;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileRecordReader.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java
rename to paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileRecordReader.java
index 0ceef986f..95dd0c383 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileRecordReader.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueSerializer;
-import org.apache.paimon.file.casting.CastFieldGetter;
+import org.apache.paimon.casting.CastFieldGetter;
 import org.apache.paimon.file.utils.FileUtils;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.fs.FileIO;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileWriter.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileWriter.java
index 54b915f06..b2e2e9631 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileWriter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileReaderFactory.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileReaderFactory.java
index 8c37073f1..e516c634d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileReaderFactory.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.BulkFormatMapping;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.format.FileFormatDiscover;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileWriterFactory.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileWriterFactory.java
index b429e739e..b7dcbd813 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileWriterFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/NewFilesIncrement.java b/paimon-core/src/main/java/org/apache/paimon/io/NewFilesIncrement.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/NewFilesIncrement.java
rename to paimon-core/src/main/java/org/apache/paimon/io/NewFilesIncrement.java
index 096a1690e..4e980bd31 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/NewFilesIncrement.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/NewFilesIncrement.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import java.util.Collections;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/io/RollingFileWriter.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/io/RollingFileWriter.java
index bdc2643b8..f864183ee 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/RollingFileWriter.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.utils.Preconditions;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java b/paimon-core/src/main/java/org/apache/paimon/io/RowDataFileRecordReader.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java
rename to paimon-core/src/main/java/org/apache/paimon/io/RowDataFileRecordReader.java
index 7466db1d1..11c3118ab 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/RowDataFileRecordReader.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.casting.CastFieldGetter;
+import org.apache.paimon.casting.CastFieldGetter;
 import org.apache.paimon.file.utils.FileUtils;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.fs.FileIO;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/io/RowDataFileWriter.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/io/RowDataFileWriter.java
index 3d4a40285..da9fea7a6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/RowDataFileWriter.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.stats.BinaryTableStats;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/io/RowDataRollingFileWriter.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/io/RowDataRollingFileWriter.java
index 64ea95806..c5e549ac4 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/RowDataRollingFileWriter.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/io/SingleFileWriter.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/io/SingleFileWriter.java
index 43778d82a..7a50ae2b7 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/SingleFileWriter.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatWriter;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/io/StatsCollectingSingleFileWriter.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/io/StatsCollectingSingleFileWriter.java
index 025d39240..30a2be40b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/StatsCollectingSingleFileWriter.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FieldStats;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/FileKind.java b/paimon-core/src/main/java/org/apache/paimon/manifest/FileKind.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/manifest/FileKind.java
rename to paimon-core/src/main/java/org/apache/paimon/manifest/FileKind.java
index 301f1958b..a18d65f15 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/FileKind.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/FileKind.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 /** Kind of a file. */
 public enum FileKind {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittable.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestCommittable.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittable.java
rename to paimon-core/src/main/java/org/apache/paimon/manifest/ManifestCommittable.java
index dca636c8a..38a69d20a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestCommittable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.table.sink.CommitMessage;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestCommittableSerializer.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/manifest/ManifestCommittableSerializer.java
index b540a8d89..3ae51b7aa 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestCommittableSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.data.serializer.VersionedSerializer;
 import org.apache.paimon.io.DataInputDeserializer;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntry.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java
rename to paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntry.java
index 66abb51b8..a503d0cab 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntry.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntrySerializer.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntrySerializer.java
index c54a58a50..316208ecd 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntrySerializer.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.io.DataFileMetaSerializer;
+import org.apache.paimon.io.DataFileMetaSerializer;
 import org.apache.paimon.file.utils.VersionedObjectSerializer;
 
 import static org.apache.paimon.file.utils.SerializationUtils.deserializeBinaryRow;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFile.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java
rename to paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFile.java
index 32dd5d533..3405b27e8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFile.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.file.io.RollingFileWriter;
-import org.apache.paimon.file.io.SingleFileWriter;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.io.RollingFileWriter;
+import org.apache.paimon.io.SingleFileWriter;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.FileUtils;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMeta.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMeta.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMeta.java
rename to paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMeta.java
index 52dfb3bd8..eee3f37b9 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMeta.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMeta.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMetaSerializer.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMetaSerializer.java
index a69ebc18a..2de80fbe3 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMetaSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestList.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java
rename to paimon-core/src/main/java/org/apache/paimon/manifest/ManifestList.java
index 3cb1ef7d8..2dd41a3a8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestList.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.FileUtils;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/memory/Buffer.java b/paimon-core/src/main/java/org/apache/paimon/memory/Buffer.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/memory/Buffer.java
rename to paimon-core/src/main/java/org/apache/paimon/memory/Buffer.java
index 7732e62cc..c22d2339e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/memory/Buffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/memory/Buffer.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.memory;
+package org.apache.paimon.memory;
 
 import org.apache.paimon.annotation.Experimental;
-import org.apache.paimon.memory.MemorySegment;
+
 
 import java.nio.ByteBuffer;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/memory/HeapMemorySegmentPool.java b/paimon-core/src/main/java/org/apache/paimon/memory/HeapMemorySegmentPool.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/memory/HeapMemorySegmentPool.java
rename to paimon-core/src/main/java/org/apache/paimon/memory/HeapMemorySegmentPool.java
index 37a12d745..f5e1a30f4 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/memory/HeapMemorySegmentPool.java
+++ b/paimon-core/src/main/java/org/apache/paimon/memory/HeapMemorySegmentPool.java
@@ -16,9 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.memory;
-
-import org.apache.paimon.memory.MemorySegment;
+package org.apache.paimon.memory;
 
 import java.util.LinkedList;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/memory/MemoryOwner.java b/paimon-core/src/main/java/org/apache/paimon/memory/MemoryOwner.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/memory/MemoryOwner.java
rename to paimon-core/src/main/java/org/apache/paimon/memory/MemoryOwner.java
index abc68967e..78127dae4 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/memory/MemoryOwner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/memory/MemoryOwner.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.memory;
+package org.apache.paimon.memory;
 
 /** A class provides memory related methods. */
 public interface MemoryOwner {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/memory/MemoryPoolFactory.java b/paimon-core/src/main/java/org/apache/paimon/memory/MemoryPoolFactory.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/memory/MemoryPoolFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/memory/MemoryPoolFactory.java
index 4ef00d7e0..c1821c5d5 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/memory/MemoryPoolFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/memory/MemoryPoolFactory.java
@@ -16,9 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.memory;
-
-import org.apache.paimon.memory.MemorySegment;
+package org.apache.paimon.memory;
 
 import java.util.List;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java b/paimon-core/src/main/java/org/apache/paimon/memory/MemorySegmentPool.java
similarity index 92%
rename from paimon-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java
rename to paimon-core/src/main/java/org/apache/paimon/memory/MemorySegmentPool.java
index a90c40193..5f731a266 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java
+++ b/paimon-core/src/main/java/org/apache/paimon/memory/MemorySegmentPool.java
@@ -16,11 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.memory;
+package org.apache.paimon.memory;
 
 import org.apache.paimon.annotation.Experimental;
-import org.apache.paimon.memory.MemorySegment;
-import org.apache.paimon.memory.MemorySegmentSource;
 import org.apache.paimon.options.MemorySize;
 
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/DataFileReader.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/DataFileReader.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/DataFileReader.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/DataFileReader.java
index e91e09f2e..c262b6dce 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/DataFileReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/DataFileReader.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.lookup.LookupStoreReader;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.utils.FileIOUtils;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/DropDeleteReader.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/DropDeleteReader.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/DropDeleteReader.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/DropDeleteReader.java
index 149903cbb..27f69e587 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/DropDeleteReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/DropDeleteReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/LevelSortedRun.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/LevelSortedRun.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/LevelSortedRun.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/LevelSortedRun.java
index e5bf60162..3baec1ff4 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/LevelSortedRun.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/LevelSortedRun.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import java.util.Objects;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/Levels.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/Levels.java
index 5efb7015b..ca71272bf 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/Levels.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.utils.Preconditions;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/LookupLevels.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/LookupLevels.java
index bca45807b..6d4f7e40c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/LookupLevels.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
 import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
@@ -26,7 +26,7 @@ import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.RowCompactedSerializer;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataOutputSerializer;
 import org.apache.paimon.lookup.LookupStoreFactory;
 import org.apache.paimon.lookup.LookupStoreReader;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeReaders.java
similarity index 87%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeReaders.java
index 681d172e1..c46d556b6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeReaders.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.KeyValueFileReaderFactory;
-import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
-import org.apache.paimon.file.mergetree.compact.MergeFunction;
-import org.apache.paimon.file.mergetree.compact.MergeFunctionWrapper;
-import org.apache.paimon.file.mergetree.compact.ReducerMergeFunctionWrapper;
-import org.apache.paimon.file.mergetree.compact.SortMergeReader;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.KeyValueFileReaderFactory;
+import org.apache.paimon.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.mergetree.compact.MergeFunction;
+import org.apache.paimon.mergetree.compact.MergeFunctionWrapper;
+import org.apache.paimon.mergetree.compact.ReducerMergeFunctionWrapper;
+import org.apache.paimon.mergetree.compact.SortMergeReader;
 import org.apache.paimon.reader.RecordReader;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeWriter.java
similarity index 94%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeWriter.java
index 7d8229be4..51a9da81e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeWriter.java
@@ -16,23 +16,23 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import org.apache.paimon.CoreOptions.ChangelogProducer;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.compact.CompactManager;
-import org.apache.paimon.file.compact.CompactResult;
-import org.apache.paimon.file.disk.IOManager;
-import org.apache.paimon.file.io.CompactIncrement;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.KeyValueFileWriterFactory;
-import org.apache.paimon.file.io.NewFilesIncrement;
-import org.apache.paimon.file.io.RollingFileWriter;
-import org.apache.paimon.file.memory.MemoryOwner;
-import org.apache.paimon.file.memory.MemorySegmentPool;
-import org.apache.paimon.file.mergetree.compact.MergeFunction;
+import org.apache.paimon.compact.CompactManager;
+import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.disk.IOManager;
+import org.apache.paimon.io.CompactIncrement;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.KeyValueFileWriterFactory;
+import org.apache.paimon.io.NewFilesIncrement;
+import org.apache.paimon.io.RollingFileWriter;
+import org.apache.paimon.memory.MemoryOwner;
+import org.apache.paimon.memory.MemorySegmentPool;
+import org.apache.paimon.mergetree.compact.MergeFunction;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/SortBufferWriteBuffer.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/SortBufferWriteBuffer.java
index 50ef869b6..7ca7fa426 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/SortBufferWriteBuffer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.codegen.CodeGenUtils;
@@ -29,10 +29,10 @@ import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.data.serializer.InternalSerializers;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueSerializer;
-import org.apache.paimon.file.disk.IOManager;
-import org.apache.paimon.file.memory.MemorySegmentPool;
-import org.apache.paimon.file.mergetree.compact.MergeFunction;
-import org.apache.paimon.file.mergetree.compact.ReducerMergeFunctionWrapper;
+import org.apache.paimon.disk.IOManager;
+import org.apache.paimon.memory.MemorySegmentPool;
+import org.apache.paimon.mergetree.compact.MergeFunction;
+import org.apache.paimon.mergetree.compact.ReducerMergeFunctionWrapper;
 import org.apache.paimon.file.sort.BinaryExternalSortBuffer;
 import org.apache.paimon.file.sort.BinaryInMemorySortBuffer;
 import org.apache.paimon.file.sort.SortBuffer;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/SortedRun.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/SortedRun.java
index 532539fed..831499aec 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/SortedRun.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.utils.Preconditions;
 
 import java.util.Collections;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/WriteBuffer.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/WriteBuffer.java
index 090b7e08c..283fddd70 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/WriteBuffer.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.mergetree.compact.MergeFunction;
+import org.apache.paimon.mergetree.compact.MergeFunction;
 import org.apache.paimon.types.RowKind;
 
 import javax.annotation.Nullable;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/AbstractCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/AbstractCompactRewriter.java
similarity index 88%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/AbstractCompactRewriter.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/AbstractCompactRewriter.java
index 8e7e7aa18..e243ea28a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/AbstractCompactRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/AbstractCompactRewriter.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.compact.CompactResult;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.SortedRun;
 
 import java.io.IOException;
 import java.util.Collection;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogMergeTreeRewriter.java
similarity index 91%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogMergeTreeRewriter.java
index b680b0178..e0b802632 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogMergeTreeRewriter.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.compact.CompactResult;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.KeyValueFileReaderFactory;
-import org.apache.paimon.file.io.KeyValueFileWriterFactory;
-import org.apache.paimon.file.io.RollingFileWriter;
-import org.apache.paimon.file.mergetree.MergeTreeReaders;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.KeyValueFileReaderFactory;
+import org.apache.paimon.io.KeyValueFileWriterFactory;
+import org.apache.paimon.io.RollingFileWriter;
+import org.apache.paimon.mergetree.MergeTreeReaders;
+import org.apache.paimon.mergetree.SortedRun;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReaderIterator;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogResult.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogResult.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogResult.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogResult.java
index 3dfd3951b..0fd4f0eae 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogResult.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogResult.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/CompactRewriter.java
similarity index 85%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactRewriter.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/CompactRewriter.java
index f7d70deb8..03ff9ed44 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/CompactRewriter.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.compact.CompactResult;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.SortedRun;
 
 import java.io.Closeable;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactStrategy.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/CompactStrategy.java
similarity index 92%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactStrategy.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/CompactStrategy.java
index 9f876445e..33d43824b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactStrategy.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/CompactStrategy.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.compact.CompactUnit;
-import org.apache.paimon.file.mergetree.LevelSortedRun;
+import org.apache.paimon.compact.CompactUnit;
+import org.apache.paimon.mergetree.LevelSortedRun;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReader.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ConcatRecordReader.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReader.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ConcatRecordReader.java
index d194713bd..2b5bac269 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ConcatRecordReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.utils.Preconditions;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/DeduplicateMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/DeduplicateMergeFunction.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/DeduplicateMergeFunction.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/DeduplicateMergeFunction.java
index 81f028900..3efccb91b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/DeduplicateMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/DeduplicateMergeFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.file.KeyValue;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0Compaction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ForceUpLevel0Compaction.java
similarity index 92%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0Compaction.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ForceUpLevel0Compaction.java
index 412881d38..d3ec39cb6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0Compaction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ForceUpLevel0Compaction.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.compact.CompactUnit;
-import org.apache.paimon.file.mergetree.LevelSortedRun;
+import org.apache.paimon.compact.CompactUnit;
+import org.apache.paimon.mergetree.LevelSortedRun;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapper.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapper.java
index ab8a78d0a..09139ce7b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
similarity index 90%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
index e7712f1d9..d13ab10b8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.KeyValueFileReaderFactory;
-import org.apache.paimon.file.io.KeyValueFileWriterFactory;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.KeyValueFileReaderFactory;
+import org.apache.paimon.io.KeyValueFileWriterFactory;
+import org.apache.paimon.mergetree.SortedRun;
 import org.apache.paimon.utils.Preconditions;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/IntervalPartition.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/IntervalPartition.java
index 1cc28b0e0..80365b0d4 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/IntervalPartition.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.SortedRun;
 
 import java.util.ArrayList;
 import java.util.Comparator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
index b6284986b..0aae5fc44 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupCompaction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupCompaction.java
similarity index 92%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupCompaction.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupCompaction.java
index 6480c8d72..6434d616a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupCompaction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupCompaction.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.compact.CompactUnit;
-import org.apache.paimon.file.mergetree.LevelSortedRun;
+import org.apache.paimon.compact.CompactUnit;
+import org.apache.paimon.mergetree.LevelSortedRun;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeFunction.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeFunction.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeFunction.java
index 639e6d20f..ab46cdabf 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.file.KeyValue;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeTreeCompactRewriter.java
similarity index 90%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeTreeCompactRewriter.java
index 3d89a6145..6f16767da 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeTreeCompactRewriter.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.KeyValueFileReaderFactory;
-import org.apache.paimon.file.io.KeyValueFileWriterFactory;
-import org.apache.paimon.file.mergetree.LookupLevels;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.KeyValueFileReaderFactory;
+import org.apache.paimon.io.KeyValueFileWriterFactory;
+import org.apache.paimon.mergetree.LookupLevels;
+import org.apache.paimon.mergetree.SortedRun;
 
 import java.io.IOException;
 import java.io.UncheckedIOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunction.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunction.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunction.java
index 6ce9b3fff..5e73bb65d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.file.KeyValue;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionFactory.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunctionFactory.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunctionFactory.java
index 328453f27..73f68c19d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunctionFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunctionWrapper.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionWrapper.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunctionWrapper.java
index 834b4e48c..34b2fe688 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionWrapper.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunctionWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.file.KeyValue;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManager.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManager.java
index b7bd4da5a..f9ff47de6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManager.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.compact.CompactFutureManager;
-import org.apache.paimon.file.compact.CompactResult;
-import org.apache.paimon.file.compact.CompactUnit;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.LevelSortedRun;
-import org.apache.paimon.file.mergetree.Levels;
+import org.apache.paimon.compact.CompactFutureManager;
+import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.compact.CompactUnit;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.LevelSortedRun;
+import org.apache.paimon.mergetree.Levels;
 import org.apache.paimon.utils.Preconditions;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactRewriter.java
similarity index 86%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactRewriter.java
index 05ebb7817..23dcbb1b6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactRewriter.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.compact.CompactResult;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.KeyValueFileReaderFactory;
-import org.apache.paimon.file.io.KeyValueFileWriterFactory;
-import org.apache.paimon.file.io.RollingFileWriter;
-import org.apache.paimon.file.mergetree.MergeTreeReaders;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.KeyValueFileReaderFactory;
+import org.apache.paimon.io.KeyValueFileWriterFactory;
+import org.apache.paimon.io.RollingFileWriter;
+import org.apache.paimon.mergetree.MergeTreeReaders;
+import org.apache.paimon.mergetree.SortedRun;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReaderIterator;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactTask.java
similarity index 93%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactTask.java
index 4e07b0582..2f32250e1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactTask.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.compact.CompactResult;
-import org.apache.paimon.file.compact.CompactTask;
-import org.apache.paimon.file.compact.CompactUnit;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.compact.CompactTask;
+import org.apache.paimon.compact.CompactUnit;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.SortedRun;
 
 import java.util.ArrayList;
 import java.util.Comparator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/PartialUpdateMergeFunction.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/PartialUpdateMergeFunction.java
index 0b4d5279f..107c19c7d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/PartialUpdateMergeFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapper.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapper.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapper.java
index ea3e4de8e..dfbf7b972 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapper.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.file.KeyValue;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/SortMergeReader.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/SortMergeReader.java
index be2cfa7de..878446908 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/SortMergeReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/UniversalCompaction.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/UniversalCompaction.java
index 25eb8a87b..ab11b3705 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/UniversalCompaction.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.file.compact.CompactUnit;
-import org.apache.paimon.file.mergetree.LevelSortedRun;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.compact.CompactUnit;
+import org.apache.paimon.mergetree.LevelSortedRun;
+import org.apache.paimon.mergetree.SortedRun;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ValueCountMergeFunction.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ValueCountMergeFunction.java
index e8d132dfd..6ae480176 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ValueCountMergeFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/AggregateMergeFunction.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/AggregateMergeFunction.java
index 319f48a7e..933fd0ae1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/AggregateMergeFunction.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.mergetree.compact.MergeFunction;
-import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.mergetree.compact.MergeFunction;
+import org.apache.paimon.mergetree.compact.MergeFunctionFactory;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowKind;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregator.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldAggregator.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregator.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldAggregator.java
index 118f1cf8f..39bd64146 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldAggregator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolAndAgg.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldBoolAndAgg.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldBoolAndAgg.java
index ad976d58e..8731a5149 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldBoolAndAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolOrAgg.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldBoolOrAgg.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldBoolOrAgg.java
index fd2d0b8af..76b537381 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldBoolOrAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
index b309f2059..ccbfbd368 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 /** An aggregator which ignores retraction messages. */
 public class FieldIgnoreRetractAgg extends FieldAggregator {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
index 00cb69ef1..0c9d3dc45 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastValueAgg.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldLastValueAgg.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastValueAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldLastValueAgg.java
index a169df428..ad2b03bfd 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastValueAgg.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldLastValueAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldListaggAgg.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldListaggAgg.java
index a1fad90a8..de0528d6f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldListaggAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMaxAgg.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldMaxAgg.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMaxAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldMaxAgg.java
index 07bf15ed3..4ec2a2fe7 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMaxAgg.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldMaxAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypeRoot;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMinAgg.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldMinAgg.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMinAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldMinAgg.java
index 3a8804774..c350401c1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMinAgg.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldMinAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypeRoot;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
index a825d9d3b..f5b39c7ce 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 import org.apache.paimon.types.DataType;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldSumAgg.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldSumAgg.java
index a54d7c9e9..47840bfae 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/FieldSumAgg.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 import org.apache.paimon.data.Decimal;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreScan.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreScan.java
index c3e42044e..d9a8b88a1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreScan.java
@@ -16,19 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.manifest.ManifestEntry;
-import org.apache.paimon.file.manifest.ManifestFile;
-import org.apache.paimon.file.manifest.ManifestFileMeta;
-import org.apache.paimon.file.manifest.ManifestList;
-import org.apache.paimon.file.predicate.BucketSelector;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.manifest.ManifestEntry;
+import org.apache.paimon.manifest.ManifestFile;
+import org.apache.paimon.manifest.ManifestFileMeta;
+import org.apache.paimon.manifest.ManifestList;
+import org.apache.paimon.predicate.BucketSelector;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.FileUtils;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreWrite.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreWrite.java
index 6643d7337..9c671be0b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreWrite.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.disk.IOManager;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.disk.IOManager;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.manifest.ManifestEntry;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.ExecutorThreadFactory;
 import org.apache.paimon.file.utils.RecordWriter;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreRead.java
similarity index 91%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreRead.java
index f865e493d..e94140e72 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreRead.java
@@ -16,18 +16,18 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.DataFilePathFactory;
-import org.apache.paimon.file.io.RowDataFileRecordReader;
-import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.IndexCastMapping;
-import org.apache.paimon.file.schema.SchemaEvolutionUtil;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFilePathFactory;
+import org.apache.paimon.io.RowDataFileRecordReader;
+import org.apache.paimon.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.IndexCastMapping;
+import org.apache.paimon.schema.SchemaEvolutionUtil;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.BulkFormatMapping;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.format.FileFormatDiscover;
@@ -46,7 +46,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
+import static org.apache.paimon.predicate.PredicateBuilder.splitAnd;
 
 /** {@link FileStoreRead} for {@link org.apache.paimon.file.AppendOnlyFileStore}. */
 public class AppendOnlyFileStoreRead implements FileStoreRead<InternalRow> {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java
similarity index 85%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreScan.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java
index 17fc47e47..b7408a501 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java
@@ -16,22 +16,22 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
-import org.apache.paimon.file.manifest.ManifestEntry;
-import org.apache.paimon.file.manifest.ManifestFile;
-import org.apache.paimon.file.manifest.ManifestList;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.manifest.ManifestEntry;
+import org.apache.paimon.manifest.ManifestFile;
+import org.apache.paimon.manifest.ManifestList;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.stats.FieldStatsConverters;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.types.RowType;
 
 import java.util.List;
 
-import static org.apache.paimon.file.predicate.PredicateBuilder.and;
-import static org.apache.paimon.file.predicate.PredicateBuilder.pickTransformFieldMapping;
-import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
+import static org.apache.paimon.predicate.PredicateBuilder.and;
+import static org.apache.paimon.predicate.PredicateBuilder.pickTransformFieldMapping;
+import static org.apache.paimon.predicate.PredicateBuilder.splitAnd;
 
 /** {@link FileStoreScan} for {@link org.apache.paimon.file.AppendOnlyFileStore}. */
 public class AppendOnlyFileStoreScan extends AbstractFileStoreScan {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreWrite.java
similarity index 92%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreWrite.java
index 1045053d1..d800ebd01 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreWrite.java
@@ -16,18 +16,18 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.append.AppendOnlyCompactManager;
-import org.apache.paimon.file.append.AppendOnlyWriter;
-import org.apache.paimon.file.compact.CompactManager;
-import org.apache.paimon.file.compact.NoopCompactManager;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.DataFilePathFactory;
-import org.apache.paimon.file.io.RowDataRollingFileWriter;
+import org.apache.paimon.append.AppendOnlyCompactManager;
+import org.apache.paimon.append.AppendOnlyWriter;
+import org.apache.paimon.compact.CompactManager;
+import org.apache.paimon.compact.NoopCompactManager;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFilePathFactory;
+import org.apache.paimon.io.RowDataRollingFileWriter;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.RecordWriter;
@@ -46,7 +46,7 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.concurrent.ExecutorService;
 
-import static org.apache.paimon.file.io.DataFileMeta.getMaxSequenceNumber;
+import static org.apache.paimon.io.DataFileMeta.getMaxSequenceNumber;
 
 /** {@link FileStoreWrite} for {@link org.apache.paimon.file.AppendOnlyFileStore}. */
 public class AppendOnlyFileStoreWrite extends AbstractFileStoreWrite<InternalRow> {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommit.java b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreCommit.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommit.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/FileStoreCommit.java
index b28b5ef5e..41e69a94b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommit.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreCommit.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
-import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.manifest.ManifestCommittable;
 
 import java.util.Collections;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreCommitImpl.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/FileStoreCommitImpl.java
index 6221a064d..36b900f0f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreCommitImpl.java
@@ -16,21 +16,21 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.manifest.FileKind;
-import org.apache.paimon.file.manifest.ManifestCommittable;
-import org.apache.paimon.file.manifest.ManifestEntry;
-import org.apache.paimon.file.manifest.ManifestFile;
-import org.apache.paimon.file.manifest.ManifestFileMeta;
-import org.apache.paimon.file.manifest.ManifestList;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.manifest.FileKind;
+import org.apache.paimon.manifest.ManifestCommittable;
+import org.apache.paimon.manifest.ManifestEntry;
+import org.apache.paimon.manifest.ManifestFile;
+import org.apache.paimon.manifest.ManifestFileMeta;
+import org.apache.paimon.manifest.ManifestList;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpire.java b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreExpire.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpire.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/FileStoreExpire.java
index d4e51bc45..6827740ce 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpire.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreExpire.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 /** Expire operation which provides snapshots expire. */
 public interface FileStoreExpire {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreExpireImpl.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/FileStoreExpireImpl.java
index 038ddc5fc..e86580d6c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreExpireImpl.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterables;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.manifest.ManifestEntry;
-import org.apache.paimon.file.manifest.ManifestFile;
-import org.apache.paimon.file.manifest.ManifestFileMeta;
-import org.apache.paimon.file.manifest.ManifestList;
+import org.apache.paimon.manifest.ManifestEntry;
+import org.apache.paimon.manifest.ManifestFile;
+import org.apache.paimon.manifest.ManifestFileMeta;
+import org.apache.paimon.manifest.ManifestList;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreRead.java b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreRead.java
similarity index 93%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreRead.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/FileStoreRead.java
index ddeeb8846..2d3e121b1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreRead.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.source.DataSplit;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreScan.java
similarity index 90%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/FileStoreScan.java
index fec9ee8f9..93f5e6196 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreScan.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.manifest.FileKind;
-import org.apache.paimon.file.manifest.ManifestEntry;
-import org.apache.paimon.file.manifest.ManifestFileMeta;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.manifest.FileKind;
+import org.apache.paimon.manifest.ManifestEntry;
+import org.apache.paimon.manifest.ManifestFileMeta;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.utils.Filter;
 
 import javax.annotation.Nullable;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreWrite.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/FileStoreWrite.java
index 28a281b31..94e625729 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreWrite.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.FileStore;
-import org.apache.paimon.file.disk.IOManager;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.disk.IOManager;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.SinkRecord;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreRead.java
similarity index 89%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreRead.java
index 3ed5a28bb..de9aa5a54 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreRead.java
@@ -16,24 +16,24 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.KeyValueFileReaderFactory;
-import org.apache.paimon.file.mergetree.DropDeleteReader;
-import org.apache.paimon.file.mergetree.MergeTreeReaders;
-import org.apache.paimon.file.mergetree.SortedRun;
-import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
-import org.apache.paimon.file.mergetree.compact.IntervalPartition;
-import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.paimon.file.mergetree.compact.MergeFunctionWrapper;
-import org.apache.paimon.file.mergetree.compact.ReducerMergeFunctionWrapper;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.KeyValueFileReaderFactory;
+import org.apache.paimon.mergetree.DropDeleteReader;
+import org.apache.paimon.mergetree.MergeTreeReaders;
+import org.apache.paimon.mergetree.SortedRun;
+import org.apache.paimon.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.mergetree.compact.IntervalPartition;
+import org.apache.paimon.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.mergetree.compact.MergeFunctionWrapper;
+import org.apache.paimon.mergetree.compact.ReducerMergeFunctionWrapper;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.format.FileFormatDiscover;
 import org.apache.paimon.fs.FileIO;
@@ -52,9 +52,9 @@ import java.util.Optional;
 import java.util.Set;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.io.DataFilePathFactory.CHANGELOG_FILE_PREFIX;
-import static org.apache.paimon.file.predicate.PredicateBuilder.containsFields;
-import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
+import static org.apache.paimon.io.DataFilePathFactory.CHANGELOG_FILE_PREFIX;
+import static org.apache.paimon.predicate.PredicateBuilder.containsFields;
+import static org.apache.paimon.predicate.PredicateBuilder.splitAnd;
 
 /** {@link FileStoreRead} implementation for {@link org.apache.paimon.file.KeyValueFileStore}. */
 public class KeyValueFileStoreRead implements FileStoreRead<KeyValue> {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java
similarity index 84%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreScan.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java
index d4fca2cf7..07a0fd672 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java
@@ -16,23 +16,23 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
-import org.apache.paimon.file.manifest.ManifestEntry;
-import org.apache.paimon.file.manifest.ManifestFile;
-import org.apache.paimon.file.manifest.ManifestList;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.manifest.ManifestEntry;
+import org.apache.paimon.manifest.ManifestFile;
+import org.apache.paimon.manifest.ManifestList;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.stats.FieldStatsConverters;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.types.RowType;
 
 import java.util.List;
 
-import static org.apache.paimon.file.predicate.PredicateBuilder.and;
-import static org.apache.paimon.file.predicate.PredicateBuilder.pickTransformFieldMapping;
-import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
+import static org.apache.paimon.predicate.PredicateBuilder.and;
+import static org.apache.paimon.predicate.PredicateBuilder.pickTransformFieldMapping;
+import static org.apache.paimon.predicate.PredicateBuilder.splitAnd;
 
 /** {@link FileStoreScan} for {@link org.apache.paimon.file.KeyValueFileStore}. */
 public class KeyValueFileStoreScan extends AbstractFileStoreScan {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreWrite.java
similarity index 87%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreWrite.java
index 7a8c58b95..5a827c6ad 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreWrite.java
@@ -16,32 +16,32 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.ChangelogProducer;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.compact.CompactManager;
-import org.apache.paimon.file.compact.NoopCompactManager;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.KeyValueFileReaderFactory;
-import org.apache.paimon.file.io.KeyValueFileWriterFactory;
-import org.apache.paimon.file.mergetree.Levels;
-import org.apache.paimon.file.mergetree.LookupLevels;
-import org.apache.paimon.file.mergetree.MergeTreeWriter;
-import org.apache.paimon.file.mergetree.compact.CompactRewriter;
-import org.apache.paimon.file.mergetree.compact.CompactStrategy;
-import org.apache.paimon.file.mergetree.compact.FullChangelogMergeTreeCompactRewriter;
-import org.apache.paimon.file.mergetree.compact.LookupCompaction;
-import org.apache.paimon.file.mergetree.compact.LookupMergeTreeCompactRewriter;
-import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.paimon.file.mergetree.compact.MergeTreeCompactManager;
-import org.apache.paimon.file.mergetree.compact.MergeTreeCompactRewriter;
-import org.apache.paimon.file.mergetree.compact.UniversalCompaction;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.compact.CompactManager;
+import org.apache.paimon.compact.NoopCompactManager;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.KeyValueFileReaderFactory;
+import org.apache.paimon.io.KeyValueFileWriterFactory;
+import org.apache.paimon.mergetree.Levels;
+import org.apache.paimon.mergetree.LookupLevels;
+import org.apache.paimon.mergetree.MergeTreeWriter;
+import org.apache.paimon.mergetree.compact.CompactRewriter;
+import org.apache.paimon.mergetree.compact.CompactStrategy;
+import org.apache.paimon.mergetree.compact.FullChangelogMergeTreeCompactRewriter;
+import org.apache.paimon.mergetree.compact.LookupCompaction;
+import org.apache.paimon.mergetree.compact.LookupMergeTreeCompactRewriter;
+import org.apache.paimon.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.mergetree.compact.MergeTreeCompactManager;
+import org.apache.paimon.mergetree.compact.MergeTreeCompactRewriter;
+import org.apache.paimon.mergetree.compact.UniversalCompaction;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.SnapshotManager;
@@ -59,7 +59,7 @@ import java.util.List;
 import java.util.concurrent.ExecutorService;
 import java.util.function.Supplier;
 
-import static org.apache.paimon.file.io.DataFileMeta.getMaxSequenceNumber;
+import static org.apache.paimon.io.DataFileMeta.getMaxSequenceNumber;
 
 /** {@link FileStoreWrite} for {@link org.apache.paimon.file.KeyValueFileStore}. */
 public class KeyValueFileStoreWrite extends MemoryFileStoreWrite<KeyValue> {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/Lock.java b/paimon-core/src/main/java/org/apache/paimon/operation/Lock.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/Lock.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/Lock.java
index e6ad69897..606ebf249 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/Lock.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/Lock.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.annotation.Experimental;
-import org.apache.paimon.file.catalog.CatalogLock;
-import org.apache.paimon.file.catalog.Identifier;
+import org.apache.paimon.catalog.CatalogLock;
+import org.apache.paimon.catalog.Identifier;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/operation/MemoryFileStoreWrite.java
similarity index 94%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/MemoryFileStoreWrite.java
index eebec155a..b7b07129b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/MemoryFileStoreWrite.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.memory.HeapMemorySegmentPool;
-import org.apache.paimon.file.memory.MemoryOwner;
-import org.apache.paimon.file.memory.MemoryPoolFactory;
+import org.apache.paimon.memory.HeapMemorySegmentPool;
+import org.apache.paimon.memory.MemoryOwner;
+import org.apache.paimon.memory.MemoryPoolFactory;
 import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.io.cache.CacheManager;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java b/paimon-core/src/main/java/org/apache/paimon/operation/PartitionExpire.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/PartitionExpire.java
index 3bfbb026e..74c5eca48 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/PartitionExpire.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.manifest.ManifestCommittable;
-import org.apache.paimon.file.manifest.ManifestEntry;
-import org.apache.paimon.file.partition.PartitionTimeExtractor;
+import org.apache.paimon.manifest.ManifestCommittable;
+import org.apache.paimon.manifest.ManifestEntry;
+import org.apache.paimon.partition.PartitionTimeExtractor;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/ReverseReader.java b/paimon-core/src/main/java/org/apache/paimon/operation/ReverseReader.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/ReverseReader.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/ReverseReader.java
index 86e875691..b821f79a3 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/ReverseReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/ReverseReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/ScanKind.java b/paimon-core/src/main/java/org/apache/paimon/operation/ScanKind.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/operation/ScanKind.java
rename to paimon-core/src/main/java/org/apache/paimon/operation/ScanKind.java
index 3fb3c1216..7d0818aaa 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/ScanKind.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/ScanKind.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 /** Scan which part of the snapshot. */
 public enum ScanKind {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/partition/PartitionTimeExtractor.java b/paimon-core/src/main/java/org/apache/paimon/partition/PartitionTimeExtractor.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/partition/PartitionTimeExtractor.java
rename to paimon-core/src/main/java/org/apache/paimon/partition/PartitionTimeExtractor.java
index 90b670d85..7b6fe5ece 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/partition/PartitionTimeExtractor.java
+++ b/paimon-core/src/main/java/org/apache/paimon/partition/PartitionTimeExtractor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.partition;
+package org.apache.paimon.partition;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java b/paimon-core/src/main/java/org/apache/paimon/predicate/BucketSelector.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
rename to paimon-core/src/main/java/org/apache/paimon/predicate/BucketSelector.java
index 57c4bd872..46b08b5fb 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
+++ b/paimon-core/src/main/java/org/apache/paimon/predicate/BucketSelector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableSet;
 
@@ -40,8 +40,8 @@ import java.util.concurrent.ConcurrentHashMap;
 import java.util.function.Consumer;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
-import static org.apache.paimon.file.predicate.PredicateBuilder.splitOr;
+import static org.apache.paimon.predicate.PredicateBuilder.splitAnd;
+import static org.apache.paimon.predicate.PredicateBuilder.splitOr;
 
 /** Selector to select bucket from {@link Predicate}. */
 @ThreadSafe
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/IndexCastMapping.java b/paimon-core/src/main/java/org/apache/paimon/schema/IndexCastMapping.java
similarity index 91%
rename from paimon-core/src/main/java/org/apache/paimon/file/schema/IndexCastMapping.java
rename to paimon-core/src/main/java/org/apache/paimon/schema/IndexCastMapping.java
index ef4edba51..03a3778ec 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/IndexCastMapping.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/IndexCastMapping.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
-import org.apache.paimon.file.casting.CastFieldGetter;
+import org.apache.paimon.casting.CastFieldGetter;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/KeyValueFieldsExtractor.java b/paimon-core/src/main/java/org/apache/paimon/schema/KeyValueFieldsExtractor.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/schema/KeyValueFieldsExtractor.java
rename to paimon-core/src/main/java/org/apache/paimon/schema/KeyValueFieldsExtractor.java
index 3e864684a..245c4b3a2 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/KeyValueFieldsExtractor.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/KeyValueFieldsExtractor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.types.DataField;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/Schema.java b/paimon-core/src/main/java/org/apache/paimon/schema/Schema.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/schema/Schema.java
rename to paimon-core/src/main/java/org/apache/paimon/schema/Schema.java
index 0c52e98e5..9d0c1feae 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/Schema.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/Schema.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.types.DataField;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaChange.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java
rename to paimon-core/src/main/java/org/apache/paimon/schema/SchemaChange.java
index 10192a3b6..c7be60ba9 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaChange.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaEvolutionUtil.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java
rename to paimon-core/src/main/java/org/apache/paimon/schema/SchemaEvolutionUtil.java
index 0953faab3..79b26441c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaEvolutionUtil.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.casting.CastExecutor;
-import org.apache.paimon.file.casting.CastExecutors;
-import org.apache.paimon.file.casting.CastFieldGetter;
-import org.apache.paimon.file.predicate.LeafPredicate;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateReplaceVisitor;
+import org.apache.paimon.casting.CastExecutor;
+import org.apache.paimon.casting.CastExecutors;
+import org.apache.paimon.casting.CastFieldGetter;
+import org.apache.paimon.predicate.LeafPredicate;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateReplaceVisitor;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaManager.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
rename to paimon-core/src/main/java/org/apache/paimon/schema/SchemaManager.java
index 617210e68..a48ecc0f0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaManager.java
@@ -16,21 +16,21 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.file.casting.CastExecutors;
-import org.apache.paimon.file.operation.Lock;
-import org.apache.paimon.file.schema.SchemaChange.AddColumn;
-import org.apache.paimon.file.schema.SchemaChange.DropColumn;
-import org.apache.paimon.file.schema.SchemaChange.RemoveOption;
-import org.apache.paimon.file.schema.SchemaChange.RenameColumn;
-import org.apache.paimon.file.schema.SchemaChange.SetOption;
-import org.apache.paimon.file.schema.SchemaChange.UpdateColumnComment;
-import org.apache.paimon.file.schema.SchemaChange.UpdateColumnNullability;
-import org.apache.paimon.file.schema.SchemaChange.UpdateColumnPosition;
-import org.apache.paimon.file.schema.SchemaChange.UpdateColumnType;
+import org.apache.paimon.casting.CastExecutors;
+import org.apache.paimon.operation.Lock;
+import org.apache.paimon.schema.SchemaChange.AddColumn;
+import org.apache.paimon.schema.SchemaChange.DropColumn;
+import org.apache.paimon.schema.SchemaChange.RemoveOption;
+import org.apache.paimon.schema.SchemaChange.RenameColumn;
+import org.apache.paimon.schema.SchemaChange.SetOption;
+import org.apache.paimon.schema.SchemaChange.UpdateColumnComment;
+import org.apache.paimon.schema.SchemaChange.UpdateColumnNullability;
+import org.apache.paimon.schema.SchemaChange.UpdateColumnPosition;
+import org.apache.paimon.schema.SchemaChange.UpdateColumnType;
 import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaSerializer.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/schema/SchemaSerializer.java
index d2700ac88..69409f7d6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaValidation.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java
rename to paimon-core/src/main/java/org/apache/paimon/schema/SchemaValidation.java
index a3d9072a2..e8c29fae0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaValidation.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
@@ -41,8 +41,8 @@ import static org.apache.paimon.CoreOptions.SCAN_TIMESTAMP_MILLIS;
 import static org.apache.paimon.CoreOptions.SNAPSHOT_NUM_RETAINED_MAX;
 import static org.apache.paimon.CoreOptions.SNAPSHOT_NUM_RETAINED_MIN;
 import static org.apache.paimon.file.WriteMode.APPEND_ONLY;
-import static org.apache.paimon.file.schema.SystemColumns.KEY_FIELD_PREFIX;
-import static org.apache.paimon.file.schema.SystemColumns.SYSTEM_FIELD_NAMES;
+import static org.apache.paimon.schema.SystemColumns.KEY_FIELD_PREFIX;
+import static org.apache.paimon.schema.SystemColumns.SYSTEM_FIELD_NAMES;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
 import static org.apache.paimon.utils.Preconditions.checkState;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/SystemColumns.java b/paimon-core/src/main/java/org/apache/paimon/schema/SystemColumns.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/schema/SystemColumns.java
rename to paimon-core/src/main/java/org/apache/paimon/schema/SystemColumns.java
index 0ebd8cd01..f45960706 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/SystemColumns.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/SystemColumns.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import java.util.Arrays;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java b/paimon-core/src/main/java/org/apache/paimon/schema/TableSchema.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java
rename to paimon-core/src/main/java/org/apache/paimon/schema/TableSchema.java
index 88be03940..bbfafe347 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/TableSchema.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.types.DataField;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
index 6bb9b03a9..bb558aae0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
@@ -21,11 +21,11 @@ package org.apache.paimon.table;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.file.FileStore;
-import org.apache.paimon.file.operation.FileStoreScan;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.SchemaValidation;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.operation.FileStoreScan;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.SchemaValidation;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
index b02738f0d..172d9a752 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
@@ -22,12 +22,12 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.AppendOnlyFileStore;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.operation.AppendOnlyFileStoreRead;
-import org.apache.paimon.file.operation.AppendOnlyFileStoreScan;
-import org.apache.paimon.file.operation.FileStoreScan;
-import org.apache.paimon.file.operation.ReverseReader;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.operation.AppendOnlyFileStoreRead;
+import org.apache.paimon.operation.AppendOnlyFileStoreScan;
+import org.apache.paimon.operation.FileStoreScan;
+import org.apache.paimon.operation.ReverseReader;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
index 05b0ca3ba..766373086 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
@@ -24,14 +24,14 @@ import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueFileStore;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.compact.ValueCountMergeFunction;
-import org.apache.paimon.file.operation.FileStoreScan;
-import org.apache.paimon.file.operation.KeyValueFileStoreScan;
-import org.apache.paimon.file.operation.ReverseReader;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.compact.ValueCountMergeFunction;
+import org.apache.paimon.operation.FileStoreScan;
+import org.apache.paimon.operation.KeyValueFileStoreScan;
+import org.apache.paimon.operation.ReverseReader;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
@@ -52,7 +52,7 @@ import java.util.Collections;
 import java.util.List;
 import java.util.function.BiConsumer;
 
-import static org.apache.paimon.file.schema.SystemColumns.VALUE_COUNT;
+import static org.apache.paimon.schema.SystemColumns.VALUE_COUNT;
 
 /** {@link FileStoreTable} for {@link WriteMode#CHANGE_LOG} write mode without primary keys. */
 public class ChangelogValueCountFileStoreTable extends AbstractFileStoreTable {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
index 72f6edeeb..283e566d4 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
@@ -24,16 +24,16 @@ import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueFileStore;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.paimon.file.mergetree.compact.LookupMergeFunction;
-import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.paimon.file.mergetree.compact.PartialUpdateMergeFunction;
-import org.apache.paimon.file.mergetree.compact.aggregate.AggregateMergeFunction;
-import org.apache.paimon.file.operation.FileStoreScan;
-import org.apache.paimon.file.operation.KeyValueFileStoreScan;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.mergetree.compact.LookupMergeFunction;
+import org.apache.paimon.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.mergetree.compact.PartialUpdateMergeFunction;
+import org.apache.paimon.mergetree.compact.aggregate.AggregateMergeFunction;
+import org.apache.paimon.operation.FileStoreScan;
+import org.apache.paimon.operation.KeyValueFileStoreScan;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
@@ -53,10 +53,10 @@ import java.util.List;
 import java.util.function.BiConsumer;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.predicate.PredicateBuilder.and;
-import static org.apache.paimon.file.predicate.PredicateBuilder.pickTransformFieldMapping;
-import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
-import static org.apache.paimon.file.schema.SystemColumns.KEY_FIELD_PREFIX;
+import static org.apache.paimon.predicate.PredicateBuilder.and;
+import static org.apache.paimon.predicate.PredicateBuilder.pickTransformFieldMapping;
+import static org.apache.paimon.predicate.PredicateBuilder.splitAnd;
+import static org.apache.paimon.schema.SystemColumns.KEY_FIELD_PREFIX;
 
 /** {@link FileStoreTable} for {@link WriteMode#CHANGE_LOG} write mode with primary keys. */
 public class ChangelogWithKeyFileStoreTable extends AbstractFileStoreTable {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
index 56db62f40..6a2ab28dd 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.table.sink.TableCommitImpl;
 import org.apache.paimon.table.sink.TableWriteImpl;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
index 93bcdc2d7..bfffdaa66 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
@@ -22,8 +22,8 @@ import org.apache.flink.table.store.catalog.CatalogContext;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/TableUtils.java b/paimon-core/src/main/java/org/apache/paimon/table/TableUtils.java
index 2c189afd5..c494129a0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/TableUtils.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/TableUtils.java
@@ -19,9 +19,9 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.operation.Lock;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateFilter;
+import org.apache.paimon.operation.Lock;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateFilter;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.sink.BatchTableCommit;
 import org.apache.paimon.table.sink.BatchTableWrite;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
index 658569d3a..ea17ea0cb 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
@@ -23,7 +23,7 @@ import org.apache.paimon.codegen.CodeGenUtils;
 import org.apache.paimon.codegen.Projection;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
index f531f669a..48c3e92c4 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.sink;
 
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.io.CompactIncrement;
-import org.apache.paimon.file.io.NewFilesIncrement;
+import org.apache.paimon.io.CompactIncrement;
+import org.apache.paimon.io.NewFilesIncrement;
 import org.apache.paimon.io.DataInputViewStreamWrapper;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
index 0590e0574..5ec938386 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
@@ -19,9 +19,9 @@
 package org.apache.paimon.table.sink;
 
 import org.apache.paimon.data.serializer.VersionedSerializer;
-import org.apache.paimon.file.io.CompactIncrement;
-import org.apache.paimon.file.io.DataFileMetaSerializer;
-import org.apache.paimon.file.io.NewFilesIncrement;
+import org.apache.paimon.io.CompactIncrement;
+import org.apache.paimon.io.DataFileMetaSerializer;
+import org.apache.paimon.io.NewFilesIncrement;
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
index c6675e0e2..2f4e5430c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.operation.Lock;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
index d7194ae52..5858160d1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
@@ -22,7 +22,7 @@ import org.apache.paimon.codegen.CodeGenUtils;
 import org.apache.paimon.codegen.Projection;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.types.RowType;
 
 /** A {@link PartitionComputer} to compute partition by partition keys. */
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
index 7926f44e7..e55311063 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
@@ -22,7 +22,7 @@ import org.apache.paimon.codegen.CodeGenUtils;
 import org.apache.paimon.codegen.Projection;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.types.RowType;
 
 import javax.annotation.Nullable;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
index f149b443c..190e5f863 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.paimon.file.manifest.ManifestCommittable;
-import org.apache.paimon.file.operation.FileStoreCommit;
-import org.apache.paimon.file.operation.FileStoreExpire;
-import org.apache.paimon.file.operation.Lock;
-import org.apache.paimon.file.operation.PartitionExpire;
+import org.apache.paimon.manifest.ManifestCommittable;
+import org.apache.paimon.operation.FileStoreCommit;
+import org.apache.paimon.operation.FileStoreExpire;
+import org.apache.paimon.operation.Lock;
+import org.apache.paimon.operation.PartitionExpire;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
index dedc5c7ad..7fcc20c78 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
@@ -21,7 +21,7 @@ package org.apache.paimon.table.sink;
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.disk.IOManager;
 import org.apache.paimon.table.Table;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
index c95e925e5..34489edbf 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
@@ -20,10 +20,10 @@ package org.apache.paimon.table.sink;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.disk.IOManager;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.operation.AbstractFileStoreWrite;
-import org.apache.paimon.file.operation.FileStoreWrite;
+import org.apache.paimon.disk.IOManager;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.operation.AbstractFileStoreWrite;
+import org.apache.paimon.operation.FileStoreWrite;
 import org.apache.paimon.file.utils.Restorable;
 
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
index 1f6701696..eb5604209 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
@@ -20,9 +20,9 @@ package org.apache.paimon.table.source;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.file.operation.FileStoreScan;
-import org.apache.paimon.file.operation.ScanKind;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.operation.FileStoreScan;
+import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.table.source.snapshot.CompactedStartingScanner;
 import org.apache.paimon.table.source.snapshot.ContinuousFromSnapshotStartingScanner;
 import org.apache.paimon.table.source.snapshot.ContinuousFromTimestampStartingScanner;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
index d2e47f5e6..051b3292f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.utils.OrderedPacking;
 
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java b/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
index 28b30c502..d7893015f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source;
 
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.DataFileMetaSerializer;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMetaSerializer;
 import org.apache.paimon.file.utils.SerializationUtils;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataInputViewStreamWrapper;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
index 50105827a..066f0fb1b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source;
 
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.file.operation.ScanKind;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.utils.Filter;
 
 import javax.annotation.Nullable;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableRead.java b/paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableRead.java
index 47829e634..b1bdb9d52 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableRead.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 
 import java.util.Arrays;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableScan.java
index a995ab293..8c485743e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableScan.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 
 import java.util.List;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java b/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
index 9c4f424fb..b839561a0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
@@ -20,7 +20,7 @@ package org.apache.paimon.table.source;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.operation.KeyValueFileStoreRead;
+import org.apache.paimon.operation.KeyValueFileStoreRead;
 import org.apache.paimon.reader.RecordReader;
 
 import javax.annotation.Nullable;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
index bace23d6b..f5f1cc39c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
@@ -19,9 +19,9 @@
 package org.apache.paimon.table.source;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.SortedRun;
-import org.apache.paimon.file.mergetree.compact.IntervalPartition;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.SortedRun;
+import org.apache.paimon.mergetree.compact.IntervalPartition;
 import org.apache.paimon.utils.OrderedPacking;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
index 5ba78f31d..ba3b720f1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
@@ -20,8 +20,8 @@ package org.apache.paimon.table.source;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.types.RowType;
 
 import java.io.Serializable;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilderImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilderImpl.java
index fa5598950..eeca2c575 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilderImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilderImpl.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.table.InnerTable;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Projection;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
index 35ad5c8b5..7677875d0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 
 import java.util.List;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
index 413ff2a8f..bdfdb7c91 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.DataTable;
 import org.apache.paimon.table.source.snapshot.FollowUpScanner;
 import org.apache.paimon.table.source.snapshot.StartingScanner;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/TableRead.java b/paimon-core/src/main/java/org/apache/paimon/table/source/TableRead.java
index 02b0ef479..2fa89c737 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/TableRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/TableRead.java
@@ -20,8 +20,8 @@ package org.apache.paimon.table.source;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
-import org.apache.paimon.file.operation.FileStoreRead;
+import org.apache.paimon.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.operation.FileStoreRead;
 import org.apache.paimon.reader.RecordReader;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java b/paimon-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
index 258653636..f9cc9688f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
@@ -22,9 +22,9 @@ import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateFilter;
+import org.apache.paimon.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateFilter;
 import org.apache.paimon.reader.RecordReaderIterator;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.DataTableScan.DataFilePlan;
@@ -39,7 +39,7 @@ import java.util.List;
 import java.util.function.IntUnaryOperator;
 import java.util.stream.IntStream;
 
-import static org.apache.paimon.file.predicate.PredicateBuilder.transformFieldMapping;
+import static org.apache.paimon.predicate.PredicateBuilder.transformFieldMapping;
 
 /** A streaming reader to read table. */
 public class TableStreamingReader {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
index c8c55da6d..200660679 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 import org.slf4j.Logger;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
index 88ff90ab1..96101fee7 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
@@ -20,7 +20,7 @@ package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
index ac8099f54..787b71999 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
index 4604c6972..605b4ffb4 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
@@ -20,7 +20,7 @@ package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
index 03f1ad596..c24ca1716 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 import org.slf4j.Logger;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
index 71466c9b7..c9a017e2d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
@@ -20,7 +20,7 @@ package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
index 07d94b2b9..58f84292d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
@@ -20,9 +20,9 @@ package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.operation.ScanKind;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.SplitGenerator;
 import org.apache.paimon.utils.Filter;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
index bb700a852..e563a6099 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
@@ -23,13 +23,13 @@ import org.apache.paimon.codegen.CodeGenUtils;
 import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.manifest.FileKind;
-import org.apache.paimon.file.operation.FileStoreScan;
-import org.apache.paimon.file.operation.ScanKind;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.manifest.FileKind;
+import org.apache.paimon.operation.FileStoreScan;
+import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.SplitGenerator;
@@ -42,7 +42,7 @@ import java.util.Map;
 import java.util.Optional;
 import java.util.function.BiConsumer;
 
-import static org.apache.paimon.file.predicate.PredicateBuilder.transformFieldMapping;
+import static org.apache.paimon.predicate.PredicateBuilder.transformFieldMapping;
 import static org.apache.paimon.table.source.snapshot.SnapshotSplitReader.generateSplits;
 
 /** Implementation of {@link SnapshotSplitReader}. */
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
index 4d8cd09ae..4fcfb529a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
index 8cbde4e33..3d0a9926c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.operation.ScanKind;
+import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 import org.slf4j.Logger;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
index 75e9f230b..a704b8ec3 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
@@ -23,11 +23,11 @@ import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.operation.ScanKind;
-import org.apache.paimon.file.predicate.LeafPredicate;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.predicate.PredicateReplaceVisitor;
+import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.predicate.LeafPredicate;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.PredicateReplaceVisitor;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
@@ -62,7 +62,7 @@ import java.util.Map;
 import java.util.Optional;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
+import static org.apache.paimon.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
 
 /** A {@link Table} for reading audit log of table. */
 public class AuditLogTable implements DataTable, ReadonlyTable {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
index 3eaba4748..f6158af12 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
@@ -22,9 +22,9 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.JoinedRow;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.DataFileMetaSerializer;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMetaSerializer;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.file.utils.IteratorRecordReader;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
index b86b36d50..c74a4d13d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
@@ -23,11 +23,11 @@ import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.LazyGenericRow;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.DataFilePathFactory;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFilePathFactory;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.file.stats.FieldStatsConverters;
@@ -67,7 +67,7 @@ import java.util.TreeMap;
 import java.util.function.Function;
 import java.util.function.Supplier;
 
-import static org.apache.paimon.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
+import static org.apache.paimon.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
 
 /** A {@link Table} for showing files of a snapshot in specific table. */
 public class FilesTable implements ReadonlyTable {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
index 6db1c556d..495f466dd 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
@@ -23,8 +23,8 @@ import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.utils.IteratorRecordReader;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
@@ -46,7 +46,7 @@ import java.util.Iterator;
 import java.util.Map;
 import java.util.Objects;
 
-import static org.apache.paimon.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
+import static org.apache.paimon.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
 import static org.apache.paimon.file.utils.SerializationUtils.newStringType;
 
 /** A {@link Table} for showing options of table. */
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
index c53c245bc..f26bc9299 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
@@ -23,9 +23,9 @@ import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.IteratorRecordReader;
 import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.file.utils.SerializationUtils;
@@ -51,7 +51,7 @@ import java.util.Iterator;
 import java.util.Map;
 import java.util.Objects;
 
-import static org.apache.paimon.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
+import static org.apache.paimon.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
 
 /** A {@link Table} for showing schemas of table. */
 public class SchemasTable implements ReadonlyTable {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
index 06bda9d11..424a760b0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
@@ -25,7 +25,7 @@ import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.file.utils.IteratorRecordReader;
 import org.apache.paimon.file.utils.SerializationUtils;
 import org.apache.paimon.file.utils.SnapshotManager;
@@ -54,7 +54,7 @@ import java.util.Iterator;
 import java.util.Map;
 import java.util.Objects;
 
-import static org.apache.paimon.file.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
+import static org.apache.paimon.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
 
 /** A {@link Table} for showing committing snapshots of table. */
 public class SnapshotsTable implements ReadonlyTable {
diff --git a/paimon-core/src/main/resources/META-INF/services/org.apache.paimon.file.catalog.CatalogFactory b/paimon-core/src/main/resources/META-INF/services/org.apache.paimon.file.org.apache.paimon.catalog.CatalogFactory
similarity index 93%
rename from paimon-core/src/main/resources/META-INF/services/org.apache.paimon.file.catalog.CatalogFactory
rename to paimon-core/src/main/resources/META-INF/services/org.apache.paimon.file.org.apache.paimon.catalog.CatalogFactory
index fcc49ea7c..485ba5531 100644
--- a/paimon-core/src/main/resources/META-INF/services/org.apache.paimon.file.catalog.CatalogFactory
+++ b/paimon-core/src/main/resources/META-INF/services/org.apache.paimon.file.org.apache.paimon.catalog.CatalogFactory
@@ -13,4 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.paimon.file.catalog.FileSystemCatalogFactory
+org.apache.paimon.catalog.FileSystemCatalogFactory
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyCompactManagerTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyCompactManagerTest.java
index 10950fb73..4f9753749 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyCompactManagerTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.append;
+package org.apache.paimon.append;
 
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.junit.jupiter.api.Test;
 
@@ -28,7 +28,7 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.paimon.file.io.DataFileTestUtils.newFile;
+import static org.apache.paimon.io.DataFileTestUtils.newFile;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link AppendOnlyCompactManager}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java b/paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyWriterTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
rename to paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyWriterTest.java
index 8f44e16b9..5f65670e4 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyWriterTest.java
@@ -17,15 +17,15 @@
  * under the License.
  */
 
-package org.apache.paimon.file.append;
+package org.apache.paimon.append;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.DataFilePathFactory;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.ExecutorThreadFactory;
@@ -51,7 +51,7 @@ import java.util.List;
 import java.util.UUID;
 import java.util.concurrent.Executors;
 
-import static org.apache.paimon.file.io.DataFileMeta.getMaxSequenceNumber;
+import static org.apache.paimon.io.DataFileMeta.getMaxSequenceNumber;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test the correctness for {@link AppendOnlyWriter}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java b/paimon-core/src/test/java/org/apache/paimon/append/IterativeCompactTaskTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java
rename to paimon-core/src/test/java/org/apache/paimon/append/IterativeCompactTaskTest.java
index bf45f09ad..e896ea5c3 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/append/IterativeCompactTaskTest.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.append;
+package org.apache.paimon.append;
 
-import org.apache.paimon.file.compact.CompactResult;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.junit.jupiter.api.Test;
 
@@ -30,7 +30,7 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
-import static org.apache.paimon.file.io.DataFileTestUtils.newFile;
+import static org.apache.paimon.io.DataFileTestUtils.newFile;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.api.Assertions.fail;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java b/paimon-core/src/test/java/org/apache/paimon/casting/CastExecutorTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/casting/CastExecutorTest.java
index 8d38895d9..f16f6d73b 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/casting/CastExecutorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.casting;
+package org.apache.paimon.casting;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Timestamp;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/catalog/CatalogFactoryTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java
rename to paimon-core/src/test/java/org/apache/paimon/catalog/CatalogFactoryTest.java
index 79528229f..f9076427e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/catalog/CatalogFactoryTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.catalog;
+package org.apache.paimon.catalog;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java b/paimon-core/src/test/java/org/apache/paimon/disk/BufferFileWriterReaderTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java
rename to paimon-core/src/test/java/org/apache/paimon/disk/BufferFileWriterReaderTest.java
index 4dc897017..c3d7b1ba4 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/disk/BufferFileWriterReaderTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
-import org.apache.paimon.file.memory.Buffer;
+import org.apache.paimon.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/disk/IOManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/disk/IOManagerTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/disk/IOManagerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/disk/IOManagerTest.java
index 01224dafe..ba551419e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/disk/IOManagerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/disk/IOManagerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.disk;
+package org.apache.paimon.disk;
 
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java b/paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java
index fcc37dd50..8288c0649 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java
@@ -21,23 +21,23 @@ package org.apache.paimon.file;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.manifest.ManifestCommittable;
-import org.apache.paimon.file.manifest.ManifestEntry;
-import org.apache.paimon.file.manifest.ManifestFileMeta;
-import org.apache.paimon.file.manifest.ManifestList;
-import org.apache.paimon.file.memory.HeapMemorySegmentPool;
-import org.apache.paimon.file.memory.MemoryOwner;
-import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.paimon.file.operation.AbstractFileStoreWrite;
-import org.apache.paimon.file.operation.FileStoreCommit;
-import org.apache.paimon.file.operation.FileStoreCommitImpl;
-import org.apache.paimon.file.operation.FileStoreExpireImpl;
-import org.apache.paimon.file.operation.FileStoreRead;
-import org.apache.paimon.file.operation.FileStoreScan;
-import org.apache.paimon.file.operation.ScanKind;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.manifest.ManifestCommittable;
+import org.apache.paimon.manifest.ManifestEntry;
+import org.apache.paimon.manifest.ManifestFileMeta;
+import org.apache.paimon.manifest.ManifestList;
+import org.apache.paimon.memory.HeapMemorySegmentPool;
+import org.apache.paimon.memory.MemoryOwner;
+import org.apache.paimon.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.operation.AbstractFileStoreWrite;
+import org.apache.paimon.operation.FileStoreCommit;
+import org.apache.paimon.operation.FileStoreCommitImpl;
+import org.apache.paimon.operation.FileStoreExpireImpl;
+import org.apache.paimon.operation.FileStoreRead;
+import org.apache.paimon.operation.FileStoreScan;
+import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.RecordWriter;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java b/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
index 2c3c1a4c6..f97cc9590 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
@@ -25,9 +25,9 @@ import org.apache.paimon.data.GenericArray;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.table.SchemaEvolutionTableTestBase;
 import org.apache.paimon.types.ArrayType;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java b/paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
index 26a78b6c7..0519a7b36 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
@@ -20,12 +20,12 @@ package org.apache.paimon.file.format;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.file.append.AppendOnlyCompactManager;
-import org.apache.paimon.file.append.AppendOnlyWriter;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.DataFilePathFactory;
-import org.apache.paimon.file.io.KeyValueFileReadWriteTest;
-import org.apache.paimon.file.io.KeyValueFileWriterFactory;
+import org.apache.paimon.append.AppendOnlyCompactManager;
+import org.apache.paimon.append.AppendOnlyWriter;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFilePathFactory;
+import org.apache.paimon.io.KeyValueFileReadWriteTest;
+import org.apache.paimon.io.KeyValueFileWriterFactory;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java b/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
index 52aa9608a..3ddc2c5ab 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.format;
 
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.file.stats.TestFileStatsExtractor;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileStatsExtractor;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java b/paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
index 0307a6a74..e0044d977 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.file.format;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.FormatWriter;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java b/paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
index 6b835807a..005865a23 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
@@ -23,9 +23,9 @@ import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.serializer.AbstractRowDataSerializer;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
-import org.apache.paimon.file.disk.IOManager;
-import org.apache.paimon.file.memory.HeapMemorySegmentPool;
-import org.apache.paimon.file.memory.MemorySegmentPool;
+import org.apache.paimon.disk.IOManager;
+import org.apache.paimon.memory.HeapMemorySegmentPool;
+import org.apache.paimon.memory.MemorySegmentPool;
 import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
index f9311b198..6bdf2ebfe 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
@@ -19,9 +19,9 @@
 package org.apache.paimon.file.stats;
 
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.casting.CastExecutor;
-import org.apache.paimon.file.schema.SchemaEvolutionUtil;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.casting.CastExecutor;
+import org.apache.paimon.schema.SchemaEvolutionUtil;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
@@ -30,7 +30,7 @@ import org.junit.jupiter.api.Test;
 import java.util.Arrays;
 import java.util.Collections;
 
-import static org.apache.paimon.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.io.DataFileTestUtils.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for {@link FieldStatsArraySerializer}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
index 9f5cf2938..80a2cf0de 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
@@ -22,7 +22,7 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.file.io.DataFilePathFactory;
+import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileMetaSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/io/DataFileMetaSerializerTest.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/io/DataFileMetaSerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/io/DataFileMetaSerializerTest.java
index 2077c2921..e5686d875 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileMetaSerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/io/DataFileMetaSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.file.utils.ObjectSerializerTestBase;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/io/DataFilePathFactoryTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
rename to paimon-core/src/test/java/org/apache/paimon/io/DataFilePathFactoryTest.java
index 341cde49d..9c47d816b 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/io/DataFilePathFactoryTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java b/paimon-core/src/test/java/org/apache/paimon/io/DataFileTestDataGenerator.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java
rename to paimon-core/src/test/java/org/apache/paimon/io/DataFileTestDataGenerator.java
index 33ac51532..579335aa4 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/io/DataFileTestDataGenerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java b/paimon-core/src/test/java/org/apache/paimon/io/DataFileTestUtils.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java
rename to paimon-core/src/test/java/org/apache/paimon/io/DataFileTestUtils.java
index c3813e4e8..57eb7a597 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java
+++ b/paimon-core/src/test/java/org/apache/paimon/io/DataFileTestUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java b/paimon-core/src/test/java/org/apache/paimon/io/KeyValueFileReadWriteTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
rename to paimon-core/src/test/java/org/apache/paimon/io/KeyValueFileReadWriteTest.java
index c5ca8e828..8fffcb5bc 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/io/KeyValueFileReadWriteTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java b/paimon-core/src/test/java/org/apache/paimon/io/RollingFileWriterTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
rename to paimon-core/src/test/java/org/apache/paimon/io/RollingFileWriterTest.java
index ed62fd084..007598121 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/io/RollingFileWriterTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.io;
+package org.apache.paimon.io;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.GenericRow;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestCommittableSerializerTest.java
similarity index 94%
rename from paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/manifest/ManifestCommittableSerializerTest.java
index c3e03ec2d..1edf0b1f0 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestCommittableSerializerTest.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.io.CompactIncrement;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.NewFilesIncrement;
+import org.apache.paimon.io.CompactIncrement;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.NewFilesIncrement;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 import org.junit.jupiter.api.Test;
@@ -33,7 +33,7 @@ import java.util.List;
 import java.util.concurrent.ThreadLocalRandom;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.apache.paimon.file.stats.StatsTestUtils.newTableStats;
 import static org.assertj.core.api.Assertions.assertThat;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestEntrySerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestEntrySerializerTest.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestEntrySerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/manifest/ManifestEntrySerializerTest.java
index 51c74caab..dbaf43e25 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestEntrySerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestEntrySerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.file.utils.ObjectSerializer;
 import org.apache.paimon.file.utils.ObjectSerializerTestBase;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaSerializerTest.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaSerializerTest.java
index 85712d7f6..7f7b8925d 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.file.utils.ObjectSerializer;
 import org.apache.paimon.file.utils.ObjectSerializerTestBase;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
rename to paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaTest.java
index f8eac44fb..ce66f5fbc 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaTest.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.stats.StatsTestUtils;
 import org.apache.paimon.file.utils.FailingFileIO;
 import org.apache.paimon.file.utils.FileStorePathFactory;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
rename to paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileTest.java
index 7506af87f..d5b01e12d 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileTest.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.stats.StatsTestUtils;
 import org.apache.paimon.file.utils.FailingFileIO;
 import org.apache.paimon.file.utils.FileStorePathFactory;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestListTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
rename to paimon-core/src/test/java/org/apache/paimon/manifest/ManifestListTest.java
index c8e6f3af6..c32cff3c2 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestListTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.TestKeyValueGenerator;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestTestDataGenerator.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java
rename to paimon-core/src/test/java/org/apache/paimon/manifest/ManifestTestDataGenerator.java
index 510462c97..301d6603c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestTestDataGenerator.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.manifest;
+package org.apache.paimon.manifest;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.TestKeyValueGenerator;
-import org.apache.paimon.file.io.DataFileTestDataGenerator;
+import org.apache.paimon.io.DataFileTestDataGenerator;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.format.FieldStatsCollector;
 import org.apache.paimon.utils.Preconditions;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/memory/MemoryPoolFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/memory/MemoryPoolFactoryTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/memory/MemoryPoolFactoryTest.java
rename to paimon-core/src/test/java/org/apache/paimon/memory/MemoryPoolFactoryTest.java
index 4600f7f41..6c6c1a4b7 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/memory/MemoryPoolFactoryTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/memory/MemoryPoolFactoryTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.memory;
+package org.apache.paimon.memory;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/LevelsTest.java
similarity index 93%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/LevelsTest.java
index c306e5ef0..2c8a1c16d 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/LevelsTest.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
@@ -27,7 +27,7 @@ import java.util.Collections;
 import java.util.Comparator;
 import java.util.UUID;
 
-import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link Levels}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/LookupLevelsTest.java
similarity index 95%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/LookupLevelsTest.java
index 08aade8e7..4853a15e4 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/LookupLevelsTest.java
@@ -16,20 +16,20 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.format.FlushingFileFormat;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.KeyValueFileReaderFactory;
-import org.apache.paimon.file.io.KeyValueFileWriterFactory;
-import org.apache.paimon.file.io.RollingFileWriter;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.KeyValueFileReaderFactory;
+import org.apache.paimon.io.KeyValueFileWriterFactory;
+import org.apache.paimon.io.RollingFileWriter;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
@@ -58,7 +58,7 @@ import java.util.UUID;
 
 import static org.apache.paimon.CoreOptions.TARGET_FILE_SIZE;
 import static org.apache.paimon.file.KeyValue.UNKNOWN_SEQUENCE;
-import static org.apache.paimon.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.io.DataFileTestUtils.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test {@link LookupLevels}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/MergeTreeTest.java
similarity index 95%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/MergeTreeTest.java
index 596d68e24..03d546da7 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/MergeTreeTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.ChangelogProducer;
@@ -24,22 +24,22 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.compact.CompactResult;
+import org.apache.paimon.compact.CompactResult;
 import org.apache.paimon.file.format.FlushingFileFormat;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.KeyValueFileReaderFactory;
-import org.apache.paimon.file.io.KeyValueFileWriterFactory;
-import org.apache.paimon.file.io.RollingFileWriter;
-import org.apache.paimon.file.memory.HeapMemorySegmentPool;
-import org.apache.paimon.file.mergetree.compact.AbstractCompactRewriter;
-import org.apache.paimon.file.mergetree.compact.CompactStrategy;
-import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.paimon.file.mergetree.compact.IntervalPartition;
-import org.apache.paimon.file.mergetree.compact.MergeTreeCompactManager;
-import org.apache.paimon.file.mergetree.compact.UniversalCompaction;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.KeyValueFileReaderFactory;
+import org.apache.paimon.io.KeyValueFileWriterFactory;
+import org.apache.paimon.io.RollingFileWriter;
+import org.apache.paimon.memory.HeapMemorySegmentPool;
+import org.apache.paimon.mergetree.compact.AbstractCompactRewriter;
+import org.apache.paimon.mergetree.compact.CompactStrategy;
+import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.mergetree.compact.IntervalPartition;
+import org.apache.paimon.mergetree.compact.MergeTreeCompactManager;
+import org.apache.paimon.mergetree.compact.UniversalCompaction;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.RecordWriter;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/SortBufferWriteBufferTestBase.java
similarity index 94%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/SortBufferWriteBufferTestBase.java
index ff107edb1..4ff7c1aec 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/SortBufferWriteBufferTestBase.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree;
+package org.apache.paimon.mergetree;
 
 import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.memory.HeapMemorySegmentPool;
-import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.paimon.file.mergetree.compact.MergeFunction;
-import org.apache.paimon.file.mergetree.compact.MergeFunctionTestUtils;
-import org.apache.paimon.file.mergetree.compact.ValueCountMergeFunction;
+import org.apache.paimon.memory.HeapMemorySegmentPool;
+import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.mergetree.compact.MergeFunction;
+import org.apache.paimon.mergetree.compact.MergeFunctionTestUtils;
+import org.apache.paimon.mergetree.compact.ValueCountMergeFunction;
 import org.apache.paimon.file.sort.BinaryInMemorySortBuffer;
 import org.apache.paimon.file.utils.ReusingKeyValue;
 import org.apache.paimon.file.utils.ReusingTestData;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/CombiningRecordReaderTestBase.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/compact/CombiningRecordReaderTestBase.java
index a6fb19231..62a345259 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/CombiningRecordReaderTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.file.KeyValue;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ConcatRecordReaderTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ConcatRecordReaderTest.java
index 7b04e11d4..e04dcdb75 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ConcatRecordReaderTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.utils.ReusingTestData;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ForceUpLevel0CompactionTest.java
similarity index 88%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ForceUpLevel0CompactionTest.java
index 1097e8182..958d4a25f 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ForceUpLevel0CompactionTest.java
@@ -16,18 +16,18 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.compact.CompactUnit;
-import org.apache.paimon.file.mergetree.LevelSortedRun;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.compact.CompactUnit;
+import org.apache.paimon.mergetree.LevelSortedRun;
+import org.apache.paimon.mergetree.SortedRun;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.Optional;
 
-import static org.apache.paimon.file.mergetree.compact.UniversalCompactionTest.file;
+import static org.apache.paimon.mergetree.compact.UniversalCompactionTest.file;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link ForceUpLevel0Compaction}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
index 10353c976..88a1975ed 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
@@ -28,7 +28,7 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
 
-import static org.apache.paimon.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.io.DataFileTestUtils.row;
 
 /** Tests for {@link FullChangelogMergeFunctionWrapper}. */
 public abstract class FullChangelogMergeFunctionWrapperTestBase {
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/IntervalPartitionTest.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/compact/IntervalPartitionTest.java
index 59a6462d0..1065e77b9 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/IntervalPartitionTest.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.SortedRun;
 import org.apache.paimon.file.stats.StatsTestUtils;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
similarity index 96%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
index 1c73936b5..7e3fb6b2d 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.InternalRow.FieldGetter;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.mergetree.compact.aggregate.AggregateMergeFunction;
-import org.apache.paimon.file.mergetree.compact.aggregate.FieldAggregator;
-import org.apache.paimon.file.mergetree.compact.aggregate.FieldSumAgg;
+import org.apache.paimon.mergetree.compact.aggregate.AggregateMergeFunction;
+import org.apache.paimon.mergetree.compact.aggregate.FieldAggregator;
+import org.apache.paimon.mergetree.compact.aggregate.FieldSumAgg;
 import org.apache.paimon.types.DataTypes;
 import org.junit.jupiter.api.Test;
 
@@ -31,7 +31,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.paimon.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.io.DataFileTestUtils.row;
 import static org.apache.paimon.types.RowKind.DELETE;
 import static org.apache.paimon.types.RowKind.INSERT;
 import static org.apache.paimon.types.RowKind.UPDATE_AFTER;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeFunctionTestUtils.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeFunctionTestUtils.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeFunctionTestUtils.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeFunctionTestUtils.java
index 56888fe51..d1a898461 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeFunctionTestUtils.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeFunctionTestUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.utils.ReusingTestData;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManagerTest.java
similarity index 96%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManagerTest.java
index 6143a8ccc..12c445060 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManagerTest.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.compact.CompactResult;
-import org.apache.paimon.file.compact.CompactUnit;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.DataFileTestUtils;
-import org.apache.paimon.file.mergetree.Levels;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.compact.CompactUnit;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFileTestUtils;
+import org.apache.paimon.mergetree.Levels;
+import org.apache.paimon.mergetree.SortedRun;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
@@ -42,7 +42,7 @@ import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.io.DataFileTestUtils.newFile;
+import static org.apache.paimon.io.DataFileTestUtils.newFile;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link MergeTreeCompactManager}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
index 14b1eb35e..6add9da8a 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.file.KeyValue;
@@ -32,7 +32,7 @@ import java.util.Collections;
 import java.util.List;
 import java.util.stream.Stream;
 
-import static org.apache.paimon.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.io.DataFileTestUtils.row;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
 /** Tests for {@link ReducerMergeFunctionWrapper}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/SortMergeReaderTestBase.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/compact/SortMergeReaderTestBase.java
index aa7c5c2df..d5971d7d9 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/SortMergeReaderTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.utils.ReusingTestData;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/UniversalCompactionTest.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/compact/UniversalCompactionTest.java
index 71429a9ec..62a090c8d 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/UniversalCompactionTest.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact;
+package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.compact.CompactUnit;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.LevelSortedRun;
-import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.compact.CompactUnit;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.LevelSortedRun;
+import org.apache.paimon.mergetree.SortedRun;
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
@@ -30,7 +30,7 @@ import java.util.List;
 import java.util.Optional;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.mergetree.compact.UniversalCompaction.createUnit;
+import static org.apache.paimon.mergetree.compact.UniversalCompaction.createUnit;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link UniversalCompaction}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/aggregate/FieldAggregatorTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/mergetree/compact/aggregate/FieldAggregatorTest.java
index 397cf136e..d2c1d379d 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/aggregate/FieldAggregatorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.mergetree.compact.aggregate;
+package org.apache.paimon.mergetree.compact.aggregate;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java b/paimon-core/src/test/java/org/apache/paimon/operation/CleanedFileStoreExpireTest.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java
rename to paimon-core/src/test/java/org/apache/paimon/operation/CleanedFileStoreExpireTest.java
index 8f73811d4..22426ce4b 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/CleanedFileStoreExpireTest.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.manifest.FileKind;
-import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.manifest.FileKind;
+import org.apache.paimon.manifest.ManifestEntry;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java b/paimon-core/src/test/java/org/apache/paimon/operation/FileStoreCommitTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
rename to paimon-core/src/test/java/org/apache/paimon/operation/FileStoreCommitTest.java
index 7d98f211f..413d3404a 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/FileStoreCommitTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
@@ -24,11 +24,11 @@ import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.TestFileStore;
 import org.apache.paimon.file.TestKeyValueGenerator;
-import org.apache.paimon.file.manifest.ManifestCommittable;
-import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.SchemaUtils;
+import org.apache.paimon.manifest.ManifestCommittable;
+import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.SchemaUtils;
 import org.apache.paimon.file.utils.FailingFileIO;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.file.utils.TraceableFileIO;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java b/paimon-core/src/test/java/org/apache/paimon/operation/FileStoreExpireTestBase.java
similarity index 95%
rename from paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/operation/FileStoreExpireTestBase.java
index f04781d1f..af94ab019 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/FileStoreExpireTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
@@ -24,9 +24,9 @@ import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.TestFileStore;
 import org.apache.paimon.file.TestKeyValueGenerator;
-import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java b/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreReadTest.java
similarity index 96%
rename from paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java
rename to paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreReadTest.java
index 4b176707b..906b716e9 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreReadTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
@@ -24,14 +24,14 @@ import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.TestFileStore;
 import org.apache.paimon.file.TestKeyValueGenerator;
-import org.apache.paimon.file.manifest.ManifestEntry;
-import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.paimon.file.mergetree.compact.ValueCountMergeFunction;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.manifest.ManifestEntry;
+import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.mergetree.compact.MergeFunctionFactory;
+import org.apache.paimon.mergetree.compact.ValueCountMergeFunction;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java b/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreScanTest.java
similarity index 96%
rename from paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java
rename to paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreScanTest.java
index b239e670f..4c3cd9102 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreScanTest.java
@@ -16,19 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.TestFileStore;
 import org.apache.paimon.file.TestKeyValueGenerator;
-import org.apache.paimon.file.manifest.ManifestFileMeta;
-import org.apache.paimon.file.manifest.ManifestList;
-import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.manifest.ManifestFileMeta;
+import org.apache.paimon.manifest.ManifestList;
+import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java b/paimon-core/src/test/java/org/apache/paimon/operation/PartitionExpireTest.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
rename to paimon-core/src/test/java/org/apache/paimon/operation/PartitionExpireTest.java
index 31efeb003..0d0ed78ec 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/PartitionExpireTest.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.AbstractFileStoreTable;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java b/paimon-core/src/test/java/org/apache/paimon/operation/TestCommitThread.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java
rename to paimon-core/src/test/java/org/apache/paimon/operation/TestCommitThread.java
index 56ee23893..501f322a3 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/TestCommitThread.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.TestFileStore;
 import org.apache.paimon.file.TestKeyValueGenerator;
-import org.apache.paimon.file.manifest.ManifestCommittable;
-import org.apache.paimon.file.memory.HeapMemorySegmentPool;
-import org.apache.paimon.file.mergetree.MergeTreeWriter;
+import org.apache.paimon.manifest.ManifestCommittable;
+import org.apache.paimon.memory.HeapMemorySegmentPool;
+import org.apache.paimon.mergetree.MergeTreeWriter;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java b/paimon-core/src/test/java/org/apache/paimon/operation/UncleanedFileStoreExpireTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java
rename to paimon-core/src/test/java/org/apache/paimon/operation/UncleanedFileStoreExpireTest.java
index f21cf8567..ea8755051 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/UncleanedFileStoreExpireTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.operation;
+package org.apache.paimon.operation;
 
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/partition/PartitionTimeExtractorTest.java b/paimon-core/src/test/java/org/apache/paimon/partition/PartitionTimeExtractorTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/partition/PartitionTimeExtractorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/partition/PartitionTimeExtractorTest.java
index 4d73764d3..ca9b4869b 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/partition/PartitionTimeExtractorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/partition/PartitionTimeExtractorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.partition;
+package org.apache.paimon.partition;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java b/paimon-core/src/test/java/org/apache/paimon/predicate/BucketSelectorTest.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/predicate/BucketSelectorTest.java
index 94a95b9cb..089ca7196 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/predicate/BucketSelectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
@@ -25,8 +25,8 @@ import org.junit.jupiter.api.Test;
 import java.util.Arrays;
 import java.util.Optional;
 
-import static org.apache.paimon.file.predicate.PredicateBuilder.and;
-import static org.apache.paimon.file.predicate.PredicateBuilder.or;
+import static org.apache.paimon.predicate.PredicateBuilder.and;
+import static org.apache.paimon.predicate.PredicateBuilder.or;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link BucketSelector}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java b/paimon-core/src/test/java/org/apache/paimon/predicate/PredicateBuilderTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
rename to paimon-core/src/test/java/org/apache/paimon/predicate/PredicateBuilderTest.java
index 456053f9c..425c28ca2 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/predicate/PredicateBuilderTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java b/paimon-core/src/test/java/org/apache/paimon/predicate/PredicateTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
rename to paimon-core/src/test/java/org/apache/paimon/predicate/PredicateTest.java
index 9666e6188..c8a7527f0 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/predicate/PredicateTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.predicate;
+package org.apache.paimon.predicate;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java b/paimon-core/src/test/java/org/apache/paimon/schema/DataTypeJsonParserTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java
rename to paimon-core/src/test/java/org/apache/paimon/schema/DataTypeJsonParserTest.java
index cb3dea348..1b0ecaca9 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/schema/DataTypeJsonParserTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.types.ArrayType;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java b/paimon-core/src/test/java/org/apache/paimon/schema/SchemaEvolutionUtilTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java
rename to paimon-core/src/test/java/org/apache/paimon/schema/SchemaEvolutionUtilTest.java
index 9ee33c127..423135d33 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/schema/SchemaEvolutionUtilTest.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.predicate.Equal;
-import org.apache.paimon.file.predicate.IsNotNull;
-import org.apache.paimon.file.predicate.IsNull;
-import org.apache.paimon.file.predicate.LeafPredicate;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Equal;
+import org.apache.paimon.predicate.IsNotNull;
+import org.apache.paimon.predicate.IsNull;
+import org.apache.paimon.predicate.LeafPredicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataTypes;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/schema/SchemaManagerTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/schema/SchemaManagerTest.java
index 85761b5af..a264bcebd 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/schema/SchemaManagerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java b/paimon-core/src/test/java/org/apache/paimon/schema/SchemaUtils.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java
rename to paimon-core/src/test/java/org/apache/paimon/schema/SchemaUtils.java
index fb36490e0..435c3263b 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java
+++ b/paimon-core/src/test/java/org/apache/paimon/schema/SchemaUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.types.DataField;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java b/paimon-core/src/test/java/org/apache/paimon/schema/TableSchemaSerializationTest.java
similarity index 95%
rename from paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java
rename to paimon-core/src/test/java/org/apache/paimon/schema/TableSchemaSerializationTest.java
index 4baee264a..9b66536a0 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/schema/TableSchemaSerializationTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.types.ArrayType;
@@ -32,7 +32,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.paimon.file.schema.TableSchemaTest.newRowType;
+import static org.apache.paimon.schema.TableSchemaTest.newRowType;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for serialize {@link TableSchema}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java b/paimon-core/src/test/java/org/apache/paimon/schema/TableSchemaTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java
rename to paimon-core/src/test/java/org/apache/paimon/schema/TableSchemaTest.java
index 83053ad6c..378bd2f27 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/schema/TableSchemaTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.schema;
+package org.apache.paimon.schema;
 
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
index 19db80fae..8a98fd042 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table;
 
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.FileIOFinder;
 
 import java.util.Map;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
index 6cab341fd..c983d2445 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
@@ -23,13 +23,13 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.operation.ScanKind;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.SchemaUtils;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.SchemaUtils;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.sink.StreamTableCommit;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
index 1f2883297..6a8d5729e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
@@ -20,8 +20,8 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Map;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
index 9b1fc9503..92e82246a 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
@@ -20,9 +20,9 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
index 6ffb965ac..581f78881 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
@@ -20,9 +20,9 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
index d3b3fff64..0797bb374 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
@@ -20,8 +20,8 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Collections;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
index 72bb1650c..fb4b02c48 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
@@ -20,9 +20,9 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
index 55bdfbbb5..80a5985e6 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
@@ -20,8 +20,8 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Collections;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
index 7ae26175a..0f87fd81f 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
@@ -20,9 +20,9 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
index 2266a7913..42769bb89 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
@@ -20,14 +20,14 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.io.DataFilePathFactory;
-import org.apache.paimon.file.operation.ScanKind;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.SchemaUtils;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFilePathFactory;
+import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.SchemaUtils;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
index 185e4d011..8a14a491c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
@@ -21,10 +21,10 @@ package org.apache.paimon.table;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.source.Split;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
index b826ff327..a2254633f 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
@@ -20,10 +20,10 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.operation.ScanKind;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.source.Split;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
index 80bccb847..c9f2f1f40 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
@@ -20,11 +20,11 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
index f3a6ffbb8..527f482f5 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
@@ -24,13 +24,13 @@ import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.operation.ScanKind;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.SchemaUtils;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.SchemaUtils;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.sink.BatchTableCommit;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
index 8bafc2210..1f8296d69 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
@@ -21,11 +21,11 @@ package org.apache.paimon.table;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.table.source.DataSplit;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
index 811d600ca..21471e14e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
@@ -20,8 +20,8 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.table.source.Split;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.utils.RowDataUtils;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
index 7b400dfc8..cee712fed 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
@@ -21,9 +21,9 @@ package org.apache.paimon.table;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.table.source.DataSplit;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
index f78445825..066c50927 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
@@ -19,12 +19,12 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.operation.ScanKind;
-import org.apache.paimon.file.predicate.Equal;
-import org.apache.paimon.file.predicate.IsNull;
-import org.apache.paimon.file.predicate.LeafPredicate;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.predicate.Equal;
+import org.apache.paimon.predicate.IsNull;
+import org.apache.paimon.predicate.LeafPredicate;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.table.source.Split;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.DataTypes;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
index 4352a34f8..9b61f0899 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.table;
 
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.table.source.DataSplit;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
index c47bc99b2..d86086df4 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
@@ -26,12 +26,12 @@ import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.JoinedRow;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
-import org.apache.paimon.file.mergetree.compact.ConcatRecordReader.ReaderSupplier;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.SchemaChange;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.mergetree.compact.ConcatRecordReader.ReaderSupplier;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.SchemaChange;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.FileIOFinder;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
index 9d46183c9..e0d315cf7 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
@@ -24,12 +24,12 @@ import org.apache.paimon.data.Decimal;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaChange;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaChange;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
index 50eef3c6c..d249fc1a5 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
@@ -21,11 +21,11 @@ package org.apache.paimon.table;
 import org.apache.paimon.data.DataFormatTestUtil;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaChange;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaChange;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.sink.StreamTableWrite;
@@ -50,8 +50,8 @@ import java.util.List;
 import java.util.UUID;
 import java.util.function.Consumer;
 
-import static org.apache.paimon.file.schema.SystemColumns.KEY_FIELD_PREFIX;
-import static org.apache.paimon.file.schema.SystemColumns.SYSTEM_FIELD_NAMES;
+import static org.apache.paimon.schema.SystemColumns.KEY_FIELD_PREFIX;
+import static org.apache.paimon.schema.SystemColumns.SYSTEM_FIELD_NAMES;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java b/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
index a28be963d..e33580fbc 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
@@ -21,10 +21,10 @@ package org.apache.paimon.table;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.SchemaUtils;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.SchemaUtils;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.options.Options;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
index b808e19de..244ebe6db 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
@@ -18,15 +18,15 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.paimon.file.io.CompactIncrement;
-import org.apache.paimon.file.io.NewFilesIncrement;
+import org.apache.paimon.io.CompactIncrement;
+import org.apache.paimon.io.NewFilesIncrement;
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
 
-import static org.apache.paimon.file.manifest.ManifestCommittableSerializerTest.randomCompactIncrement;
-import static org.apache.paimon.file.manifest.ManifestCommittableSerializerTest.randomNewFilesIncrement;
-import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.manifest.ManifestCommittableSerializerTest.randomCompactIncrement;
+import static org.apache.paimon.manifest.ManifestCommittableSerializerTest.randomNewFilesIncrement;
+import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link CommitMessageSerializer}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
index 52c995283..d43afe7ea 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
@@ -20,7 +20,7 @@ package org.apache.paimon.table.sink;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java b/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
index 81b6f0312..c7964c5e7 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
@@ -21,11 +21,11 @@ package org.apache.paimon.table.sink;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.operation.AbstractFileStoreWrite;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.SchemaUtils;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.operation.AbstractFileStoreWrite;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.SchemaUtils;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
index 4ca1f2d90..8e2865eb0 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
@@ -28,7 +28,7 @@ import java.util.Comparator;
 import java.util.List;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.io.DataFileTestUtils.fromMinMax;
+import static org.apache.paimon.io.DataFileTestUtils.fromMinMax;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link AppendOnlySplitGenerator} and {@link MergeTreeSplitGenerator}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/SplitTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
index 3f4b1473e..42fafa7c4 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.DataFileTestDataGenerator;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFileTestDataGenerator;
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
index cdca5fc09..6d860d696 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.manifest.ManifestCommittable;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.TableCommitImpl;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
index 190cffd3e..ad6712986 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
@@ -20,7 +20,7 @@ package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.io.DataFileMetaSerializer;
+import org.apache.paimon.io.DataFileMetaSerializer;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
index 23c4b7ed2..11bdea810 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
@@ -22,10 +22,10 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.mergetree.compact.ConcatRecordReader;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
index fa002f750..61a288df2 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
@@ -38,8 +38,8 @@ import org.apache.paimon.connector.log.LogStoreTableFactory;
 import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.connector.source.SystemTableSource;
 import org.apache.paimon.connector.source.TableStoreSource;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
index e5bd512b9..90bb7b537 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
@@ -45,10 +45,10 @@ import org.apache.flink.table.factories.Factory;
 import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.file.catalog.Catalog;
-import org.apache.paimon.file.catalog.Identifier;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaChange;
+import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.Identifier;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaChange;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.Table;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
index 5c62de6fb..b9d90ee16 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
@@ -20,8 +20,8 @@ package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 
-import org.apache.paimon.file.catalog.Catalog;
-import org.apache.paimon.file.catalog.CatalogFactory;
+import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogFactory;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.ConfigOptions;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
index 1d4eed200..a28d1bcb0 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
@@ -34,8 +34,8 @@ import org.apache.flink.table.types.logical.LogicalTypeFamily;
 import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.utils.TypeUtils;
 
 import java.util.ArrayList;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
index e50c89117..6ed238933 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
@@ -26,8 +26,8 @@ import org.apache.flink.table.factories.FactoryUtil;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.sink.TableStoreSink;
-import org.apache.paimon.file.catalog.CatalogLock;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.catalog.CatalogLock;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
index a43a764a7..0e4c86099 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
@@ -21,7 +21,7 @@ package org.apache.paimon.connector.action;
 import org.apache.flink.api.java.tuple.Tuple3;
 import org.apache.flink.api.java.utils.MultipleParameterTool;
 
-import org.apache.paimon.file.catalog.CatalogUtils;
+import org.apache.paimon.catalog.CatalogUtils;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
index ca6fb5b41..d028a06c5 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
@@ -31,10 +31,10 @@ import org.apache.paimon.connector.FlinkCatalog;
 import org.apache.paimon.connector.LogicalTypeConversion;
 import org.apache.paimon.connector.sink.FlinkSinkBuilder;
 import org.apache.paimon.connector.utils.TableEnvironmentUtils;
-import org.apache.paimon.file.catalog.Catalog;
-import org.apache.paimon.file.catalog.CatalogFactory;
-import org.apache.paimon.file.catalog.Identifier;
-import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogFactory;
+import org.apache.paimon.catalog.Identifier;
+import org.apache.paimon.operation.Lock;
 import org.apache.paimon.options.CatalogOptions;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
@@ -49,7 +49,7 @@ import java.util.List;
 import java.util.UUID;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.catalog.Catalog.DEFAULT_DATABASE;
+import static org.apache.paimon.catalog.Catalog.DEFAULT_DATABASE;
 
 /** Abstract base of {@link Action}. */
 public abstract class ActionBase implements Action {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
index 24754f24b..9a8a03f4b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
@@ -29,9 +29,9 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.FlinkRowData;
 import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateFilter;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateFilter;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.StreamDataTableScan;
@@ -61,7 +61,7 @@ import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
 import static org.apache.paimon.connector.RocksDBOptions.LOOKUP_CACHE_ROWS;
-import static org.apache.paimon.file.predicate.PredicateBuilder.transformFieldMapping;
+import static org.apache.paimon.predicate.PredicateBuilder.transformFieldMapping;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /** A lookup {@link TableFunction} for file store. */
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
index e7727f7cf..7fe8ba0de 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
@@ -26,7 +26,7 @@ import org.apache.flink.table.data.RowData;
 
 import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.sink.BucketComputer;
 import org.apache.paimon.table.sink.PartitionComputer;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java
index f67ea7d9f..7712a9803 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java
@@ -20,14 +20,14 @@ package org.apache.paimon.connector.sink;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
 
-import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.manifest.ManifestCommittable;
 
 import java.io.Serializable;
 import java.util.List;
 
 /**
  * Helper interface for {@link CommitterOperator}. This interface manages operator states about
- * {@link org.apache.paimon.file.manifest.ManifestCommittable}.
+ * {@link org.apache.paimon.manifest.ManifestCommittable}.
  */
 public interface CommittableStateManager extends Serializable {
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java
index 0629a79b2..9a2bb6026 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java
@@ -19,7 +19,7 @@
 
 package org.apache.paimon.connector.sink;
 
-import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.manifest.ManifestCommittable;
 
 import java.io.IOException;
 import java.util.List;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java
index c64ffc8ae..7605bcdb4 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java
@@ -27,7 +27,7 @@ import org.apache.flink.streaming.api.watermark.Watermark;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.util.function.SerializableFunction;
 
-import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.manifest.ManifestCommittable;
 
 import java.util.ArrayDeque;
 import java.util.ArrayList;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
index af74fc56c..cca36ab7e 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
@@ -22,7 +22,7 @@ import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.util.function.SerializableFunction;
 
-import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.operation.Lock;
 import org.apache.paimon.table.FileStoreTable;
 
 /** {@link FlinkSink} for dedicated compact jobs. */
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
index e02e9824b..494c9c703 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
@@ -24,7 +24,7 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.streaming.api.transformations.PartitionTransformation;
 import org.apache.flink.table.data.RowData;
 
-import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.operation.Lock;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.system.BucketsTable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
index a9a481728..2b6e86a9a 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
@@ -23,8 +23,8 @@ import org.apache.flink.table.data.RowData;
 import org.apache.flink.util.function.SerializableFunction;
 
 import org.apache.paimon.connector.VersionedSerializerWrapper;
-import org.apache.paimon.file.manifest.ManifestCommittableSerializer;
-import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.manifest.ManifestCommittableSerializer;
+import org.apache.paimon.operation.Lock;
 import org.apache.paimon.table.FileStoreTable;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
index 194b1c3bb..ee32ba8ce 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
@@ -26,7 +26,7 @@ import org.apache.flink.streaming.api.transformations.PartitionTransformation;
 import org.apache.flink.table.data.RowData;
 
 import org.apache.paimon.connector.FlinkConnectorOptions;
-import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.operation.Lock;
 import org.apache.paimon.table.FileStoreTable;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java
index 60661a4c0..11d7b10b1 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java
@@ -20,7 +20,7 @@ package org.apache.paimon.connector.sink;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
 
-import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.manifest.ManifestCommittable;
 
 import java.util.List;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
index 13218affd..f5c558679 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
@@ -25,7 +25,7 @@ import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
 import org.apache.flink.streaming.api.operators.util.SimpleVersionedListState;
 
-import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.manifest.ManifestCommittable;
 import org.apache.paimon.file.utils.SerializableSupplier;
 
 import java.util.ArrayList;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
index a51a5b8f3..671c94b61 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector.sink;
 
-import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.manifest.ManifestCommittable;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.TableCommit;
 import org.apache.paimon.table.sink.TableCommitImpl;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
index bbfea4376..e9145e119 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
@@ -26,8 +26,8 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.io.DataFileMetaSerializer;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMetaSerializer;
 import org.apache.paimon.file.utils.OffsetRow;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.utils.Preconditions;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
index 59a6f2185..efd4f71b4 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
@@ -24,7 +24,7 @@ import org.apache.flink.runtime.state.StateSnapshotContext;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.SinkRecord;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
index 928d3596f..c7ace62e5 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
@@ -24,8 +24,8 @@ import org.apache.flink.runtime.state.StateSnapshotContext;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.disk.IOManagerImpl;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.disk.IOManagerImpl;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.SinkRecord;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
index 6739c45ae..8d9d42812 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
@@ -35,8 +35,8 @@ import org.apache.paimon.connector.FlinkConnectorOptions;
 import org.apache.paimon.connector.TableStoreDataStreamSinkProvider;
 import org.apache.paimon.connector.log.LogSinkProvider;
 import org.apache.paimon.connector.log.LogStoreTableFactory;
-import org.apache.paimon.file.catalog.CatalogLock;
-import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.catalog.CatalogLock;
+import org.apache.paimon.operation.Lock;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.AppendOnlyFileStoreTable;
 import org.apache.paimon.table.ChangelogValueCountFileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java
index 928731264..38a281b11 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java
@@ -26,8 +26,8 @@ import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
 
 import org.apache.paimon.connector.LogicalTypeConversion;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.StreamDataTableScan;
 import org.apache.paimon.table.source.snapshot.ContinuousCompactorFollowUpScanner;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java
index e9cbaf1bc..5701ae704 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java
@@ -23,7 +23,7 @@ import org.apache.flink.api.connector.source.SourceReaderContext;
 import org.apache.flink.api.connector.source.SplitEnumerator;
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
 
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.table.DataTable;
 import org.apache.paimon.table.source.StreamDataTableScan;
 import org.apache.paimon.table.source.TableRead;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
index daafdedf4..4c3e98a60 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
@@ -34,7 +34,7 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.StartupMode;
 import org.apache.paimon.connector.Projection;
 import org.apache.paimon.connector.log.LogSourceProvider;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.StreamDataTableScan;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
index b5fa30e9c..cf04c07ca 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
@@ -27,8 +27,8 @@ import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.paimon.connector.LogicalTypeConversion;
 import org.apache.paimon.connector.PredicateConverter;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.table.Table;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
index ffae6e192..b67d83f62 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
@@ -23,7 +23,7 @@ import org.apache.flink.api.connector.source.SplitEnumerator;
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
 
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.DataTable;
 import org.apache.paimon.table.source.BatchDataTableScan;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java
index 12db464aa..aad5422c2 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java
@@ -24,7 +24,7 @@ import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.connector.source.SourceProvider;
 import org.apache.flink.table.data.RowData;
 
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.table.DataTable;
 import org.apache.paimon.table.Table;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
index 5d0cdfdf4..9a378f33e 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
@@ -36,7 +36,7 @@ import org.apache.paimon.connector.log.LogSourceProvider;
 import org.apache.paimon.connector.log.LogStoreTableFactory;
 import org.apache.paimon.connector.lookup.FileStoreLookupFunction;
 import org.apache.paimon.connector.lookup.LookupRuntimeProviderFactory;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.AppendOnlyFileStoreTable;
 import org.apache.paimon.table.ChangelogValueCountFileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
index 4a00a3654..4fd2139b3 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
@@ -25,7 +25,7 @@ import org.apache.paimon.data.BinaryRow;
 
 import java.util.Random;
 
-import static org.apache.paimon.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.io.DataFileTestUtils.row;
 
 /** Test for {@link BinaryRowTypeSerializer}. */
 public class BinaryRowTypeSerializerTest extends SerializerTestBase<BinaryRow> {
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
index 4aea33928..34a52a7b6 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
@@ -21,8 +21,8 @@ package org.apache.paimon.connector;
 import org.apache.flink.types.Row;
 
 import org.apache.commons.lang3.StringUtils;
-import org.apache.paimon.file.schema.SchemaChange;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.schema.SchemaChange;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
index 73b5f8359..d2d9d399b 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
@@ -26,8 +26,8 @@ import org.apache.paimon.connector.kafka.KafkaLogStoreFactory;
 import org.apache.paimon.connector.log.LogStoreTableFactory;
 import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.connector.source.TableStoreSource;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
index 332c43c81..4ad44eb91 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
@@ -49,8 +49,8 @@ import org.apache.paimon.connector.source.ContinuousFileStoreSource;
 import org.apache.paimon.connector.source.FlinkSourceBuilder;
 import org.apache.paimon.connector.source.StaticFileStoreSource;
 import org.apache.paimon.connector.util.AbstractTestBase;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.paimon.file.utils.FailingFileIO;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
index 463937d30..9ea31e956 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
@@ -22,9 +22,9 @@ import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
 
 import org.apache.paimon.connector.kafka.KafkaTableTestBase;
-import org.apache.paimon.file.catalog.AbstractCatalog;
-import org.apache.paimon.file.catalog.Catalog;
-import org.apache.paimon.file.catalog.Identifier;
+import org.apache.paimon.catalog.AbstractCatalog;
+import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.Identifier;
 import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.paimon.fs.Path;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
index 603b57658..0a6aa19b8 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
@@ -37,7 +37,7 @@ import org.apache.flink.table.catalog.exceptions.TableAlreadyExistException;
 import org.apache.flink.table.catalog.exceptions.TableNotExistException;
 import org.apache.flink.table.store.catalog.CatalogContext;
 
-import org.apache.paimon.file.catalog.AbstractCatalog;
+import org.apache.paimon.catalog.AbstractCatalog;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
index 792640c88..f249f99e2 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
@@ -20,8 +20,8 @@ package org.apache.paimon.connector;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.manifest.ManifestFileMeta;
-import org.apache.paimon.file.manifest.ManifestList;
+import org.apache.paimon.manifest.ManifestFileMeta;
+import org.apache.paimon.manifest.ManifestList;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.format.FileFormat;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
index 0234450e8..5c1b2290a 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
@@ -34,8 +34,8 @@ import org.apache.flink.table.types.logical.VarCharType;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.params.ParameterizedTest;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
index 9b2581ac6..477783741 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
@@ -41,7 +41,7 @@ import org.apache.flink.types.Row;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.connector.util.AbstractTestBase;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
index 6dbb43b6d..e1cfc8e8a 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
@@ -24,8 +24,8 @@ import org.apache.flink.runtime.jobgraph.SavepointConfigOptions;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
index 746b928be..be309fad6 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
@@ -24,10 +24,10 @@ import org.apache.paimon.connector.util.AbstractTestBase;
 import org.apache.paimon.data.DataFormatTestUtil;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.catalog.Catalog;
-import org.apache.paimon.file.catalog.CatalogFactory;
-import org.apache.paimon.file.catalog.Identifier;
-import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogFactory;
+import org.apache.paimon.catalog.Identifier;
+import org.apache.paimon.schema.Schema;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
index f6800c4e1..e2f5c941a 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
@@ -61,7 +61,7 @@ import static org.apache.paimon.CoreOptions.LOG_CONSISTENCY;
 import static org.apache.paimon.connector.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
 import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
 import static org.apache.paimon.data.BinaryRow.EMPTY_ROW;
-import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 
 /** Utils for the test of {@link KafkaLogStoreFactory}. */
 public class KafkaLogTestUtils {
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java
index e84db06af..b525b249c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.connector.sink;
 
-import org.apache.paimon.file.io.CompactIncrement;
-import org.apache.paimon.file.io.NewFilesIncrement;
+import org.apache.paimon.io.CompactIncrement;
+import org.apache.paimon.io.NewFilesIncrement;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 import org.apache.paimon.table.sink.CommitMessageSerializer;
@@ -27,9 +27,9 @@ import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
 
-import static org.apache.paimon.file.manifest.ManifestCommittableSerializerTest.randomCompactIncrement;
-import static org.apache.paimon.file.manifest.ManifestCommittableSerializerTest.randomNewFilesIncrement;
-import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.manifest.ManifestCommittableSerializerTest.randomCompactIncrement;
+import static org.apache.paimon.manifest.ManifestCommittableSerializerTest.randomNewFilesIncrement;
+import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link CommittableSerializer}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
index 0aad7abb3..1cbcd7914 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
@@ -26,7 +26,7 @@ import org.apache.flink.streaming.util.OneInputStreamOperatorTestHarness;
 
 import org.apache.paimon.connector.VersionedSerializerWrapper;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.file.manifest.ManifestCommittableSerializer;
+import org.apache.paimon.manifest.ManifestCommittableSerializer;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
index 1e6d5f5ae..67e6653c5 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
@@ -20,8 +20,8 @@ package org.apache.paimon.connector.sink;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
index 3060705bb..910b20674 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
@@ -28,9 +28,9 @@ import org.apache.paimon.connector.util.AbstractTestBase;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
index c25569505..6d1b7c7a8 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
@@ -31,7 +31,7 @@ import org.apache.paimon.connector.CatalogITCaseBase;
 import org.apache.paimon.connector.FlinkConnectorOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
index a6034ca6f..3e8b39795 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
@@ -28,10 +28,10 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.file.io.DataFileMetaSerializer;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMetaSerializer;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java
index b23d5e466..e0c791ffe 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java
@@ -21,7 +21,7 @@ package org.apache.paimon.connector.source;
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
 import org.apache.flink.connector.testutils.source.reader.TestingSplitEnumeratorContext;
 
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.DataTableScan.DataFilePlan;
 import org.apache.paimon.table.source.EndOfScanException;
@@ -39,7 +39,7 @@ import java.util.concurrent.LinkedBlockingQueue;
 import java.util.stream.Collectors;
 
 import static org.apache.flink.connector.testutils.source.reader.TestingSplitEnumeratorContext.SplitAssignmentState;
-import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link ContinuousFileSplitEnumerator}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
index 6f610cf23..b82ab6f6a 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
@@ -20,8 +20,8 @@ package org.apache.paimon.connector.source;
 
 import org.apache.flink.connector.testutils.source.reader.TestingReaderContext;
 
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.types.BigIntType;
@@ -36,7 +36,7 @@ import java.util.Arrays;
 import java.util.Collections;
 
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
-import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link FileStoreSourceReader}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
index 93043cd08..ceb2d9962 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.connector.source;
 
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.manifest.FileKind;
-import org.apache.paimon.file.manifest.ManifestEntry;
-import org.apache.paimon.file.operation.FileStoreScan;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.manifest.FileKind;
+import org.apache.paimon.manifest.ManifestEntry;
+import org.apache.paimon.operation.FileStoreScan;
 import org.apache.paimon.file.stats.StatsTestUtils;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.DataTableScan;
@@ -36,7 +36,7 @@ import java.util.Comparator;
 import java.util.List;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link FileStoreSourceSplitGenerator}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
index a7d5cc0e9..715804f0c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
@@ -31,9 +31,9 @@ import org.apache.flink.types.RowKind;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
@@ -54,7 +54,7 @@ import java.util.stream.Stream;
 import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newFile;
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
-import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
index f2839a4d4..3fb08b942 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
@@ -21,7 +21,7 @@ package org.apache.paimon.connector.source;
 import org.apache.flink.core.io.SimpleVersionedSerialization;
 
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.file.stats.StatsTestUtils;
 import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.Test;
@@ -30,7 +30,7 @@ import java.io.IOException;
 import java.util.Arrays;
 import java.util.List;
 
-import static org.apache.paimon.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.io.DataFileTestUtils.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link FileStoreSourceSplitSerializer}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java
index 80b034323..84e0f57da 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java
@@ -26,7 +26,7 @@ import java.util.Arrays;
 
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newFile;
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
-import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link FileStoreSourceSplitState}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java
index d806de448..a426256c5 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java
@@ -28,7 +28,7 @@ import java.util.Collections;
 
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newFile;
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
-import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link PendingSplitsCheckpointSerializer}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
index c26f8e686..26bf667ea 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
@@ -25,16 +25,16 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.memory.HeapMemorySegmentPool;
-import org.apache.paimon.file.memory.MemoryOwner;
-import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.paimon.file.operation.KeyValueFileStoreRead;
-import org.apache.paimon.file.operation.KeyValueFileStoreWrite;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.memory.HeapMemorySegmentPool;
+import org.apache.paimon.memory.MemoryOwner;
+import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.operation.KeyValueFileStoreRead;
+import org.apache.paimon.operation.KeyValueFileStoreWrite;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.file.utils.SnapshotManager;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
index d958ecf30..883e05f17 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
@@ -27,7 +27,7 @@ import org.apache.avro.generic.GenericRecord;
 import org.apache.avro.io.DatumWriter;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.FormatWriter;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
index 68932a514..0952111ce 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
@@ -22,7 +22,7 @@ import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch;
 import org.apache.orc.TypeDescription;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatReaderFactory;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
index 51954fd18..760401286 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
@@ -21,8 +21,8 @@ package org.apache.paimon.format.orc.filter;
 import org.apache.hadoop.hive.ql.io.sarg.PredicateLeaf;
 import org.apache.paimon.data.Decimal;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.file.predicate.FieldRef;
-import org.apache.paimon.file.predicate.FunctionVisitor;
+import org.apache.paimon.predicate.FieldRef;
+import org.apache.paimon.predicate.FunctionVisitor;
 import org.apache.paimon.types.DataType;
 
 import javax.annotation.Nullable;
@@ -34,7 +34,7 @@ import java.util.List;
 import java.util.Optional;
 
 /**
- * Convert {@link org.apache.paimon.file.predicate.Predicate} to {@link OrcFilters.Predicate} for
+ * Convert {@link org.apache.paimon.predicate.Predicate} to {@link OrcFilters.Predicate} for
  * orc.
  */
 public class OrcPredicateFunctionVisitor
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
index 8e13be5c6..94cbaca64 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.format.parquet;
 
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatReaderFactory;
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
index e22d5abd6..35b867539 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.format.orc;
 
 import org.apache.hadoop.hive.ql.io.sarg.PredicateLeaf;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.format.orc.filter.OrcFilters;
 import org.apache.paimon.format.orc.filter.OrcPredicateFunctionVisitor;
 import org.apache.paimon.types.BigIntType;
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
index 43340e0ee..d2689ddfc 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
@@ -33,14 +33,14 @@ import org.apache.hadoop.hive.metastore.api.StorageDescriptor;
 import org.apache.hadoop.hive.metastore.api.Table;
 import org.apache.hadoop.hive.metastore.api.UnknownDBException;
 import org.apache.hadoop.hive.metastore.api.hive_metastoreConstants;
-import org.apache.paimon.file.catalog.AbstractCatalog;
-import org.apache.paimon.file.catalog.CatalogLock;
-import org.apache.paimon.file.catalog.Identifier;
-import org.apache.paimon.file.operation.Lock;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaChange;
-import org.apache.paimon.file.schema.SchemaManager;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.catalog.AbstractCatalog;
+import org.apache.paimon.catalog.CatalogLock;
+import org.apache.paimon.catalog.Identifier;
+import org.apache.paimon.operation.Lock;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaChange;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.OptionsUtils;
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
index de9ccb78b..1c97929f3 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
@@ -24,8 +24,8 @@ import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.HiveMetaStoreClient;
 import org.apache.hadoop.hive.metastore.IMetaStoreClient;
-import org.apache.paimon.file.catalog.Catalog;
-import org.apache.paimon.file.catalog.CatalogFactory;
+import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.CatalogOptions;
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
index 5f33f3f7a..b9f811d87 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
@@ -26,7 +26,7 @@ import org.apache.hadoop.hive.metastore.api.LockRequest;
 import org.apache.hadoop.hive.metastore.api.LockResponse;
 import org.apache.hadoop.hive.metastore.api.LockState;
 import org.apache.hadoop.hive.metastore.api.LockType;
-import org.apache.paimon.file.catalog.CatalogLock;
+import org.apache.paimon.catalog.CatalogLock;
 import org.apache.paimon.utils.TimeUtils;
 import org.apache.thrift.TException;
 
diff --git a/paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.paimon.file.catalog.CatalogFactory b/paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.paimon.file.org.apache.paimon.catalog.CatalogFactory
similarity index 100%
rename from paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.paimon.file.catalog.CatalogFactory
rename to paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.paimon.file.org.apache.paimon.catalog.CatalogFactory
diff --git a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
index a138dc613..fbb593bcb 100644
--- a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
@@ -34,11 +34,11 @@ import com.klarna.hiverunner.annotations.HiveSQL;
 import com.klarna.hiverunner.config.HiveRunnerConfig;
 import org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
 import org.apache.paimon.connector.FlinkCatalog;
-import org.apache.paimon.file.catalog.AbstractCatalog;
-import org.apache.paimon.file.catalog.Catalog;
-import org.apache.paimon.file.catalog.CatalogLock;
-import org.apache.paimon.file.catalog.Identifier;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.catalog.AbstractCatalog;
+import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogLock;
+import org.apache.paimon.catalog.Identifier;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.assertj.core.api.Assertions;
 import org.junit.After;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
index 10189721a..b9a34b393 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
@@ -27,7 +27,7 @@ import org.apache.hadoop.hive.serde2.SerDeUtils;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfo;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoUtils;
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTableFactory;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/SearchArgumentToPredicateConverter.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/SearchArgumentToPredicateConverter.java
index 9a988fe31..c0174ca54 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/SearchArgumentToPredicateConverter.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/SearchArgumentToPredicateConverter.java
@@ -22,8 +22,8 @@ import org.apache.hadoop.hive.ql.io.sarg.ExpressionTree;
 import org.apache.hadoop.hive.ql.io.sarg.PredicateLeaf;
 import org.apache.hadoop.hive.ql.io.sarg.SearchArgument;
 import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Preconditions;
@@ -35,7 +35,7 @@ import java.util.List;
 import java.util.Optional;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.predicate.PredicateBuilder.convertJavaObject;
+import static org.apache.paimon.predicate.PredicateBuilder.convertJavaObject;
 
 /** Converts {@link SearchArgument} to {@link Predicate} with best effort. */
 public class SearchArgumentToPredicateConverter {
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
index aa3dec353..65607fa94 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
@@ -29,8 +29,8 @@ import org.apache.hadoop.mapred.JobConf;
 import org.apache.hadoop.mapred.RecordReader;
 import org.apache.hadoop.mapred.Reporter;
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.hive.RowDataContainer;
 import org.apache.paimon.hive.SearchArgumentToPredicateConverter;
 import org.apache.paimon.hive.TableStoreJobConf;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
index 0d174be88..1a43d1b0d 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
@@ -20,7 +20,7 @@ package org.apache.paimon.hive.mapred;
 
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.mapred.FileSplit;
-import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataOutputSerializer;
 import org.apache.paimon.table.source.DataSplit;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
index a03af542b..e9508696a 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.hive;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
index f281e1f94..d0d84c78b 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.hive;
 
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.types.DataField;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
index ddc68d941..f9ce13c77 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
@@ -26,8 +26,8 @@ import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
index 8afbbf96c..96609757e 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
@@ -21,8 +21,8 @@ package org.apache.paimon.hive;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.StructField;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.hive.objectinspector.TableStoreRowDataObjectInspector;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java
index e146b6711..e9a79b274 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.hive.mapred;
 
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.io.DataFileTestDataGenerator;
+import org.apache.paimon.io.DataFileTestDataGenerator;
 import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
index 88ff4929d..2203b4d85 100644
--- a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
+++ b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.table.Table;
 import org.apache.paimon.table.source.ReadBuilder;
 import org.apache.paimon.table.source.Split;
diff --git a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
index cd33f67e2..727224a09 100644
--- a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
@@ -20,8 +20,8 @@ package org.apache.paimon.spark;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
diff --git a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
index 827664684..68c5448ff 100644
--- a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.spark;
 
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DateType;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
index 0199ecaa6..20798eb11 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
@@ -20,11 +20,11 @@ package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 
-import org.apache.paimon.file.catalog.Catalog;
+import org.apache.paimon.catalog.Catalog;
 import org.apache.paimon.file.catalog.CatalogFactory;
-import org.apache.paimon.file.operation.Lock;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.SchemaChange;
+import org.apache.paimon.operation.Lock;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaChange;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Preconditions;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkFilterConverter.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkFilterConverter.java
index b0acb6c26..808ba0c16 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkFilterConverter.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkFilterConverter.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
 import org.apache.spark.sql.sources.And;
@@ -40,7 +40,7 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.predicate.PredicateBuilder.convertJavaObject;
+import static org.apache.paimon.predicate.PredicateBuilder.convertJavaObject;
 
 /** Conversion from {@link Filter} to {@link Predicate}. */
 public class SparkFilterConverter {
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
index 9ff1ed0b8..65ed57124 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.table.Table;
 import org.apache.spark.sql.connector.read.Scan;
 import org.apache.spark.sql.connector.read.ScanBuilder;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
index 151874bc8..1d7d9cebe 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
@@ -20,7 +20,7 @@ package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 
-import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.operation.Lock;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.spark.sql.SparkSession;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
index 0a4e5fc0e..b0aef728f 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.paimon.file.operation.Lock;
-import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.operation.Lock;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.table.DataTable;
 import org.apache.paimon.table.SupportsPartition;
 import org.apache.paimon.table.Table;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWrite.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWrite.java
index e48b42cfc..ec17dba9c 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWrite.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWrite.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.operation.Lock;
 import org.apache.paimon.table.Table;
 import org.apache.paimon.table.sink.BatchTableCommit;
 import org.apache.paimon.table.sink.BatchTableWrite;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWriteBuilder.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWriteBuilder.java
index b5c6d8efb..93ec7f791 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWriteBuilder.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWriteBuilder.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.operation.Lock;
 import org.apache.paimon.table.Table;
 import org.apache.spark.sql.connector.write.Write;
 import org.apache.spark.sql.connector.write.WriteBuilder;
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
index 827664684..68c5448ff 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.spark;
 
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DateType;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
index a4ef7a7cf..16d04916b 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTableFactory;
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
index 778749b64..a3fe245f4 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
@@ -21,7 +21,7 @@ package org.apache.paimon.spark;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTable;


[incubator-paimon] 04/32: [core] Rename paimon hive

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 642bc704b2d6ff1a2a28630dd2929c3d0d8371d0
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 12:18:32 2023 +0800

    [core] Rename paimon hive
---
 docs/content/engines/hive.md                             |  2 +-
 docs/content/how-to/creating-tables.md                   |  2 +-
 .../org/apache/flink/table/store/tests/HiveE2eTest.java  |  2 +-
 .../paimon-hive-catalog}/pom.xml                         |  0
 .../main/java/org/apache/paimon}/hive/HiveCatalog.java   | 15 +++++++--------
 .../java/org/apache/paimon}/hive/HiveCatalogFactory.java |  2 +-
 .../java/org/apache/paimon}/hive/HiveCatalogLock.java    |  2 +-
 .../org/apache/paimon}/hive/SerializableHiveConf.java    |  2 +-
 .../src/main/resources-filtered/META-INF/NOTICE          |  0
 ....apache.flink.table.store.file.catalog.CatalogFactory |  2 +-
 .../paimon}/hive/AlterFailHiveMetaStoreClient.java       |  2 +-
 .../paimon}/hive/CreateFailHiveMetaStoreClient.java      |  2 +-
 .../paimon}/hive/CustomHiveMetastoreClientITCase.java    |  2 +-
 .../java/org/apache/paimon}/hive/HiveCatalogITCase.java  |  2 +-
 .../org/apache/paimon}/hive/TestHiveMetaStoreClient.java |  2 +-
 .../paimon-hive-common}/pom.xml                          |  0
 .../main/java/org/apache/paimon}/hive/HiveTypeUtils.java |  2 +-
 .../paimon-hive-connector-2.1-cdh-6.3}/pom.xml           |  0
 .../paimon-hive-connector-2.1}/pom.xml                   |  0
 .../paimon-hive-connector-2.2}/pom.xml                   |  0
 .../paimon-hive-connector-2.3}/pom.xml                   |  0
 .../paimon-hive-connector-3.1}/pom.xml                   |  0
 .../objectinspector/TableStoreDateObjectInspector.java   |  2 +-
 .../TableStoreTimestampObjectInspector.java              |  2 +-
 .../paimon-hive-connector-common}/pom.xml                |  0
 .../main/java/org/apache/paimon}/hive/HiveSchema.java    |  2 +-
 .../java/org/apache/paimon/hive}/RowDataContainer.java   |  2 +-
 .../paimon/hive}/SearchArgumentToPredicateConverter.java |  2 +-
 .../org/apache/paimon}/hive/TableStoreHiveMetaHook.java  |  6 +++---
 .../paimon}/hive/TableStoreHiveStorageHandler.java       |  8 +++-----
 .../java/org/apache/paimon/hive}/TableStoreJobConf.java  |  2 +-
 .../java/org/apache/paimon}/hive/TableStoreSerDe.java    |  6 ++----
 .../paimon/hive}/mapred/TableStoreInputFormat.java       |  8 ++++----
 .../apache/paimon/hive}/mapred/TableStoreInputSplit.java |  2 +-
 .../paimon/hive}/mapred/TableStoreOutputFormat.java      |  2 +-
 .../paimon/hive}/mapred/TableStoreRecordReader.java      |  4 ++--
 .../objectinspector/TableStoreCharObjectInspector.java   |  2 +-
 .../objectinspector/TableStoreDateObjectInspector.java   |  2 +-
 .../TableStoreDecimalObjectInspector.java                |  2 +-
 .../objectinspector/TableStoreListObjectInspector.java   |  2 +-
 .../objectinspector/TableStoreMapObjectInspector.java    |  2 +-
 .../TableStoreObjectInspectorFactory.java                |  4 ++--
 .../TableStoreRowDataObjectInspector.java                |  4 ++--
 .../objectinspector/TableStoreStringObjectInspector.java |  2 +-
 .../TableStoreTimestampObjectInspector.java              |  2 +-
 .../TableStoreVarcharObjectInspector.java                |  2 +-
 .../java/org/apache/paimon/hive}/FileStoreTestUtils.java |  3 ++-
 .../org/apache/paimon}/hive/HiveTableSchemaTest.java     |  2 +-
 .../paimon}/hive/RandomGenericRowDataGenerator.java      |  2 +-
 .../hive}/SearchArgumentToPredicateConverterTest.java    |  4 ++--
 .../paimon}/hive/TableStoreHiveStorageHandlerITCase.java |  7 +++----
 .../org/apache/paimon}/hive/TableStoreSerDeTest.java     | 13 ++++++-------
 .../paimon/hive}/mapred/TableStoreInputSplitTest.java    |  2 +-
 .../paimon/hive}/mapred/TableStoreRecordReaderTest.java  |  6 +++---
 .../TableStoreCharObjectInspectorTest.java               |  2 +-
 .../TableStoreDateObjectInspectorTest.java               |  2 +-
 .../TableStoreDecimalObjectInspectorTest.java            |  2 +-
 .../TableStoreListObjectInspectorTest.java               |  2 +-
 .../TableStoreMapObjectInspectorTest.java                |  2 +-
 .../TableStoreRowDataObjectInspectorTest.java            | 12 ++++++------
 .../TableStoreStringObjectInspectorTest.java             |  2 +-
 .../TableStoreTimestampObjectInspectorTest.java          |  2 +-
 .../TableStoreVarcharObjectInspectorTest.java            |  2 +-
 .../src/test/resources/log4j2-test.properties            |  0
 {flink-table-store-hive => paimon-hive}/pom.xml          | 16 ++++++++--------
 pom.xml                                                  |  2 +-
 66 files changed, 96 insertions(+), 102 deletions(-)

diff --git a/docs/content/engines/hive.md b/docs/content/engines/hive.md
index 84ddfb3e7..a960c2b1c 100644
--- a/docs/content/engines/hive.md
+++ b/docs/content/engines/hive.md
@@ -164,7 +164,7 @@ To access existing table store table, you can also register them as external tab
 -- Pointing the location to the path of table is enough.
 
 CREATE EXTERNAL TABLE external_test_table
-STORED BY 'org.apache.flink.table.store.hive.TableStoreHiveStorageHandler'
+STORED BY 'org.apache.paimon.hive.TableStoreHiveStorageHandler'
 LOCATION '/path/to/table/store/warehouse/default.db/test_table';
 
 -- Read records from external_test_table
diff --git a/docs/content/how-to/creating-tables.md b/docs/content/how-to/creating-tables.md
index a83ea6e46..4782252ac 100644
--- a/docs/content/how-to/creating-tables.md
+++ b/docs/content/how-to/creating-tables.md
@@ -363,7 +363,7 @@ Hive SQL only supports reading from an external table. The following SQL creates
 
 ```sql
 CREATE EXTERNAL TABLE my_table
-STORED BY 'org.apache.flink.table.store.hive.TableStoreHiveStorageHandler'
+STORED BY 'org.apache.paimon.hive.TableStoreHiveStorageHandler'
 LOCATION 'hdfs://path/to/table';
 ```
 
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/HiveE2eTest.java b/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/HiveE2eTest.java
index 7d0d38de6..5630d1698 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/HiveE2eTest.java
+++ b/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/HiveE2eTest.java
@@ -78,7 +78,7 @@ public class HiveE2eTest extends E2eReaderTestBase {
         String externalTablePkDdl =
                 String.format(
                         "CREATE EXTERNAL TABLE IF NOT EXISTS %s\n"
-                                + "STORED BY 'org.apache.flink.table.store.hive.TableStoreHiveStorageHandler'\n"
+                                + "STORED BY 'org.apache.paimon.hive.TableStoreHiveStorageHandler'\n"
                                 + "LOCATION '%s/default.db/%s';\n",
                         table, tableStorePkPath, table);
 
diff --git a/flink-table-store-hive/flink-table-store-hive-catalog/pom.xml b/paimon-hive/paimon-hive-catalog/pom.xml
similarity index 100%
rename from flink-table-store-hive/flink-table-store-hive-catalog/pom.xml
rename to paimon-hive/paimon-hive-catalog/pom.xml
diff --git a/flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/HiveCatalog.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/HiveCatalog.java
rename to paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
index 842e84bdf..91bf9766e 100644
--- a/flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/HiveCatalog.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.file.catalog.AbstractCatalog;
 import org.apache.flink.table.store.file.catalog.CatalogLock;
@@ -60,11 +60,11 @@ import java.util.Optional;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.hive.HiveCatalogLock.acquireTimeout;
-import static org.apache.flink.table.store.hive.HiveCatalogLock.checkMaxSleep;
 import static org.apache.flink.table.store.options.CatalogOptions.LOCK_ENABLED;
 import static org.apache.flink.table.store.options.CatalogOptions.TABLE_TYPE;
 import static org.apache.flink.table.store.utils.Preconditions.checkState;
+import static org.apache.paimon.hive.HiveCatalogLock.acquireTimeout;
+import static org.apache.paimon.hive.HiveCatalogLock.checkMaxSleep;
 
 /** A catalog implementation for Hive. */
 public class HiveCatalog extends AbstractCatalog {
@@ -73,13 +73,12 @@ public class HiveCatalog extends AbstractCatalog {
     // we don't include flink-table-store-hive-connector as dependencies because it depends on
     // hive-exec
     private static final String INPUT_FORMAT_CLASS_NAME =
-            "org.apache.flink.table.store.mapred.TableStoreInputFormat";
+            "org.apache.paimon.hive.mapred.TableStoreInputFormat";
     private static final String OUTPUT_FORMAT_CLASS_NAME =
-            "org.apache.flink.table.store.mapred.TableStoreOutputFormat";
-    private static final String SERDE_CLASS_NAME =
-            "org.apache.flink.table.store.hive.TableStoreSerDe";
+            "org.apache.paimon.hive.mapred.TableStoreOutputFormat";
+    private static final String SERDE_CLASS_NAME = "org.apache.paimon.hive.TableStoreSerDe";
     private static final String STORAGE_HANDLER_CLASS_NAME =
-            "org.apache.flink.table.store.hive.TableStoreHiveStorageHandler";
+            "org.apache.paimon.hive.TableStoreHiveStorageHandler";
 
     private final HiveConf hiveConf;
     private final String clientClassName;
diff --git a/flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/HiveCatalogFactory.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/HiveCatalogFactory.java
rename to paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
index 6e9492495..0db2c2bf6 100644
--- a/flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/HiveCatalogFactory.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.catalog.Catalog;
diff --git a/flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/HiveCatalogLock.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
similarity index 99%
rename from flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/HiveCatalogLock.java
rename to paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
index c76d9b489..c8bc909af 100644
--- a/flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/HiveCatalogLock.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.file.catalog.CatalogLock;
 import org.apache.flink.table.store.utils.TimeUtils;
diff --git a/flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/SerializableHiveConf.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/SerializableHiveConf.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/SerializableHiveConf.java
rename to paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/SerializableHiveConf.java
index b07bef5b6..9ee9a4010 100644
--- a/flink-table-store-hive/flink-table-store-hive-catalog/src/main/java/org/apache/flink/table/store/hive/SerializableHiveConf.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/SerializableHiveConf.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.io.DataInputDeserializer;
 import org.apache.flink.table.store.io.DataOutputSerializer;
diff --git a/flink-table-store-hive/flink-table-store-hive-catalog/src/main/resources-filtered/META-INF/NOTICE b/paimon-hive/paimon-hive-catalog/src/main/resources-filtered/META-INF/NOTICE
similarity index 100%
rename from flink-table-store-hive/flink-table-store-hive-catalog/src/main/resources-filtered/META-INF/NOTICE
rename to paimon-hive/paimon-hive-catalog/src/main/resources-filtered/META-INF/NOTICE
diff --git a/flink-table-store-hive/flink-table-store-hive-catalog/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory b/paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory
similarity index 93%
rename from flink-table-store-hive/flink-table-store-hive-catalog/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory
rename to paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory
index e9404fcd6..dcc7e6554 100644
--- a/flink-table-store-hive/flink-table-store-hive-catalog/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory
+++ b/paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory
@@ -13,4 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.flink.table.store.hive.HiveCatalogFactory
+org.apache.paimon.hive.HiveCatalogFactory
diff --git a/flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/AlterFailHiveMetaStoreClient.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/AlterFailHiveMetaStoreClient.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/AlterFailHiveMetaStoreClient.java
rename to paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/AlterFailHiveMetaStoreClient.java
index aac3d4295..6f77c0cf8 100644
--- a/flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/AlterFailHiveMetaStoreClient.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/AlterFailHiveMetaStoreClient.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.HiveMetaHookLoader;
diff --git a/flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/CreateFailHiveMetaStoreClient.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/CreateFailHiveMetaStoreClient.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/CreateFailHiveMetaStoreClient.java
rename to paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/CreateFailHiveMetaStoreClient.java
index 3bae66a49..71afbdc0c 100644
--- a/flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/CreateFailHiveMetaStoreClient.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/CreateFailHiveMetaStoreClient.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.HiveMetaHookLoader;
diff --git a/flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/CustomHiveMetastoreClientITCase.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/CustomHiveMetastoreClientITCase.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/CustomHiveMetastoreClientITCase.java
rename to paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/CustomHiveMetastoreClientITCase.java
index d979bbdf0..2970f8343 100644
--- a/flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/CustomHiveMetastoreClientITCase.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/CustomHiveMetastoreClientITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.flink.connectors.hive.FlinkEmbeddedHiveRunner;
 import org.apache.flink.table.api.EnvironmentSettings;
diff --git a/flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/HiveCatalogITCase.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
similarity index 99%
rename from flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/HiveCatalogITCase.java
rename to paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
index fed4d3d31..ae72249b6 100644
--- a/flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/HiveCatalogITCase.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.flink.connectors.hive.FlinkEmbeddedHiveRunner;
 import org.apache.flink.core.fs.Path;
diff --git a/flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/TestHiveMetaStoreClient.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/TestHiveMetaStoreClient.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/TestHiveMetaStoreClient.java
rename to paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/TestHiveMetaStoreClient.java
index a8e5d316b..9312d6d59 100644
--- a/flink-table-store-hive/flink-table-store-hive-catalog/src/test/java/org/apache/flink/table/store/hive/TestHiveMetaStoreClient.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/TestHiveMetaStoreClient.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.HiveMetaHookLoader;
diff --git a/flink-table-store-hive/flink-table-store-hive-common/pom.xml b/paimon-hive/paimon-hive-common/pom.xml
similarity index 100%
rename from flink-table-store-hive/flink-table-store-hive-common/pom.xml
rename to paimon-hive/paimon-hive-common/pom.xml
diff --git a/flink-table-store-hive/flink-table-store-hive-common/src/main/java/org/apache/flink/table/store/hive/HiveTypeUtils.java b/paimon-hive/paimon-hive-common/src/main/java/org/apache/paimon/hive/HiveTypeUtils.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-common/src/main/java/org/apache/flink/table/store/hive/HiveTypeUtils.java
rename to paimon-hive/paimon-hive-common/src/main/java/org/apache/paimon/hive/HiveTypeUtils.java
index ccde87d98..b781eef5e 100644
--- a/flink-table-store-hive/flink-table-store-hive-common/src/main/java/org/apache/flink/table/store/hive/HiveTypeUtils.java
+++ b/paimon-hive/paimon-hive-common/src/main/java/org/apache/paimon/hive/HiveTypeUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.CharType;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-2.1-cdh-6.3/pom.xml b/paimon-hive/paimon-hive-connector-2.1-cdh-6.3/pom.xml
similarity index 100%
rename from flink-table-store-hive/flink-table-store-hive-connector-2.1-cdh-6.3/pom.xml
rename to paimon-hive/paimon-hive-connector-2.1-cdh-6.3/pom.xml
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-2.1/pom.xml b/paimon-hive/paimon-hive-connector-2.1/pom.xml
similarity index 100%
rename from flink-table-store-hive/flink-table-store-hive-connector-2.1/pom.xml
rename to paimon-hive/paimon-hive-connector-2.1/pom.xml
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-2.2/pom.xml b/paimon-hive/paimon-hive-connector-2.2/pom.xml
similarity index 100%
rename from flink-table-store-hive/flink-table-store-hive-connector-2.2/pom.xml
rename to paimon-hive/paimon-hive-connector-2.2/pom.xml
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-2.3/pom.xml b/paimon-hive/paimon-hive-connector-2.3/pom.xml
similarity index 100%
rename from flink-table-store-hive/flink-table-store-hive-connector-2.3/pom.xml
rename to paimon-hive/paimon-hive-connector-2.3/pom.xml
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-3.1/pom.xml b/paimon-hive/paimon-hive-connector-3.1/pom.xml
similarity index 100%
rename from flink-table-store-hive/flink-table-store-hive-connector-3.1/pom.xml
rename to paimon-hive/paimon-hive-connector-3.1/pom.xml
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-3.1/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDateObjectInspector.java b/paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspector.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-3.1/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDateObjectInspector.java
rename to paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspector.java
index b64fcba34..fe8cb82c7 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-3.1/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDateObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.hadoop.hive.common.type.Date;
 import org.apache.hadoop.hive.serde2.io.DateWritableV2;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-3.1/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreTimestampObjectInspector.java b/paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspector.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-3.1/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreTimestampObjectInspector.java
rename to paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspector.java
index 346497939..c2ed007d7 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-3.1/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreTimestampObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.hadoop.hive.common.type.Timestamp;
 import org.apache.hadoop.hive.serde2.io.TimestampWritableV2;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/pom.xml b/paimon-hive/paimon-hive-connector-common/pom.xml
similarity index 100%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/pom.xml
rename to paimon-hive/paimon-hive-connector-common/pom.xml
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/HiveSchema.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
similarity index 99%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/HiveSchema.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
index 25fcbe61f..fa29d0f04 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/HiveSchema.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/RowDataContainer.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/RowDataContainer.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/RowDataContainer.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/RowDataContainer.java
index 260673b4f..1ff65a3ea 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/RowDataContainer.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/RowDataContainer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store;
+package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.data.InternalRow;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/SearchArgumentToPredicateConverter.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/SearchArgumentToPredicateConverter.java
similarity index 99%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/SearchArgumentToPredicateConverter.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/SearchArgumentToPredicateConverter.java
index ce423d1bb..4449b299e 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/SearchArgumentToPredicateConverter.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/SearchArgumentToPredicateConverter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store;
+package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreHiveMetaHook.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java
similarity index 92%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreHiveMetaHook.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java
index f637aba0c..531b81e9c 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreHiveMetaHook.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.mapred.TableStoreInputFormat;
-import org.apache.flink.table.store.mapred.TableStoreOutputFormat;
 import org.apache.flink.table.store.utils.Preconditions;
 
 import org.apache.hadoop.hive.metastore.HiveMetaHook;
 import org.apache.hadoop.hive.metastore.api.MetaException;
 import org.apache.hadoop.hive.metastore.api.Table;
+import org.apache.paimon.hive.mapred.TableStoreInputFormat;
+import org.apache.paimon.hive.mapred.TableStoreOutputFormat;
 
 /**
  * {@link HiveMetaHook} for table store. Currently this class is only used to set input and output
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreHiveStorageHandler.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveStorageHandler.java
similarity index 94%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreHiveStorageHandler.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveStorageHandler.java
index fa725d806..2f95b90d6 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreHiveStorageHandler.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveStorageHandler.java
@@ -16,11 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
-
-import org.apache.flink.table.store.TableStoreJobConf;
-import org.apache.flink.table.store.mapred.TableStoreInputFormat;
-import org.apache.flink.table.store.mapred.TableStoreOutputFormat;
+package org.apache.paimon.hive;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.metastore.HiveMetaHook;
@@ -36,6 +32,8 @@ import org.apache.hadoop.hive.serde2.Deserializer;
 import org.apache.hadoop.mapred.InputFormat;
 import org.apache.hadoop.mapred.JobConf;
 import org.apache.hadoop.mapred.OutputFormat;
+import org.apache.paimon.hive.mapred.TableStoreInputFormat;
+import org.apache.paimon.hive.mapred.TableStoreOutputFormat;
 
 import java.util.Map;
 import java.util.Properties;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/TableStoreJobConf.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/TableStoreJobConf.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
index a7bc52988..57e5c2bcc 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/TableStoreJobConf.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store;
+package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
 import org.apache.flink.table.store.options.Options;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreSerDe.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreSerDe.java
similarity index 93%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreSerDe.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreSerDe.java
index 0b79c5c31..eba57de5b 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreSerDe.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreSerDe.java
@@ -16,10 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
-
-import org.apache.flink.table.store.RowDataContainer;
-import org.apache.flink.table.store.hive.objectinspector.TableStoreRowDataObjectInspector;
+package org.apache.paimon.hive;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.serde2.AbstractSerDe;
@@ -27,6 +24,7 @@ import org.apache.hadoop.hive.serde2.SerDeException;
 import org.apache.hadoop.hive.serde2.SerDeStats;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
 import org.apache.hadoop.io.Writable;
+import org.apache.paimon.hive.objectinspector.TableStoreRowDataObjectInspector;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreInputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
similarity index 95%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreInputFormat.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
index 2cef226dd..e27679636 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreInputFormat.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
@@ -16,12 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.mapred;
+package org.apache.paimon.hive.mapred;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.RowDataContainer;
-import org.apache.flink.table.store.SearchArgumentToPredicateConverter;
-import org.apache.flink.table.store.TableStoreJobConf;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.TableSchema;
@@ -39,6 +36,9 @@ import org.apache.hadoop.mapred.InputSplit;
 import org.apache.hadoop.mapred.JobConf;
 import org.apache.hadoop.mapred.RecordReader;
 import org.apache.hadoop.mapred.Reporter;
+import org.apache.paimon.hive.RowDataContainer;
+import org.apache.paimon.hive.SearchArgumentToPredicateConverter;
+import org.apache.paimon.hive.TableStoreJobConf;
 
 import java.io.IOException;
 import java.util.Arrays;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreInputSplit.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreInputSplit.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
index 020215967..f0bc33eb0 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreInputSplit.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.mapred;
+package org.apache.paimon.hive.mapred;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.io.DataInputDeserializer;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreOutputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreOutputFormat.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreOutputFormat.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreOutputFormat.java
index 3ed88ed39..79530e48b 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreOutputFormat.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreOutputFormat.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.mapred;
+package org.apache.paimon.hive.mapred;
 
 import org.apache.flink.table.store.data.InternalRow;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreRecordReader.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreRecordReader.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
index 66c76118d..f1667ba3b 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreRecordReader.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
@@ -16,9 +16,8 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.mapred;
+package org.apache.paimon.hive.mapred;
 
-import org.apache.flink.table.store.RowDataContainer;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
@@ -26,6 +25,7 @@ import org.apache.flink.table.store.table.source.ReadBuilder;
 import org.apache.flink.table.store.utils.ProjectedRow;
 
 import org.apache.hadoop.mapred.RecordReader;
+import org.apache.paimon.hive.RowDataContainer;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreCharObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreCharObjectInspector.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreCharObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreCharObjectInspector.java
index 25996831a..8575e915f 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreCharObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreCharObjectInspector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.BinaryString;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDateObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspector.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDateObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspector.java
index 2a5122fb6..5d1e7a45c 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDateObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.utils.DateTimeUtils;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDecimalObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDecimalObjectInspector.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDecimalObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDecimalObjectInspector.java
index ef393c347..10983fd4f 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDecimalObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDecimalObjectInspector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.Decimal;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreListObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreListObjectInspector.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreListObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreListObjectInspector.java
index 7cf2f1e60..14829f101 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreListObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreListObjectInspector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.InternalArray;
 import org.apache.flink.table.store.types.DataType;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreMapObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreMapObjectInspector.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreMapObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreMapObjectInspector.java
index bfc3262e5..1572f74dc 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreMapObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreMapObjectInspector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.InternalArray;
 import org.apache.flink.table.store.data.InternalMap;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreObjectInspectorFactory.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreObjectInspectorFactory.java
similarity index 96%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreObjectInspectorFactory.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreObjectInspectorFactory.java
index cc32abd3d..623cedb98 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreObjectInspectorFactory.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreObjectInspectorFactory.java
@@ -16,9 +16,8 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
-import org.apache.flink.table.store.hive.HiveTypeUtils;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.CharType;
 import org.apache.flink.table.store.types.DataType;
@@ -29,6 +28,7 @@ import org.apache.flink.table.store.types.VarCharType;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.primitive.PrimitiveObjectInspectorFactory;
 import org.apache.hadoop.hive.serde2.typeinfo.PrimitiveTypeInfo;
+import org.apache.paimon.hive.HiveTypeUtils;
 
 /** Factory to create {@link ObjectInspector}s according to the given {@link DataType}. */
 public class TableStoreObjectInspectorFactory {
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreRowDataObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreRowDataObjectInspector.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreRowDataObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreRowDataObjectInspector.java
index fa1708c59..c3e877a25 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreRowDataObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreRowDataObjectInspector.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.hive.HiveTypeUtils;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.utils.RowDataUtils;
 
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.StructField;
 import org.apache.hadoop.hive.serde2.objectinspector.StructObjectInspector;
+import org.apache.paimon.hive.HiveTypeUtils;
 
 import java.util.ArrayList;
 import java.util.HashMap;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreStringObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreStringObjectInspector.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreStringObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreStringObjectInspector.java
index c38522223..9c15153c1 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreStringObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreStringObjectInspector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.BinaryString;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreTimestampObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspector.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreTimestampObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspector.java
index 34c2745cb..42fd34dfd 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreTimestampObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.Timestamp;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreVarcharObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreVarcharObjectInspector.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreVarcharObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreVarcharObjectInspector.java
index f2524ceed..88127914f 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/objectinspector/TableStoreVarcharObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreVarcharObjectInspector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.BinaryString;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/FileStoreTestUtils.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
similarity index 96%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/FileStoreTestUtils.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
index f8ad7c6a5..a52b26d8a 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/FileStoreTestUtils.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
@@ -16,8 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store;
+package org.apache.paimon.hive;
 
+import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/HiveTableSchemaTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
similarity index 99%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/HiveTableSchemaTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
index 373c4c0ab..6315e9cec 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/HiveTableSchemaTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/RandomGenericRowDataGenerator.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/RandomGenericRowDataGenerator.java
similarity index 99%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/RandomGenericRowDataGenerator.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/RandomGenericRowDataGenerator.java
index 72c0d66f5..a7eab6590 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/RandomGenericRowDataGenerator.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/RandomGenericRowDataGenerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.Decimal;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/SearchArgumentToPredicateConverterTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
similarity index 99%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/SearchArgumentToPredicateConverterTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
index 3a6459348..aa289cf40 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/SearchArgumentToPredicateConverterTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store;
+package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.Decimal;
@@ -42,7 +42,7 @@ import java.util.List;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link SearchArgumentToPredicateConverter}. */
+/** Tests for {@link org.apache.paimon.hive.SearchArgumentToPredicateConverter}. */
 public class SearchArgumentToPredicateConverterTest {
 
     @Test
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/TableStoreHiveStorageHandlerITCase.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
similarity index 99%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/TableStoreHiveStorageHandlerITCase.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
index ac4835f60..556e722c4 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/TableStoreHiveStorageHandlerITCase.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
@@ -16,17 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
 import org.apache.flink.connectors.hive.FlinkEmbeddedHiveRunner;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.FileStoreTestUtils;
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.hive.objectinspector.TableStoreObjectInspectorFactory;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.sink.StreamTableCommit;
@@ -43,6 +41,7 @@ import org.apache.hadoop.hive.serde2.objectinspector.ListObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.MapObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.primitive.AbstractPrimitiveJavaObjectInspector;
+import org.apache.paimon.hive.objectinspector.TableStoreObjectInspectorFactory;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
@@ -64,7 +63,7 @@ import java.util.concurrent.ThreadLocalRandom;
 
 /**
  * IT cases for {@link TableStoreHiveStorageHandler} and {@link
- * org.apache.flink.table.store.mapred.TableStoreInputFormat}.
+ * org.apache.paimon.hive.mapred.TableStoreInputFormat}.
  */
 @RunWith(FlinkEmbeddedHiveRunner.class)
 public class TableStoreHiveStorageHandlerITCase {
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/TableStoreSerDeTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
similarity index 86%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/TableStoreSerDeTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
index be6a15ca3..cd194546d 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/TableStoreSerDeTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
@@ -16,18 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive;
+package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.RowDataContainer;
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.hive.objectinspector.TableStoreRowDataObjectInspector;
 
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.StructField;
+import org.apache.paimon.hive.objectinspector.TableStoreRowDataObjectInspector;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
@@ -36,10 +35,10 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Properties;
 
-import static org.apache.flink.table.store.hive.RandomGenericRowDataGenerator.FIELD_COMMENTS;
-import static org.apache.flink.table.store.hive.RandomGenericRowDataGenerator.FIELD_NAMES;
-import static org.apache.flink.table.store.hive.RandomGenericRowDataGenerator.ROW_TYPE;
-import static org.apache.flink.table.store.hive.RandomGenericRowDataGenerator.generate;
+import static org.apache.paimon.hive.RandomGenericRowDataGenerator.FIELD_COMMENTS;
+import static org.apache.paimon.hive.RandomGenericRowDataGenerator.FIELD_NAMES;
+import static org.apache.paimon.hive.RandomGenericRowDataGenerator.ROW_TYPE;
+import static org.apache.paimon.hive.RandomGenericRowDataGenerator.generate;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for {@link TableStoreSerDe}. */
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/mapred/TableStoreInputSplitTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/mapred/TableStoreInputSplitTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java
index bb911f0f7..bb1f8f475 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/mapred/TableStoreInputSplitTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.mapred;
+package org.apache.paimon.hive.mapred;
 
 import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.io.DataFileTestDataGenerator;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/mapred/TableStoreRecordReaderTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/mapred/TableStoreRecordReaderTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java
index 36cbbb51f..5591f3a09 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/mapred/TableStoreRecordReaderTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java
@@ -16,11 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.mapred;
+package org.apache.paimon.hive.mapred;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.FileStoreTestUtils;
-import org.apache.flink.table.store.RowDataContainer;
 import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.GenericRow;
@@ -35,6 +33,8 @@ import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.hive.FileStoreTestUtils;
+import org.apache.paimon.hive.RowDataContainer;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreCharObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreCharObjectInspectorTest.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreCharObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreCharObjectInspectorTest.java
index 4d6e80406..3a6ac755b 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreCharObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreCharObjectInspectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.BinaryString;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDateObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspectorTest.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDateObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspectorTest.java
index e83728ef5..1076a4410 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDateObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.hadoop.hive.serde2.io.DateWritable;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDecimalObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreDecimalObjectInspectorTest.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDecimalObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreDecimalObjectInspectorTest.java
index 07fc705a7..60a0b2e93 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreDecimalObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreDecimalObjectInspectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.Decimal;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreListObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreListObjectInspectorTest.java
similarity index 97%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreListObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreListObjectInspectorTest.java
index 23eeb018a..7d0adf992 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreListObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreListObjectInspectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.GenericArray;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreMapObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreMapObjectInspectorTest.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreMapObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreMapObjectInspectorTest.java
index 88d2159e8..980aefee9 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreMapObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreMapObjectInspectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.GenericMap;
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreRowDataObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreRowDataObjectInspectorTest.java
similarity index 91%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreRowDataObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreRowDataObjectInspectorTest.java
index 79fb3eea9..9fdc4ebde 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreRowDataObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreRowDataObjectInspectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.GenericRow;
 
@@ -27,11 +27,11 @@ import org.junit.jupiter.api.Test;
 import java.util.Arrays;
 import java.util.List;
 
-import static org.apache.flink.table.store.hive.RandomGenericRowDataGenerator.FIELD_COMMENTS;
-import static org.apache.flink.table.store.hive.RandomGenericRowDataGenerator.FIELD_NAMES;
-import static org.apache.flink.table.store.hive.RandomGenericRowDataGenerator.LOGICAL_TYPES;
-import static org.apache.flink.table.store.hive.RandomGenericRowDataGenerator.TYPE_NAMES;
-import static org.apache.flink.table.store.hive.RandomGenericRowDataGenerator.generate;
+import static org.apache.paimon.hive.RandomGenericRowDataGenerator.FIELD_COMMENTS;
+import static org.apache.paimon.hive.RandomGenericRowDataGenerator.FIELD_NAMES;
+import static org.apache.paimon.hive.RandomGenericRowDataGenerator.LOGICAL_TYPES;
+import static org.apache.paimon.hive.RandomGenericRowDataGenerator.TYPE_NAMES;
+import static org.apache.paimon.hive.RandomGenericRowDataGenerator.generate;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for {@link TableStoreRowDataObjectInspector}. */
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreStringObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreStringObjectInspectorTest.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreStringObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreStringObjectInspectorTest.java
index 03d805e67..7ebbb34d6 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreStringObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreStringObjectInspectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.BinaryString;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreTimestampObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspectorTest.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreTimestampObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspectorTest.java
index 5fe040135..13abc7d18 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreTimestampObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.Timestamp;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreVarcharObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreVarcharObjectInspectorTest.java
similarity index 98%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreVarcharObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreVarcharObjectInspectorTest.java
index 54fdd5d72..a2e11c9ac 100644
--- a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/java/org/apache/flink/table/store/hive/objectinspector/TableStoreVarcharObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreVarcharObjectInspectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.hive.objectinspector;
+package org.apache.paimon.hive.objectinspector;
 
 import org.apache.flink.table.store.data.BinaryString;
 
diff --git a/flink-table-store-hive/flink-table-store-hive-connector-common/src/test/resources/log4j2-test.properties b/paimon-hive/paimon-hive-connector-common/src/test/resources/log4j2-test.properties
similarity index 100%
rename from flink-table-store-hive/flink-table-store-hive-connector-common/src/test/resources/log4j2-test.properties
rename to paimon-hive/paimon-hive-connector-common/src/test/resources/log4j2-test.properties
diff --git a/flink-table-store-hive/pom.xml b/paimon-hive/pom.xml
similarity index 76%
rename from flink-table-store-hive/pom.xml
rename to paimon-hive/pom.xml
index d886a50d6..c39f101d6 100644
--- a/flink-table-store-hive/pom.xml
+++ b/paimon-hive/pom.xml
@@ -34,14 +34,14 @@ under the License.
     <packaging>pom</packaging>
 
     <modules>
-        <module>flink-table-store-hive-catalog</module>
-        <module>flink-table-store-hive-common</module>
-        <module>flink-table-store-hive-connector-common</module>
-        <module>flink-table-store-hive-connector-2.1</module>
-        <module>flink-table-store-hive-connector-2.1-cdh-6.3</module>
-        <module>flink-table-store-hive-connector-2.2</module>
-        <module>flink-table-store-hive-connector-2.3</module>
-        <module>flink-table-store-hive-connector-3.1</module>
+        <module>paimon-hive-catalog</module>
+        <module>paimon-hive-common</module>
+        <module>paimon-hive-connector-common</module>
+        <module>paimon-hive-connector-2.1</module>
+        <module>paimon-hive-connector-2.1-cdh-6.3</module>
+        <module>paimon-hive-connector-2.2</module>
+        <module>paimon-hive-connector-2.3</module>
+        <module>paimon-hive-connector-3.1</module>
     </modules>
 
     <properties>
diff --git a/pom.xml b/pom.xml
index fc0915605..156f4798a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -63,7 +63,7 @@ under the License.
         <module>flink-table-store-filesystems</module>
         <module>flink-table-store-format</module>
         <module>flink-table-store-shade</module>
-        <module>flink-table-store-hive</module>
+        <module>paimon-hive</module>
         <module>paimon-spark</module>
         <module>paimon-test-utils</module>
     </modules>


[incubator-paimon] 20/32: [core] Rename paimon to compile works

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 34c378a00d6563822b905bdb5b6d944e1e29d3b6
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 15:20:12 2023 +0800

    [core] Rename paimon to compile works
---
 .../org/apache/paimon/codegen/CodeGenLoader.java   |  0
 ...tor => org.apache.paimon.codegen.CodeGenerator} |  2 +-
 .../apache/paimon/codegen/CodeGenException.scala   |  0
 .../paimon/codegen/CodeGeneratorContext.scala      |  1 -
 .../paimon/codegen/ComparatorCodeGenerator.scala   | 19 +++++++-------
 .../apache/paimon/codegen/ExprCodeGenerator.scala  |  2 +-
 .../org/apache/paimon/codegen/GenerateUtils.scala  |  0
 .../paimon/codegen/GeneratedExpression.scala       |  0
 .../paimon/codegen/ProjectionCodeGenerator.scala   |  6 ++---
 .../apache/paimon/codegen/SortCodeGenerator.scala  |  4 +--
 .../AddBooleanBeforeReturnRewriterTest.java        |  0
 .../codegen/codesplit/CodeRewriterTestBase.java    |  0
 .../org/apache/paimon/codegen/CodeGenUtils.java    |  0
 .../file/mergetree/SortBufferWriteBuffer.java      |  7 +++--
 .../paimon/file/sort/BinaryExternalMerger.java     |  3 +--
 .../paimon/file/sort/BinaryExternalSortBuffer.java |  3 +--
 .../paimon/file/sort/BinaryInMemorySortBuffer.java |  5 ++--
 .../paimon/file/sort/BinaryIndexedSortable.java    |  5 ++--
 .../paimon/file/utils/KeyComparatorSupplier.java   |  7 +++--
 .../apache/paimon/table/sink/BucketComputer.java   |  5 ++--
 .../paimon/table/sink/PartitionComputer.java       |  5 ++--
 .../paimon/table/sink/SinkRecordConverter.java     |  5 ++--
 .../source/snapshot/SnapshotSplitReaderImpl.java   |  5 ++--
 ... org.apache.paimon.file.catalog.CatalogFactory} |  0
 .../apache/paimon/file/TestKeyValueGenerator.java  |  3 +--
 .../mergetree/SortBufferWriteBufferTestBase.java   |  3 +--
 .../compact/CombiningRecordReaderTestBase.java     |  3 +--
 .../mergetree/compact/IntervalPartitionTest.java   |  3 +--
 .../paimon/file/sort/IntNormalizedKeyComputer.java |  3 +--
 .../paimon/file/sort/IntRecordComparator.java      |  3 +--
 paimon-filesystems/paimon-hadoop-shaded/pom.xml    | 10 ++++----
 .../apache/paimon/oss/HadoopCompliantFileIO.java   | 11 ++++----
 .../main/java/org/apache/paimon/oss/OSSFileIO.java |  2 +-
 .../main/java/org/apache/paimon/oss/OSSLoader.java |  8 +++---
 .../apache/paimon/s3/HadoopCompliantFileIO.java    | 11 ++++----
 .../main/java/org/apache/paimon/s3/S3FileIO.java   |  2 +-
 .../main/java/org/apache/paimon/s3/S3Loader.java   |  8 +++---
 .../apache/paimon/connector/CatalogITCaseBase.java |  4 +--
 .../connector/ContinuousFileStoreITCase.java       |  2 +-
 .../apache/paimon/connector/CatalogITCaseBase.java |  4 +--
 .../connector/ContinuousFileStoreITCase.java       |  2 +-
 .../org/apache/paimon/connector/FlinkFileIO.java   | 11 ++++----
 .../apache/paimon/connector/FlinkFileIOLoader.java |  6 ++---
 .../connector/TableStoreConnectorFactory.java      |  4 +--
 .../connector/sink/CommittableStateManager.java    |  5 ++--
 .../apache/paimon/connector/sink/Committer.java    |  2 +-
 .../paimon/connector/sink/CommitterOperator.java   |  3 ++-
 .../paimon/connector/sink/CompactorSink.java       |  2 +-
 .../connector/sink/CompactorSinkBuilder.java       |  2 +-
 .../paimon/connector/sink/FileStoreSink.java       |  4 +--
 .../paimon/connector/sink/FlinkSinkBuilder.java    |  2 +-
 .../sink/FullChangelogStoreSinkWrite.java          |  4 +--
 .../sink/NoopCommittableStateManager.java          |  3 ++-
 .../sink/OffsetRowDataHashStreamPartitioner.java   |  2 +-
 .../RestoreAndFailCommittableStateManager.java     |  5 ++--
 .../paimon/connector/sink/StoreCommitter.java      |  3 +--
 .../connector/sink/StoreCompactOperator.java       |  6 ++---
 .../paimon/connector/sink/StoreSinkWrite.java      |  2 +-
 .../paimon/connector/sink/StoreSinkWriteImpl.java  |  4 +--
 .../paimon/connector/sink/TableStoreSink.java      |  4 +--
 .../connector/source/LogHybridSourceFactory.java   |  2 +-
 .../connector/source/StaticFileStoreSource.java    |  4 +--
 .../source/StaticFileStoreSplitEnumerator.java     |  3 ++-
 .../paimon/connector/AppendOnlyTableITCase.java    |  2 +-
 .../connector/BinaryRowTypeSerializerTest.java     |  2 +-
 .../apache/paimon/connector/CatalogITCaseBase.java | 10 ++++----
 .../paimon/connector/CatalogTableITCase.java       |  8 +++---
 .../apache/paimon/connector/ChangelogModeTest.java |  8 +++---
 .../ChangelogWithKeyFileStoreTableITCase.java      |  4 +--
 ...AndMultiPartitionedTableWIthKafkaLogITCase.java |  2 +-
 .../connector/ContinuousFileStoreITCase.java       |  8 +++---
 .../apache/paimon/connector/FileStoreITCase.java   | 14 +++++-----
 .../paimon/connector/FileSystemCatalogITCase.java  | 10 ++++----
 .../apache/paimon/connector/FlinkCatalogTest.java  |  4 +--
 .../paimon/connector/ForceCompactionITCase.java    | 13 +++++-----
 .../connector/FullCompactionFileStoreITCase.java   |  2 +-
 .../apache/paimon/connector/LogSystemITCase.java   |  2 +-
 .../connector/LookupChangelogWithAggITCase.java    |  2 +-
 .../apache/paimon/connector/LookupJoinITCase.java  |  2 +-
 .../paimon/connector/ReadWriteTableITCase.java     |  8 +++---
 .../paimon/connector/RescaleBucketITCase.java      | 10 ++++----
 .../StreamingReadWriteTableWithKafkaLogITCase.java |  2 +-
 .../paimon/connector/StreamingWarehouseITCase.java |  2 +-
 .../paimon/connector/action/ActionITCaseBase.java  | 12 ++++-----
 .../connector/action/CompactActionITCase.java      |  2 +-
 .../connector/action/DeleteActionITCase.java       |  4 +--
 .../action/DropPartitionActionITCase.java          |  3 +--
 .../connector/action/MergeIntoActionITCase.java    |  2 +-
 .../paimon/connector/kafka/KafkaLogTestUtils.java  |  2 +-
 .../connector/sink/CommittableSerializerTest.java  | 11 ++++----
 .../connector/sink/CommitterOperatorTest.java      |  6 ++---
 .../connector/sink/CommitterOperatorTestBase.java  |  9 +++----
 .../paimon/connector/sink/CompactorSinkITCase.java | 14 +++++-----
 .../connector/sink/FileStoreShuffleBucketTest.java |  4 +--
 .../paimon/connector/sink/SinkSavepointITCase.java |  2 +-
 .../connector/source/CompactorSourceITCase.java    | 12 ++++-----
 .../source/ContinuousFileSplitEnumeratorTest.java  |  4 +--
 .../source/FileStoreSourceReaderTest.java          | 10 ++++----
 .../source/FileStoreSourceSplitGeneratorTest.java  | 13 +++++-----
 .../source/FileStoreSourceSplitReaderTest.java     | 16 ++++++------
 .../source/FileStoreSourceSplitSerializerTest.java |  6 ++---
 .../source/FileStoreSourceSplitStateTest.java      |  2 +-
 .../PendingSplitsCheckpointSerializerTest.java     |  2 +-
 .../source/TestChangelogDataReadWrite.java         | 30 +++++++++++-----------
 .../connector/util/ReadWriteTableTestUtil.java     |  2 +-
 .../paimon/format/avro/AbstractAvroBulkFormat.java |  5 ++--
 .../apache/paimon/format/avro/AvroFileFormat.java  |  3 +--
 .../paimon/format/avro/AvroWriterFactory.java      |  3 +--
 .../format/avro/SeekableInputStreamWrapper.java    |  3 +--
 .../paimon/format/fs/HadoopReadOnlyFileSystem.java | 19 +++++++-------
 .../apache/paimon/format/orc/OrcReaderFactory.java |  9 +++----
 .../apache/paimon/format/orc/OrcWriterFactory.java |  3 +--
 .../format/orc/filter/OrcFileStatsExtractor.java   |  5 ++--
 .../format/orc/writer/PhysicalWriterImpl.java      |  3 +--
 .../format/parquet/ParquetFileStatsExtractor.java  |  5 ++--
 .../paimon/format/parquet/ParquetInputFile.java    |  7 +++--
 .../paimon/format/parquet/ParquetInputStream.java  |  3 +--
 .../format/parquet/ParquetReaderFactory.java       |  5 ++--
 .../apache/paimon/format/parquet/ParquetUtil.java  |  5 ++--
 .../format/parquet/ParquetWriterFactory.java       |  3 +--
 .../writer/PositionOutputStreamAdapter.java        |  4 +--
 .../format/parquet/writer/StreamOutputFile.java    |  4 +--
 .../apache/paimon/format/BulkFileFormatTest.java   |  7 +++--
 .../paimon/format/avro/AvroBulkFormatTest.java     |  5 ++--
 .../paimon/format/orc/OrcReaderFactoryTest.java    |  5 ++--
 .../paimon/format/orc/OrcWriterFactoryTest.java    |  3 +--
 .../format/parquet/ParquetReadWriteTest.java       |  5 ++--
 .../java/org/apache/paimon/hive/HiveCatalog.java   | 21 ++++++++-------
 .../org/apache/paimon/hive/HiveCatalogFactory.java |  8 +++---
 .../org/apache/paimon/hive/HiveCatalogLock.java    |  3 +--
 ... org.apache.paimon.file.catalog.CatalogFactory} |  0
 .../org/apache/paimon/hive/HiveCatalogITCase.java  | 22 ++++++++--------
 .../java/org/apache/paimon/hive/HiveSchema.java    |  4 +--
 .../org/apache/paimon/hive/TableStoreJobConf.java  |  3 +--
 .../paimon/hive/mapred/TableStoreInputFormat.java  |  2 +-
 .../paimon/hive/mapred/TableStoreInputSplit.java   |  3 +--
 .../paimon/hive/mapred/TableStoreRecordReader.java |  3 +--
 .../org/apache/paimon/hive/FileStoreTestUtils.java | 11 ++++----
 .../apache/paimon/hive/HiveTableSchemaTest.java    |  9 +++----
 .../hive/TableStoreHiveStorageHandlerITCase.java   |  2 +-
 .../apache/paimon/hive/TableStoreSerDeTest.java    |  9 +++----
 .../hive/mapred/TableStoreInputSplitTest.java      |  3 +--
 .../apache/paimon/spark/SimpleTableTestHelper.java |  9 +++----
 .../org/apache/paimon/spark/SparkReadITCase.java   |  3 +--
 .../java/org/apache/paimon/spark/SparkCatalog.java | 15 +++++------
 .../java/org/apache/paimon/spark/SparkSource.java  |  2 +-
 .../java/org/apache/paimon/spark/SparkTable.java   |  3 +--
 .../java/org/apache/paimon/spark/SparkWrite.java   |  3 +--
 .../org/apache/paimon/spark/SparkWriteBuilder.java |  3 +--
 .../apache/paimon/spark/MinioTestContainer.java    |  3 +--
 .../org/apache/paimon/spark/SparkReadITCase.java   |  7 +++--
 .../org/apache/paimon/spark/SparkReadTestBase.java |  7 +++--
 .../org/apache/paimon/spark/SparkS3ITCase.java     |  7 +++--
 .../org/apache/paimon/spark/SparkWriteITCase.java  |  3 +--
 154 files changed, 376 insertions(+), 438 deletions(-)

diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java b/paimon-codegen-loader/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
rename to paimon-codegen-loader/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
diff --git a/paimon-codegen/src/main/resources/META-INF/services/org.apache.flink.table.store.codegen.CodeGenerator b/paimon-codegen/src/main/resources/META-INF/services/org.apache.paimon.codegen.CodeGenerator
similarity index 93%
rename from paimon-codegen/src/main/resources/META-INF/services/org.apache.flink.table.store.codegen.CodeGenerator
rename to paimon-codegen/src/main/resources/META-INF/services/org.apache.paimon.codegen.CodeGenerator
index b3f6720a8..280ed4ba5 100644
--- a/paimon-codegen/src/main/resources/META-INF/services/org.apache.flink.table.store.codegen.CodeGenerator
+++ b/paimon-codegen/src/main/resources/META-INF/services/org.apache.paimon.codegen.CodeGenerator
@@ -13,4 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.flink.table.store.codegen.CodeGeneratorImpl
\ No newline at end of file
+org.apache.paimon.codegen.CodeGeneratorImpl
\ No newline at end of file
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenException.scala b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/CodeGenException.scala
similarity index 100%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenException.scala
rename to paimon-codegen/src/main/scala/org/apache/paimon/codegen/CodeGenException.scala
diff --git a/paimon-codegen/src/main/scala/org/apache/paimon/codegen/CodeGeneratorContext.scala b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/CodeGeneratorContext.scala
index f817ea4e4..28359a5dd 100644
--- a/paimon-codegen/src/main/scala/org/apache/paimon/codegen/CodeGeneratorContext.scala
+++ b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/CodeGeneratorContext.scala
@@ -15,7 +15,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.paimon.codegen
 
 import org.apache.paimon.codegen.GenerateUtils.{newName, newNames}
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
similarity index 83%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
rename to paimon-codegen/src/main/scala/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
index 25b4c7e4e..b02875f70 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
+++ b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
@@ -15,10 +15,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.paimon.codegen
 
-import org.apache.paimon.codegen.GenerateUtils.{ROW_DATA, newName}
+import org.apache.paimon.codegen.GenerateUtils.{newName, ROW_DATA}
 import org.apache.paimon.types.RowType
 
 /** A code generator for generating [[RecordComparator]]. */
@@ -28,19 +27,19 @@ object ComparatorCodeGenerator {
    * Generates a [[RecordComparator]] that can be passed to a Java compiler.
    *
    * @param name
-   * Class name of the function. Does not need to be unique but has to be a valid Java class
-   * identifier.
+   *   Class name of the function. Does not need to be unique but has to be a valid Java class
+   *   identifier.
    * @param inputType
-   * input type.
+   *   input type.
    * @param sortSpec
-   * sort specification.
+   *   sort specification.
    * @return
-   * A GeneratedRecordComparator
+   *   A GeneratedRecordComparator
    */
   def gen(
-           name: String,
-           inputType: RowType,
-           sortSpec: SortSpec): GeneratedClass[RecordComparator] = {
+      name: String,
+      inputType: RowType,
+      sortSpec: SortSpec): GeneratedClass[RecordComparator] = {
     val className = newName(name)
     val baseClass = classOf[RecordComparator]
 
diff --git a/paimon-codegen/src/main/scala/org/apache/paimon/codegen/ExprCodeGenerator.scala b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/ExprCodeGenerator.scala
index 28d48d23a..5c2d50719 100644
--- a/paimon-codegen/src/main/scala/org/apache/paimon/codegen/ExprCodeGenerator.scala
+++ b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/ExprCodeGenerator.scala
@@ -17,8 +17,8 @@
  */
 package org.apache.paimon.codegen
 
-import org.apache.paimon.codegen.GenerateUtils.{DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM, generateRecordStatement, rowSetField}
 import org.apache.paimon.codegen.GeneratedExpression.{NEVER_NULL, NO_CODE}
+import org.apache.paimon.codegen.GenerateUtils.{generateRecordStatement, rowSetField, DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM}
 import org.apache.paimon.data.{BinaryRow, InternalRow}
 import org.apache.paimon.types.{RowType, TimestampType}
 import org.apache.paimon.utils.TypeUtils.isInteroperable
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/GenerateUtils.scala
similarity index 100%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
rename to paimon-codegen/src/main/scala/org/apache/paimon/codegen/GenerateUtils.scala
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedExpression.scala b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/GeneratedExpression.scala
similarity index 100%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedExpression.scala
rename to paimon-codegen/src/main/scala/org/apache/paimon/codegen/GeneratedExpression.scala
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
similarity index 95%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
rename to paimon-codegen/src/main/scala/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
index 752fb81f5..298068695 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
+++ b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
@@ -17,12 +17,11 @@
  */
 package org.apache.paimon.codegen
 
-import org.apache.paimon.codegen.GenerateUtils.{generateRecordStatement, newName, DEFAULT_INPUT1_TERM, DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM, ROW_DATA}
+import org.apache.paimon.codegen.GeneratedExpression.{NEVER_NULL, NO_CODE}
+import org.apache.paimon.codegen.GenerateUtils._
 import org.apache.paimon.data.{BinaryRow, InternalRow}
 import org.apache.paimon.types.RowType
 
-import GeneratedExpression.{NEVER_NULL, NO_CODE}
-
 /**
  * CodeGenerator for projection, Take out some fields of [[InternalRow]] to generate a new
  * [[InternalRow]].
@@ -70,6 +69,7 @@ object ProjectionCodeGenerator {
 
   /**
    * CodeGenerator for projection.
+   *
    * @param reusedOutRecord
    *   If objects or variables can be reused, they will be added a reusable output record to the
    *   member area of the generated class. If not they will be as temp variables.
diff --git a/paimon-codegen/src/main/scala/org/apache/paimon/codegen/SortCodeGenerator.scala b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/SortCodeGenerator.scala
index f51f833e7..30d3639ea 100644
--- a/paimon-codegen/src/main/scala/org/apache/paimon/codegen/SortCodeGenerator.scala
+++ b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/SortCodeGenerator.scala
@@ -17,10 +17,10 @@
  */
 package org.apache.paimon.codegen
 
-import org.apache.paimon.codegen.GenerateUtils.{ROW_DATA, SEGMENT, newName}
+import org.apache.paimon.codegen.GenerateUtils.{newName, ROW_DATA, SEGMENT}
 import org.apache.paimon.data.{BinaryRow, Decimal, Timestamp}
-import org.apache.paimon.types.DataTypeRoot._
 import org.apache.paimon.types.{DataType, DecimalType, RowType, TimestampType}
+import org.apache.paimon.types.DataTypeRoot._
 import org.apache.paimon.utils.{SortUtil, TypeUtils}
 
 import scala.collection.mutable
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
rename to paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java
rename to paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java b/paimon-core/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
index cb29d70ae..50ef869b6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.codegen.CodeGenUtils;
-import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
-import org.apache.flink.table.store.codegen.RecordComparator;
-
 import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.codegen.CodeGenUtils;
+import org.apache.paimon.codegen.NormalizedKeyComputer;
+import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
index f5493d048..2fef1950f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.file.sort;
 
-import org.apache.flink.table.store.codegen.RecordComparator;
-
+import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
index e33daba33..70a6b7c70 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.sort;
 
-import org.apache.flink.table.store.codegen.RecordComparator;
-
 import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
index 862685e4f..401459de4 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.sort;
 
-import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
-import org.apache.flink.table.store.codegen.RecordComparator;
-
+import org.apache.paimon.codegen.NormalizedKeyComputer;
+import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.SimpleCollectingOutputView;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
index 963b14f57..97d871677 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.sort;
 
-import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
-import org.apache.flink.table.store.codegen.RecordComparator;
-
+import org.apache.paimon.codegen.NormalizedKeyComputer;
+import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
index 6bd1ee74e..aa4ddfdbb 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.file.utils;
 
-import org.apache.flink.table.store.codegen.CodeGenUtils;
-import org.apache.flink.table.store.codegen.GeneratedClass;
-import org.apache.flink.table.store.codegen.RecordComparator;
-
+import org.apache.paimon.codegen.CodeGenUtils;
+import org.apache.paimon.codegen.GeneratedClass;
+import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.types.RowType;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
index 1e358f410..658569d3a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.codegen.CodeGenUtils;
-import org.apache.flink.table.store.codegen.Projection;
-
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.codegen.CodeGenUtils;
+import org.apache.paimon.codegen.Projection;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.schema.TableSchema;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
index 634a42e68..d7194ae52 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.codegen.CodeGenUtils;
-import org.apache.flink.table.store.codegen.Projection;
-
+import org.apache.paimon.codegen.CodeGenUtils;
+import org.apache.paimon.codegen.Projection;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.schema.TableSchema;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
index e4c0c4760..7926f44e7 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.codegen.CodeGenUtils;
-import org.apache.flink.table.store.codegen.Projection;
-
+import org.apache.paimon.codegen.CodeGenUtils;
+import org.apache.paimon.codegen.Projection;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.schema.TableSchema;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
index 0f507c305..bb700a852 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.codegen.CodeGenUtils;
-import org.apache.flink.table.store.codegen.RecordComparator;
-
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.codegen.CodeGenUtils;
+import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.io.DataFileMeta;
diff --git a/paimon-core/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.file.catalog.CatalogFactory b/paimon-core/src/main/resources/META-INF/services/org.apache.paimon.file.catalog.CatalogFactory
similarity index 100%
rename from paimon-core/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.file.catalog.CatalogFactory
rename to paimon-core/src/main/resources/META-INF/services/org.apache.paimon.file.catalog.CatalogFactory
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java b/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
index 7f71c0239..2c3c1a4c6 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.file;
 
-import org.apache.flink.table.store.codegen.RecordComparator;
-
+import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericArray;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
index 25fcd5346..ff107edb1 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.codegen.RecordComparator;
-
+import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.memory.HeapMemorySegmentPool;
 import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
index ff1ac6cc8..a6fb19231 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.codegen.RecordComparator;
-
+import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.file.utils.TestReusingRecordReader;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
index 7630c58fa..59a6462d0 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.flink.table.store.codegen.RecordComparator;
-
+import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.Timestamp;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java b/paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
index 5852fcb00..406f9f545 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.file.sort;
 
-import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
-
+import org.apache.paimon.codegen.NormalizedKeyComputer;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.utils.SortUtil;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java b/paimon-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java
index 8fd8e34ba..91d8fcbb2 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.file.sort;
 
-import org.apache.flink.table.store.codegen.RecordComparator;
-
+import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.InternalRow;
 
 /** Example Int {@link RecordComparator}. */
diff --git a/paimon-filesystems/paimon-hadoop-shaded/pom.xml b/paimon-filesystems/paimon-hadoop-shaded/pom.xml
index d38dc3802..522f28044 100644
--- a/paimon-filesystems/paimon-hadoop-shaded/pom.xml
+++ b/paimon-filesystems/paimon-hadoop-shaded/pom.xml
@@ -229,23 +229,23 @@
                                 <!-- we shade only the parts that are internal to Hadoop and not used / exposed downstream -->
                                 <relocation>
                                     <pattern>com.google.re2j</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.fs.shaded.hadoop3.com.google.re2j</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.fs.shaded.hadoop3.com.google.re2j</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>org.apache.htrace</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.fs.shaded.hadoop3.org.apache.htrace</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.fs.shaded.hadoop3.org.apache.htrace</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>com.fasterxml</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.fs.shaded.hadoop3.com.fasterxml</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.fs.shaded.hadoop3.com.fasterxml</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>org.codehaus</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.fs.shaded.hadoop3.org.codehaus</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.fs.shaded.hadoop3.org.codehaus</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>com.ctc</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.fs.shaded.hadoop3.com.ctc</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.fs.shaded.hadoop3.com.ctc</shadedPattern>
                                 </relocation>
                             </relocations>
                             <filters>
diff --git a/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/HadoopCompliantFileIO.java b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/HadoopCompliantFileIO.java
index c978abc00..f454a50d4 100644
--- a/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/HadoopCompliantFileIO.java
+++ b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/HadoopCompliantFileIO.java
@@ -18,15 +18,14 @@
 
 package org.apache.paimon.oss;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileStatus;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PositionOutputStream;
-import org.apache.flink.table.store.fs.SeekableInputStream;
-
 import org.apache.hadoop.fs.FSDataInputStream;
 import org.apache.hadoop.fs.FSDataOutputStream;
 import org.apache.hadoop.fs.FileSystem;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
+import org.apache.paimon.fs.SeekableInputStream;
 
 import java.io.IOException;
 
diff --git a/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
index d81003286..1d62acab3 100644
--- a/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
+++ b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.oss;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.fs.FileIO;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.aliyun.oss.AliyunOSSFileSystem;
+import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.options.Options;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java b/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
index 47f5ffe81..c7353a739 100644
--- a/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
+++ b/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.oss;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileIOLoader;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PluginFileIO;
 
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileIOLoader;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PluginFileIO;
 import org.apache.paimon.plugin.PluginLoader;
 
 /** A {@link PluginLoader} to load oss. */
diff --git a/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/HadoopCompliantFileIO.java b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/HadoopCompliantFileIO.java
index 9d44a22ce..c2af2c80d 100644
--- a/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/HadoopCompliantFileIO.java
+++ b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/HadoopCompliantFileIO.java
@@ -18,15 +18,14 @@
 
 package org.apache.paimon.s3;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileStatus;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PositionOutputStream;
-import org.apache.flink.table.store.fs.SeekableInputStream;
-
 import org.apache.hadoop.fs.FSDataInputStream;
 import org.apache.hadoop.fs.FSDataOutputStream;
 import org.apache.hadoop.fs.FileSystem;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
+import org.apache.paimon.fs.SeekableInputStream;
 
 import java.io.IOException;
 
diff --git a/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
index 89c9b4e23..82bdd54b4 100644
--- a/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
+++ b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.s3;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.fs.FileIO;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.s3a.S3AFileSystem;
+import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.options.Options;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java b/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
index f65030d7c..56b053e33 100644
--- a/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
+++ b/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.s3;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileIOLoader;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PluginFileIO;
 
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileIOLoader;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PluginFileIO;
 import org.apache.paimon.plugin.PluginLoader;
 
 /** A {@link PluginLoader} to load oss. */
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index 2f72d6882..3f6f8393e 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -30,8 +30,6 @@ import org.apache.flink.table.catalog.exceptions.TableNotExistException;
 import org.apache.flink.table.delegation.Parser;
 import org.apache.flink.table.operations.Operation;
 import org.apache.flink.table.operations.ddl.CreateCatalogOperation;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.test.util.AbstractTestBase;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
@@ -40,6 +38,8 @@ import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.junit.Before;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index 557e2aecc..f8221003f 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -18,7 +18,6 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.types.Row;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
@@ -26,6 +25,7 @@ import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.junit.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index 2f72d6882..3f6f8393e 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -30,8 +30,6 @@ import org.apache.flink.table.catalog.exceptions.TableNotExistException;
 import org.apache.flink.table.delegation.Parser;
 import org.apache.flink.table.operations.Operation;
 import org.apache.flink.table.operations.ddl.CreateCatalogOperation;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.test.util.AbstractTestBase;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
@@ -40,6 +38,8 @@ import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.junit.Before;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index 557e2aecc..f8221003f 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -18,7 +18,6 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.types.Row;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
@@ -26,6 +25,7 @@ import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.junit.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java
index 6e05cdca4..f3272fb50 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java
@@ -24,11 +24,12 @@ import org.apache.flink.core.fs.FileSystem;
 import org.apache.flink.core.fs.FileSystem.WriteMode;
 import org.apache.flink.core.fs.FileSystemKind;
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileStatus;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PositionOutputStream;
-import org.apache.flink.table.store.fs.SeekableInputStream;
+
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
+import org.apache.paimon.fs.SeekableInputStream;
 
 import java.io.IOException;
 import java.io.UncheckedIOException;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIOLoader.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIOLoader.java
index 5c2403209..7b3be5a23 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIOLoader.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIOLoader.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileIOLoader;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileIOLoader;
+import org.apache.paimon.fs.Path;
 
 /** Flink {@link FileIOLoader} for {@link FlinkFileIO}. */
 public class FlinkFileIOLoader implements FileIOLoader {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
index fd4ac4fd4..e50c89117 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
@@ -23,13 +23,13 @@ import org.apache.flink.table.connector.sink.DynamicTableSink;
 import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.factories.FactoryUtil;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.file.catalog.CatalogLock;
 import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java
index 0e945b371..f67ea7d9f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java
@@ -19,14 +19,15 @@ package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
+
+import org.apache.paimon.file.manifest.ManifestCommittable;
 
 import java.io.Serializable;
 import java.util.List;
 
 /**
  * Helper interface for {@link CommitterOperator}. This interface manages operator states about
- * {@link org.apache.flink.table.store.file.manifest.ManifestCommittable}.
+ * {@link org.apache.paimon.file.manifest.ManifestCommittable}.
  */
 public interface CommittableStateManager extends Serializable {
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java
index f6e8e30af..0629a79b2 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java
@@ -19,7 +19,7 @@
 
 package org.apache.paimon.connector.sink;
 
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
+import org.apache.paimon.file.manifest.ManifestCommittable;
 
 import java.io.IOException;
 import java.util.List;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java
index 16cf5ff7f..c64ffc8ae 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java
@@ -25,9 +25,10 @@ import org.apache.flink.streaming.api.operators.ChainingStrategy;
 import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.streaming.api.watermark.Watermark;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
 import org.apache.flink.util.function.SerializableFunction;
 
+import org.apache.paimon.file.manifest.ManifestCommittable;
+
 import java.util.ArrayDeque;
 import java.util.ArrayList;
 import java.util.Deque;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
index d57803257..af74fc56c 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
@@ -20,9 +20,9 @@ package org.apache.paimon.connector.sink;
 
 import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.flink.util.function.SerializableFunction;
 
+import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.table.FileStoreTable;
 
 /** {@link FlinkSink} for dedicated compact jobs. */
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
index 5d26f38e0..e02e9824b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
@@ -23,8 +23,8 @@ import org.apache.flink.streaming.api.datastream.DataStreamSink;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.streaming.api.transformations.PartitionTransformation;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.file.operation.Lock;
 
+import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.system.BucketsTable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
index 3de3de8c0..a9a481728 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
@@ -20,11 +20,11 @@ package org.apache.paimon.connector.sink;
 
 import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.file.manifest.ManifestCommittableSerializer;
-import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.flink.util.function.SerializableFunction;
 
 import org.apache.paimon.connector.VersionedSerializerWrapper;
+import org.apache.paimon.file.manifest.ManifestCommittableSerializer;
+import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.table.FileStoreTable;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
index 9b4fd3b5a..194b1c3bb 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
@@ -24,9 +24,9 @@ import org.apache.flink.streaming.api.datastream.DataStreamSink;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.streaming.api.transformations.PartitionTransformation;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.file.operation.Lock;
 
 import org.apache.paimon.connector.FlinkConnectorOptions;
+import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.table.FileStoreTable;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
index 9c72e60fe..e3cbe14c5 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
@@ -29,13 +29,13 @@ import org.apache.flink.api.java.typeutils.runtime.TupleSerializer;
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.BinaryRowTypeSerializer;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.SinkRecord;
 import org.slf4j.Logger;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java
index 865baeb3a..60661a4c0 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java
@@ -19,7 +19,8 @@ package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
+
+import org.apache.paimon.file.manifest.ManifestCommittable;
 
 import java.util.List;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
index 8088c471f..cd27e2d6d 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
@@ -23,10 +23,10 @@ import org.apache.flink.runtime.plugable.SerializationDelegate;
 import org.apache.flink.streaming.runtime.partitioner.StreamPartitioner;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.file.utils.OffsetRow;
 
 import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.file.utils.OffsetRow;
 import org.apache.paimon.types.RowType;
 
 /**
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
index 52d8b822d..13218affd 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
@@ -24,8 +24,9 @@ import org.apache.flink.core.io.SimpleVersionedSerializer;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
 import org.apache.flink.streaming.api.operators.util.SimpleVersionedListState;
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
-import org.apache.flink.table.store.file.utils.SerializableSupplier;
+
+import org.apache.paimon.file.manifest.ManifestCommittable;
+import org.apache.paimon.file.utils.SerializableSupplier;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
index e91a07174..a51a5b8f3 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.connector.sink;
 
-import org.apache.flink.table.store.file.manifest.ManifestCommittable;
-
+import org.apache.paimon.file.manifest.ManifestCommittable;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.TableCommit;
 import org.apache.paimon.table.sink.TableCommitImpl;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
index b66580db0..bbfea4376 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
@@ -21,14 +21,14 @@ package org.apache.paimon.connector.sink;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
-import org.apache.flink.table.store.file.utils.OffsetRow;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.io.DataFileMetaSerializer;
+import org.apache.paimon.file.utils.OffsetRow;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.utils.Preconditions;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
index de80f7df7..59a6f2185 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
@@ -21,10 +21,10 @@ package org.apache.paimon.connector.sink;
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
-import org.apache.flink.table.store.file.io.DataFileMeta;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.SinkRecord;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
index e3d630345..928d3596f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
@@ -21,11 +21,11 @@ package org.apache.paimon.connector.sink;
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
-import org.apache.flink.table.store.file.disk.IOManagerImpl;
-import org.apache.flink.table.store.file.io.DataFileMeta;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.disk.IOManagerImpl;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.SinkRecord;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
index d58b4974e..6739c45ae 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
@@ -25,8 +25,6 @@ import org.apache.flink.table.connector.sink.DynamicTableSink;
 import org.apache.flink.table.connector.sink.abilities.SupportsOverwrite;
 import org.apache.flink.table.connector.sink.abilities.SupportsPartitioning;
 import org.apache.flink.table.factories.DynamicTableFactory;
-import org.apache.flink.table.store.file.catalog.CatalogLock;
-import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.flink.types.RowKind;
 
 import org.apache.paimon.CoreOptions.ChangelogProducer;
@@ -37,6 +35,8 @@ import org.apache.paimon.connector.FlinkConnectorOptions;
 import org.apache.paimon.connector.TableStoreDataStreamSinkProvider;
 import org.apache.paimon.connector.log.LogSinkProvider;
 import org.apache.paimon.connector.log.LogStoreTableFactory;
+import org.apache.paimon.file.catalog.CatalogLock;
+import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.AppendOnlyFileStoreTable;
 import org.apache.paimon.table.ChangelogValueCountFileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java
index ce4373a32..5cd456fa7 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java
@@ -22,9 +22,9 @@ import org.apache.flink.api.connector.source.Source;
 import org.apache.flink.connector.base.source.hybrid.HybridSource;
 import org.apache.flink.connector.base.source.hybrid.HybridSource.SourceFactory;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.file.Snapshot;
 
 import org.apache.paimon.connector.log.LogSourceProvider;
+import org.apache.paimon.file.Snapshot;
 
 import java.util.Map;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
index 0ed79ba50..ffae6e192 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
@@ -21,10 +21,10 @@ package org.apache.paimon.connector.source;
 import org.apache.flink.api.connector.source.Boundedness;
 import org.apache.flink.api.connector.source.SplitEnumerator;
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
 
+import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.DataTable;
 import org.apache.paimon.table.source.BatchDataTableScan;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java
index 13b614b08..2895d18c9 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java
@@ -21,7 +21,8 @@ package org.apache.paimon.connector.source;
 import org.apache.flink.api.connector.source.SplitEnumerator;
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
 import org.apache.flink.api.connector.source.SplitsAssignment;
-import org.apache.flink.table.store.file.Snapshot;
+
+import org.apache.paimon.file.Snapshot;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java
index dd31de471..862e0e7cc 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java
@@ -19,10 +19,10 @@
 package org.apache.paimon.connector;
 
 import org.apache.flink.table.planner.factories.TestValuesTableFactory;
-import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.types.Row;
 import org.apache.flink.types.RowKind;
 
+import org.apache.paimon.file.Snapshot;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
index a45b3d748..4a00a3654 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
@@ -25,7 +25,7 @@ import org.apache.paimon.data.BinaryRow;
 
 import java.util.Random;
 
-import static org.apache.flink.table.store.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.file.io.DataFileTestUtils.row;
 
 /** Test for {@link BinaryRowTypeSerializer}. */
 public class BinaryRowTypeSerializerTest extends SerializerTestBase<BinaryRow> {
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index 1ac5218c1..fae356494 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -30,17 +30,17 @@ import org.apache.flink.table.catalog.exceptions.TableNotExistException;
 import org.apache.flink.table.delegation.Parser;
 import org.apache.flink.table.operations.Operation;
 import org.apache.flink.table.operations.ddl.CreateCatalogOperation;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.BlockingIterator;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
 import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.junit.jupiter.api.BeforeEach;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
index 7363fef98..4aea33928 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
@@ -18,13 +18,13 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.schema.SchemaChange;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.types.Row;
 
 import org.apache.commons.lang3.StringUtils;
+import org.apache.paimon.file.schema.SchemaChange;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.types.IntType;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
index b88b24342..73b5f8359 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
@@ -20,16 +20,16 @@ package org.apache.paimon.connector;
 
 import org.apache.flink.table.catalog.ObjectIdentifier;
 import org.apache.flink.table.connector.ChangelogMode;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.kafka.KafkaLogStoreFactory;
 import org.apache.paimon.connector.log.LogStoreTableFactory;
 import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.connector.source.TableStoreSource;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
index 5cb40a797..2aa70fadd 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
@@ -27,14 +27,14 @@ import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
 import org.apache.flink.table.api.TableResult;
 import org.apache.flink.table.api.config.ExecutionConfigOptions;
-import org.apache.flink.table.store.file.utils.FailingFileIO;
-import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.types.Row;
 import org.apache.flink.types.RowKind;
 import org.apache.flink.util.CloseableIterator;
 
 import org.apache.paimon.connector.action.FlinkActions;
 import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.file.utils.FailingFileIO;
+import org.apache.paimon.fs.Path;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.Timeout;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
index 26331ae17..e0eb2f0e1 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.connector.kafka.KafkaTableTestBase;
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index d12575e84..9a617df7f 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -19,16 +19,16 @@
 package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.ValidationException;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.BlockingIterator;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.testutils.junit.extensions.parameterized.ParameterizedTestExtension;
 import org.apache.flink.testutils.junit.extensions.parameterized.Parameters;
 import org.apache.flink.types.Row;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.junit.jupiter.api.TestTemplate;
 import org.junit.jupiter.api.extension.ExtendWith;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
index 57f53e695..332c43c81 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
@@ -32,12 +32,6 @@ import org.apache.flink.table.data.conversion.DataStructureConverter;
 import org.apache.flink.table.data.conversion.DataStructureConverters;
 import org.apache.flink.table.runtime.typeutils.InternalSerializers;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.utils.BlockingIterator;
-import org.apache.flink.table.store.file.utils.FailingFileIO;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.types.logical.IntType;
 import org.apache.flink.table.types.logical.RowType;
 import org.apache.flink.table.types.logical.VarCharType;
@@ -55,6 +49,12 @@ import org.apache.paimon.connector.source.ContinuousFileStoreSource;
 import org.apache.paimon.connector.source.FlinkSourceBuilder;
 import org.apache.paimon.connector.source.StaticFileStoreSource;
 import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.file.utils.FailingFileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
@@ -73,11 +73,11 @@ import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import static org.apache.flink.table.store.file.utils.FailingFileIO.retryArtificialException;
 import static org.apache.paimon.CoreOptions.BUCKET;
 import static org.apache.paimon.CoreOptions.FILE_FORMAT;
 import static org.apache.paimon.CoreOptions.PATH;
 import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
+import static org.apache.paimon.file.utils.FailingFileIO.retryArtificialException;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.api.Assumptions.assumeFalse;
 import static org.junit.jupiter.api.Assumptions.assumeTrue;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
index 81b253e0a..463937d30 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
@@ -18,15 +18,15 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.catalog.AbstractCatalog;
-import org.apache.flink.table.store.file.catalog.Catalog;
-import org.apache.flink.table.store.file.catalog.Identifier;
-import org.apache.flink.table.store.file.utils.BlockingIterator;
-import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
 
 import org.apache.paimon.connector.kafka.KafkaTableTestBase;
+import org.apache.paimon.file.catalog.AbstractCatalog;
+import org.apache.paimon.file.catalog.Catalog;
+import org.apache.paimon.file.catalog.Identifier;
+import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.fs.Path;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
index 9129e6cd0..603b57658 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
@@ -36,9 +36,9 @@ import org.apache.flink.table.catalog.exceptions.DatabaseNotExistException;
 import org.apache.flink.table.catalog.exceptions.TableAlreadyExistException;
 import org.apache.flink.table.catalog.exceptions.TableNotExistException;
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.catalog.AbstractCatalog;
-import org.apache.flink.table.store.fs.Path;
 
+import org.apache.paimon.file.catalog.AbstractCatalog;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
index a7fe195fa..792640c88 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
@@ -18,15 +18,14 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
-import org.apache.flink.table.store.file.manifest.ManifestList;
-import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.manifest.ManifestFileMeta;
+import org.apache.paimon.file.manifest.ManifestList;
+import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java
index 4fc80baeb..f115aecd1 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 import org.apache.flink.types.RowKind;
 
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
index 2805d8ea4..d444ff21c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
@@ -19,10 +19,10 @@
 package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.TableResult;
-import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.connector.kafka.KafkaTableTestBase;
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java
index ed5f5cf92..3bafa41c1 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 import org.apache.flink.types.RowKind;
 
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
index e25a606f0..c71802415 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
index 389d773aa..9b2581ac6 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
@@ -33,10 +33,6 @@ import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.factories.FactoryUtil;
 import org.apache.flink.table.runtime.connector.sink.SinkRuntimeProviderContext;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.utils.BlockingIterator;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.types.logical.LogicalType;
 import org.apache.flink.table.types.logical.RowType;
 import org.apache.flink.table.types.logical.VarCharType;
@@ -45,6 +41,10 @@ import org.apache.flink.types.Row;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
index bed1a7fc6..6dbb43b6d 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
@@ -21,13 +21,13 @@ package org.apache.paimon.connector;
 import org.apache.flink.core.execution.JobClient;
 import org.apache.flink.core.execution.SavepointFormatType;
 import org.apache.flink.runtime.jobgraph.SavepointConfigOptions;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.junit.jupiter.api.Test;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
index 6638ad371..6574f4b35 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.kafka.KafkaTableTestBase;
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
index ee623e593..275b9baa2 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
@@ -20,10 +20,10 @@ package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.JobStatus;
 import org.apache.flink.core.execution.JobClient;
-import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.connector.kafka.KafkaTableTestBase;
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.junit.jupiter.api.Test;
 
 import java.time.LocalDateTime;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
index c2bff5e7f..746b928be 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
@@ -19,17 +19,17 @@
 package org.apache.paimon.connector.action;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.catalog.Catalog;
-import org.apache.flink.table.store.file.catalog.CatalogFactory;
-import org.apache.flink.table.store.file.catalog.Identifier;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.Path;
 
 import org.apache.paimon.connector.util.AbstractTestBase;
 import org.apache.paimon.data.DataFormatTestUtil;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.catalog.Catalog;
+import org.apache.paimon.file.catalog.CatalogFactory;
+import org.apache.paimon.file.catalog.Identifier;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.StreamTableCommit;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
index 17bdc6f00..5e4de7e62 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
@@ -22,11 +22,11 @@ import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.core.execution.JobClient;
 import org.apache.flink.streaming.api.CheckpointingMode;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
-import org.apache.flink.table.store.file.Snapshot;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.FlinkConnectorOptions;
 import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
index aab27a921..75c7cfe92 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.connector.action;
 
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
index 200b8c144..6462bc390 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.connector.action;
 
-import org.apache.flink.table.store.file.Snapshot;
-
 import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
index 094761dca..f4f5960cb 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
@@ -19,10 +19,10 @@
 package org.apache.paimon.connector.action;
 
 import org.apache.flink.table.planner.factories.TestValuesTableFactory;
-import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.params.ParameterizedTest;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
index 574cd459a..f6800c4e1 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
@@ -56,12 +56,12 @@ import java.util.UUID;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.apache.paimon.CoreOptions.LOG_CHANGELOG_MODE;
 import static org.apache.paimon.CoreOptions.LOG_CONSISTENCY;
 import static org.apache.paimon.connector.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
 import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
 import static org.apache.paimon.data.BinaryRow.EMPTY_ROW;
+import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 
 /** Utils for the test of {@link KafkaLogStoreFactory}. */
 public class KafkaLogTestUtils {
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java
index bde2b9bdd..e84db06af 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.connector.sink;
 
-import org.apache.flink.table.store.file.io.CompactIncrement;
-import org.apache.flink.table.store.file.io.NewFilesIncrement;
-
+import org.apache.paimon.file.io.CompactIncrement;
+import org.apache.paimon.file.io.NewFilesIncrement;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 import org.apache.paimon.table.sink.CommitMessageSerializer;
@@ -28,9 +27,9 @@ import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
 
-import static org.apache.flink.table.store.file.manifest.ManifestCommittableSerializerTest.randomCompactIncrement;
-import static org.apache.flink.table.store.file.manifest.ManifestCommittableSerializerTest.randomNewFilesIncrement;
-import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.file.manifest.ManifestCommittableSerializerTest.randomCompactIncrement;
+import static org.apache.paimon.file.manifest.ManifestCommittableSerializerTest.randomNewFilesIncrement;
+import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link CommittableSerializer}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
index 3e0340efc..0aad7abb3 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
@@ -23,12 +23,12 @@ import org.apache.flink.api.common.typeutils.TypeSerializer;
 import org.apache.flink.runtime.checkpoint.OperatorSubtaskState;
 import org.apache.flink.streaming.api.watermark.Watermark;
 import org.apache.flink.streaming.util.OneInputStreamOperatorTestHarness;
-import org.apache.flink.table.store.file.manifest.ManifestCommittableSerializer;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 
 import org.apache.paimon.connector.VersionedSerializerWrapper;
 import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.file.manifest.ManifestCommittableSerializer;
+import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.StreamTableWrite;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
index 31833fcd8..1e6d5f5ae 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.connector.sink;
 
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReaderIterator;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
index ce4ec0c39..3060705bb 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
@@ -22,18 +22,18 @@ import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 
 import org.apache.paimon.connector.source.CompactorSourceBuilder;
 import org.apache.paimon.connector.util.AbstractTestBase;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.sink.StreamTableCommit;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
index 2ab99a9a4..c25569505 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
@@ -25,14 +25,14 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.paimon.connector.CatalogITCaseBase;
 import org.apache.paimon.connector.FlinkConnectorOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.sink.SinkRecord;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
index 5ecf67e90..ede268fbf 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
@@ -32,12 +32,12 @@ import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
 import org.apache.flink.table.api.bridge.java.StreamTableEnvironment;
 import org.apache.flink.table.api.config.ExecutionConfigOptions;
-import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
 import org.apache.flink.util.ExceptionUtils;
 
 import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.file.utils.FailingFileIO;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.Timeout;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
index c1a4a9e6a..a6034ca6f 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
@@ -21,12 +21,6 @@ package org.apache.paimon.connector.source;
 import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.util.CloseableIterator;
 
 import org.apache.paimon.connector.util.AbstractTestBase;
@@ -34,6 +28,12 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.file.io.DataFileMetaSerializer;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.sink.StreamTableCommit;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java
index fc9817d32..b23d5e466 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java
@@ -20,8 +20,8 @@ package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
 import org.apache.flink.connector.testutils.source.reader.TestingSplitEnumeratorContext;
-import org.apache.flink.table.store.file.io.DataFileMeta;
 
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.DataTableScan.DataFilePlan;
 import org.apache.paimon.table.source.EndOfScanException;
@@ -39,7 +39,7 @@ import java.util.concurrent.LinkedBlockingQueue;
 import java.util.stream.Collectors;
 
 import static org.apache.flink.connector.testutils.source.reader.TestingSplitEnumeratorContext.SplitAssignmentState;
-import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link ContinuousFileSplitEnumerator}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
index 65caf4059..6f610cf23 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.connector.source;
 
 import org.apache.flink.connector.testutils.source.reader.TestingReaderContext;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
@@ -35,8 +35,8 @@ import org.junit.jupiter.api.io.TempDir;
 import java.util.Arrays;
 import java.util.Collections;
 
-import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
+import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link FileStoreSourceReader}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
index 24149025d..93043cd08 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.connector.source;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.manifest.FileKind;
-import org.apache.flink.table.store.file.manifest.ManifestEntry;
-import org.apache.flink.table.store.file.operation.FileStoreScan;
-import org.apache.flink.table.store.file.stats.StatsTestUtils;
-
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.manifest.FileKind;
+import org.apache.paimon.file.manifest.ManifestEntry;
+import org.apache.paimon.file.operation.FileStoreScan;
+import org.apache.paimon.file.stats.StatsTestUtils;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
@@ -37,7 +36,7 @@ import java.util.Comparator;
 import java.util.List;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link FileStoreSourceSplitGenerator}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
index 288dfa3b7..a7d5cc0e9 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
@@ -24,19 +24,19 @@ import org.apache.flink.connector.base.source.reader.splitreader.SplitsAddition;
 import org.apache.flink.connector.base.source.reader.splitreader.SplitsChange;
 import org.apache.flink.connector.file.src.util.RecordAndPosition;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.types.logical.BigIntType;
 import org.apache.flink.table.types.logical.IntType;
 import org.apache.flink.table.types.logical.RowType;
 import org.apache.flink.types.RowKind;
 
 import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.utils.RecordWriter;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.source.TableRead;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
@@ -51,10 +51,10 @@ import java.util.List;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newFile;
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
+import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
index 5e5a15cbe..f2839a4d4 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
@@ -19,10 +19,10 @@
 package org.apache.paimon.connector.source;
 
 import org.apache.flink.core.io.SimpleVersionedSerialization;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.stats.StatsTestUtils;
 
 import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.stats.StatsTestUtils;
 import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.Test;
 
@@ -30,7 +30,7 @@ import java.io.IOException;
 import java.util.Arrays;
 import java.util.List;
 
-import static org.apache.flink.table.store.file.io.DataFileTestUtils.row;
+import static org.apache.paimon.file.io.DataFileTestUtils.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link FileStoreSourceSplitSerializer}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java
index 6816bbe80..80b034323 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java
@@ -24,9 +24,9 @@ import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
 
-import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newFile;
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
+import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link FileStoreSourceSplitState}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java
index e4ec53b48..d806de448 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java
@@ -26,9 +26,9 @@ import java.io.IOException;
 import java.util.Arrays;
 import java.util.Collections;
 
-import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newFile;
 import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
+import static org.apache.paimon.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link PendingSplitsCheckpointSerializer}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
index bb13f5117..c26f8e686 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
@@ -19,28 +19,28 @@
 package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.java.tuple.Tuple2;
-import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.memory.HeapMemorySegmentPool;
-import org.apache.flink.table.store.file.memory.MemoryOwner;
-import org.apache.flink.table.store.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.flink.table.store.file.operation.KeyValueFileStoreRead;
-import org.apache.flink.table.store.file.operation.KeyValueFileStoreWrite;
-import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.memory.HeapMemorySegmentPool;
+import org.apache.paimon.file.memory.MemoryOwner;
+import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.file.operation.KeyValueFileStoreRead;
+import org.apache.paimon.file.operation.KeyValueFileStoreWrite;
 import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.file.utils.RecordWriter;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.source.KeyValueTableRead;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
index 2149915c3..e7924343c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
@@ -25,13 +25,13 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
 import org.apache.flink.table.api.bridge.java.StreamTableEnvironment;
-import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.ReadWriteTableITCase;
 import org.apache.paimon.connector.StreamingReadWriteTableWithKafkaLogITCase;
+import org.apache.paimon.file.utils.BlockingIterator;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/avro/AbstractAvroBulkFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AbstractAvroBulkFormat.java
index 621291d3f..f2373b9ea 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/avro/AbstractAvroBulkFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AbstractAvroBulkFormat.java
@@ -18,9 +18,6 @@
 
 package org.apache.paimon.format.avro;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-
 import org.apache.avro.Schema;
 import org.apache.avro.file.DataFileReader;
 import org.apache.avro.file.SeekableInput;
@@ -28,6 +25,8 @@ import org.apache.avro.generic.GenericDatumReader;
 import org.apache.avro.io.DatumReader;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatReaderFactory;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.utils.IOUtils;
 import org.apache.paimon.utils.IteratorResultIterator;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
index 8f79cfa00..d958ecf30 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
@@ -18,8 +18,6 @@
 
 package org.apache.paimon.format.avro;
 
-import org.apache.flink.table.store.fs.PositionOutputStream;
-
 import org.apache.avro.Schema;
 import org.apache.avro.file.CodecFactory;
 import org.apache.avro.file.DataFileWriter;
@@ -34,6 +32,7 @@ import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.FormatWriter;
 import org.apache.paimon.format.FormatWriterFactory;
+import org.apache.paimon.fs.PositionOutputStream;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.ConfigOptions;
 import org.apache.paimon.options.Options;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroWriterFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroWriterFactory.java
index b3d2e020c..e96c6f51d 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroWriterFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroWriterFactory.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.format.avro;
 
-import org.apache.flink.table.store.fs.PositionOutputStream;
-
 import org.apache.avro.file.DataFileWriter;
+import org.apache.paimon.fs.PositionOutputStream;
 
 import java.io.IOException;
 
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/avro/SeekableInputStreamWrapper.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/SeekableInputStreamWrapper.java
index ddc23db31..7f90ce990 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/avro/SeekableInputStreamWrapper.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/SeekableInputStreamWrapper.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.format.avro;
 
-import org.apache.flink.table.store.fs.SeekableInputStream;
-
 import org.apache.avro.file.SeekableInput;
+import org.apache.paimon.fs.SeekableInputStream;
 
 import java.io.Closeable;
 import java.io.IOException;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/fs/HadoopReadOnlyFileSystem.java b/paimon-format/src/main/java/org/apache/paimon/format/fs/HadoopReadOnlyFileSystem.java
index 31754e87a..317dd75d1 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/fs/HadoopReadOnlyFileSystem.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/fs/HadoopReadOnlyFileSystem.java
@@ -18,8 +18,6 @@
 
 package org.apache.paimon.format.fs;
 
-import org.apache.flink.table.store.fs.FileIO;
-
 import org.apache.hadoop.fs.FSDataInputStream;
 import org.apache.hadoop.fs.FSDataOutputStream;
 import org.apache.hadoop.fs.FileStatus;
@@ -29,6 +27,7 @@ import org.apache.hadoop.fs.PositionedReadable;
 import org.apache.hadoop.fs.Seekable;
 import org.apache.hadoop.fs.permission.FsPermission;
 import org.apache.hadoop.util.Progressable;
+import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.utils.IOUtils;
 
 import java.io.IOException;
@@ -65,15 +64,15 @@ public class HadoopReadOnlyFileSystem extends FileSystem {
         return toHadoopStatus(fileIO.getFileStatus(toFlinkPath(path)));
     }
 
-    private static org.apache.flink.table.store.fs.Path toFlinkPath(Path path) {
-        return new org.apache.flink.table.store.fs.Path(path.toUri());
+    private static org.apache.paimon.fs.Path toFlinkPath(Path path) {
+        return new org.apache.paimon.fs.Path(path.toUri());
     }
 
-    private static Path toHadoopPath(org.apache.flink.table.store.fs.Path path) {
+    private static Path toHadoopPath(org.apache.paimon.fs.Path path) {
         return new Path(path.toUri());
     }
 
-    private static FileStatus toHadoopStatus(org.apache.flink.table.store.fs.FileStatus status) {
+    private static FileStatus toHadoopStatus(org.apache.paimon.fs.FileStatus status) {
         return new FileStatus(
                 status.getLen(),
                 status.isDir(),
@@ -139,16 +138,16 @@ public class HadoopReadOnlyFileSystem extends FileSystem {
     }
 
     /**
-     * A {@link InputStream} to wrap {@link org.apache.flink.table.store.fs.SeekableInputStream} for
-     * Flink's input streams.
+     * A {@link InputStream} to wrap {@link org.apache.paimon.fs.SeekableInputStream} for Flink's
+     * input streams.
      */
     private static class FSDataWrappedInputStream extends InputStream
             implements Seekable, PositionedReadable {
 
-        private final org.apache.flink.table.store.fs.SeekableInputStream seekableInputStream;
+        private final org.apache.paimon.fs.SeekableInputStream seekableInputStream;
 
         private FSDataWrappedInputStream(
-                org.apache.flink.table.store.fs.SeekableInputStream seekableInputStream) {
+                org.apache.paimon.fs.SeekableInputStream seekableInputStream) {
             this.seekableInputStream = seekableInputStream;
         }
 
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcReaderFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcReaderFactory.java
index b5949dd82..76bb1b21f 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcReaderFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcReaderFactory.java
@@ -18,9 +18,6 @@
 
 package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-
 import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch;
 import org.apache.hadoop.hive.ql.io.sarg.SearchArgument;
 import org.apache.hadoop.hive.ql.io.sarg.SearchArgumentFactory;
@@ -37,6 +34,8 @@ import org.apache.paimon.data.columnar.VectorizedColumnBatch;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.fs.HadoopReadOnlyFileSystem;
 import org.apache.paimon.format.orc.filter.OrcFilters;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader.RecordIterator;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
@@ -247,7 +246,7 @@ public class OrcReaderFactory implements FormatReaderFactory {
             int[] selectedFields,
             List<OrcFilters.Predicate> conjunctPredicates,
             FileIO fileIO,
-            org.apache.flink.table.store.fs.Path path,
+            org.apache.paimon.fs.Path path,
             long splitStart,
             long splitLength)
             throws IOException {
@@ -343,7 +342,7 @@ public class OrcReaderFactory implements FormatReaderFactory {
     public static org.apache.orc.Reader createReader(
             org.apache.hadoop.conf.Configuration conf,
             FileIO fileIO,
-            org.apache.flink.table.store.fs.Path path)
+            org.apache.paimon.fs.Path path)
             throws IOException {
         // open ORC file and create reader
         org.apache.hadoop.fs.Path hPath = new org.apache.hadoop.fs.Path(path.toUri());
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcWriterFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcWriterFactory.java
index e4f3c71b1..f6a7b7d05 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcWriterFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcWriterFactory.java
@@ -18,8 +18,6 @@
 
 package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.fs.PositionOutputStream;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.Path;
 import org.apache.orc.OrcConf;
@@ -32,6 +30,7 @@ import org.apache.paimon.format.FormatWriterFactory;
 import org.apache.paimon.format.orc.writer.OrcBulkWriter;
 import org.apache.paimon.format.orc.writer.PhysicalWriterImpl;
 import org.apache.paimon.format.orc.writer.Vectorizer;
+import org.apache.paimon.fs.PositionOutputStream;
 
 import java.io.IOException;
 import java.util.HashMap;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcFileStatsExtractor.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcFileStatsExtractor.java
index 782ea9ce1..3584ac6ec 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcFileStatsExtractor.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcFileStatsExtractor.java
@@ -18,9 +18,6 @@
 
 package org.apache.paimon.format.orc.filter;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.orc.BooleanColumnStatistics;
 import org.apache.orc.ColumnStatistics;
@@ -38,6 +35,8 @@ import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.orc.OrcReaderFactory;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DecimalType;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/orc/writer/PhysicalWriterImpl.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/writer/PhysicalWriterImpl.java
index 309f5d7b9..df57a4b6c 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/orc/writer/PhysicalWriterImpl.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/writer/PhysicalWriterImpl.java
@@ -18,8 +18,6 @@
 
 package org.apache.paimon.format.orc.writer;
 
-import org.apache.flink.table.store.fs.PositionOutputStream;
-
 import com.google.protobuf.CodedOutputStream;
 import org.apache.orc.CompressionCodec;
 import org.apache.orc.CompressionKind;
@@ -30,6 +28,7 @@ import org.apache.orc.impl.HadoopShims;
 import org.apache.orc.impl.OrcCodecPool;
 import org.apache.orc.impl.OutStream;
 import org.apache.orc.impl.StreamName;
+import org.apache.paimon.fs.PositionOutputStream;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractor.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractor.java
index 314a456f5..88c75a08e 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractor.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractor.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
 import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FileStatsExtractor;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DecimalType;
 import org.apache.paimon.types.LocalZonedTimestampType;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputFile.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputFile.java
index a5f0e62c1..c2c6d014f 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputFile.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputFile.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileStatus;
-import org.apache.flink.table.store.fs.Path;
-
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
 import org.apache.parquet.io.InputFile;
 import org.apache.parquet.io.SeekableInputStream;
 
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputStream.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputStream.java
index 64059431e..0728aa666 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputStream.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputStream.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.fs.SeekableInputStream;
-
+import org.apache.paimon.fs.SeekableInputStream;
 import org.apache.parquet.io.DelegatingSeekableInputStream;
 
 import java.io.IOException;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetReaderFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetReaderFactory.java
index 623299233..55488bdc5 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetReaderFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetReaderFactory.java
@@ -18,9 +18,6 @@
 
 package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.columnar.ColumnVector;
 import org.apache.paimon.data.columnar.ColumnarRow;
@@ -31,6 +28,8 @@ import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.parquet.reader.ColumnReader;
 import org.apache.paimon.format.parquet.reader.ParquetDecimalVector;
 import org.apache.paimon.format.parquet.reader.ParquetTimestampVector;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReader.RecordIterator;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetUtil.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetUtil.java
index 0612995e7..ef30dfe81 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetUtil.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetUtil.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.DataField;
 import org.apache.parquet.ParquetReadOptions;
 import org.apache.parquet.column.statistics.Statistics;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetWriterFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetWriterFactory.java
index 2ee6b9357..a8c313dc8 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetWriterFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetWriterFactory.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.fs.PositionOutputStream;
-
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatWriter;
 import org.apache.paimon.format.FormatWriterFactory;
 import org.apache.paimon.format.parquet.writer.ParquetBuilder;
 import org.apache.paimon.format.parquet.writer.ParquetBulkWriter;
 import org.apache.paimon.format.parquet.writer.StreamOutputFile;
+import org.apache.paimon.fs.PositionOutputStream;
 import org.apache.parquet.hadoop.ParquetWriter;
 import org.apache.parquet.io.OutputFile;
 
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/PositionOutputStreamAdapter.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/PositionOutputStreamAdapter.java
index 0ac2d919e..a4558b10a 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/PositionOutputStreamAdapter.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/PositionOutputStreamAdapter.java
@@ -28,14 +28,14 @@ import static org.apache.parquet.Preconditions.checkNotNull;
 class PositionOutputStreamAdapter extends PositionOutputStream {
 
     /** The Flink stream written to. */
-    private final org.apache.flink.table.store.fs.PositionOutputStream out;
+    private final org.apache.paimon.fs.PositionOutputStream out;
 
     /**
      * Create a new PositionOutputStreamAdapter.
      *
      * @param out The Flink stream written to.
      */
-    PositionOutputStreamAdapter(org.apache.flink.table.store.fs.PositionOutputStream out) {
+    PositionOutputStreamAdapter(org.apache.paimon.fs.PositionOutputStream out) {
         this.out = checkNotNull(out, "out");
     }
 
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/StreamOutputFile.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/StreamOutputFile.java
index 3e601fb00..975f646e2 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/StreamOutputFile.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/StreamOutputFile.java
@@ -36,7 +36,7 @@ public class StreamOutputFile implements OutputFile {
 
     private static final long DEFAULT_BLOCK_SIZE = 64L * 1024L * 1024L;
 
-    private final org.apache.flink.table.store.fs.PositionOutputStream stream;
+    private final org.apache.paimon.fs.PositionOutputStream stream;
 
     private final AtomicBoolean used;
 
@@ -46,7 +46,7 @@ public class StreamOutputFile implements OutputFile {
      *
      * @param stream The stream to write to.
      */
-    public StreamOutputFile(org.apache.flink.table.store.fs.PositionOutputStream stream) {
+    public StreamOutputFile(org.apache.paimon.fs.PositionOutputStream stream) {
         this.stream = checkNotNull(stream);
         this.used = new AtomicBoolean(false);
     }
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/BulkFileFormatTest.java b/paimon-format/src/test/java/org/apache/paimon/format/BulkFileFormatTest.java
index 7a779130e..a81673c75 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/BulkFileFormatTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/BulkFileFormatTest.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PositionOutputStream;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/avro/AvroBulkFormatTest.java b/paimon-format/src/test/java/org/apache/paimon/format/avro/AvroBulkFormatTest.java
index a607deb1d..30322e3fa 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/avro/AvroBulkFormatTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/avro/AvroBulkFormatTest.java
@@ -18,9 +18,6 @@
 
 package org.apache.paimon.format.avro;
 
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-
 import org.apache.avro.Schema;
 import org.apache.avro.file.DataFileWriter;
 import org.apache.avro.generic.GenericDatumWriter;
@@ -29,6 +26,8 @@ import org.apache.avro.io.DatumWriter;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.utils.FileIOUtils;
 import org.junit.jupiter.api.AfterEach;
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcReaderFactoryTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcReaderFactoryTest.java
index 94a45c568..084adde13 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcReaderFactoryTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcReaderFactoryTest.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.orc.filter.OrcFilters;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcWriterFactoryTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcWriterFactoryTest.java
index 515db3ed0..eab9de33b 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcWriterFactoryTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcWriterFactoryTest.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.fs.local.LocalFileIO.LocalPositionOutputStream;
-
 import org.apache.hadoop.fs.Path;
 import org.apache.orc.MemoryManager;
 import org.apache.orc.OrcFile;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.orc.writer.RowDataVectorizer;
 import org.apache.paimon.format.orc.writer.Vectorizer;
+import org.apache.paimon.fs.local.LocalFileIO.LocalPositionOutputStream;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetReadWriteTest.java b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetReadWriteTest.java
index f9adc4fe8..f7a9d379b 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetReadWriteTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetReadWriteTest.java
@@ -18,9 +18,6 @@
 
 package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
 import org.apache.paimon.data.GenericArray;
@@ -30,6 +27,8 @@ import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.format.FormatWriter;
 import org.apache.paimon.format.parquet.writer.RowDataParquetBuilder;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.ArrayType;
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
index 6f948a43b..a07d870d3 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
@@ -18,17 +18,6 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.file.catalog.AbstractCatalog;
-import org.apache.flink.table.store.file.catalog.CatalogLock;
-import org.apache.flink.table.store.file.catalog.Identifier;
-import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaChange;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.HiveMetaStoreClient;
@@ -44,6 +33,16 @@ import org.apache.hadoop.hive.metastore.api.StorageDescriptor;
 import org.apache.hadoop.hive.metastore.api.Table;
 import org.apache.hadoop.hive.metastore.api.UnknownDBException;
 import org.apache.hadoop.hive.metastore.api.hive_metastoreConstants;
+import org.apache.paimon.file.catalog.AbstractCatalog;
+import org.apache.paimon.file.catalog.CatalogLock;
+import org.apache.paimon.file.catalog.Identifier;
+import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaChange;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.OptionsUtils;
 import org.apache.paimon.table.TableType;
 import org.apache.paimon.types.DataField;
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
index 930f99105..de9ccb78b 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
@@ -19,15 +19,15 @@
 package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.catalog.Catalog;
-import org.apache.flink.table.store.file.catalog.CatalogFactory;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.HiveMetaStoreClient;
 import org.apache.hadoop.hive.metastore.IMetaStoreClient;
+import org.apache.paimon.file.catalog.Catalog;
+import org.apache.paimon.file.catalog.CatalogFactory;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.CatalogOptions;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.ConfigOptions;
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
index 4b4f5627d..5f33f3f7a 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
@@ -18,8 +18,6 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.file.catalog.CatalogLock;
-
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.IMetaStoreClient;
 import org.apache.hadoop.hive.metastore.api.LockComponent;
@@ -28,6 +26,7 @@ import org.apache.hadoop.hive.metastore.api.LockRequest;
 import org.apache.hadoop.hive.metastore.api.LockResponse;
 import org.apache.hadoop.hive.metastore.api.LockState;
 import org.apache.hadoop.hive.metastore.api.LockType;
+import org.apache.paimon.file.catalog.CatalogLock;
 import org.apache.paimon.utils.TimeUtils;
 import org.apache.thrift.TException;
 
diff --git a/paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory b/paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.paimon.file.catalog.CatalogFactory
similarity index 100%
rename from paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.flink.table.store.file.catalog.CatalogFactory
rename to paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.paimon.file.catalog.CatalogFactory
diff --git a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
index a12dd7d70..a138dc613 100644
--- a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
@@ -24,12 +24,6 @@ import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
 import org.apache.flink.table.api.TableException;
 import org.apache.flink.table.api.internal.TableEnvironmentImpl;
-import org.apache.flink.table.store.file.catalog.AbstractCatalog;
-import org.apache.flink.table.store.file.catalog.Catalog;
-import org.apache.flink.table.store.file.catalog.CatalogLock;
-import org.apache.flink.table.store.file.catalog.Identifier;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
 import org.apache.flink.util.ExceptionUtils;
@@ -40,6 +34,12 @@ import com.klarna.hiverunner.annotations.HiveSQL;
 import com.klarna.hiverunner.config.HiveRunnerConfig;
 import org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
 import org.apache.paimon.connector.FlinkCatalog;
+import org.apache.paimon.file.catalog.AbstractCatalog;
+import org.apache.paimon.file.catalog.Catalog;
+import org.apache.paimon.file.catalog.CatalogLock;
+import org.apache.paimon.file.catalog.Identifier;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.assertj.core.api.Assertions;
 import org.junit.After;
 import org.junit.Assert;
@@ -447,7 +447,7 @@ public class HiveCatalogITCase {
         Identifier identifier = new Identifier("test_db", "t3");
         Catalog catalog =
                 ((FlinkCatalog) tEnv.getCatalog(tEnv.getCurrentCatalog()).get()).catalog();
-        org.apache.flink.table.store.fs.Path tablePath =
+        org.apache.paimon.fs.Path tablePath =
                 ((AbstractCatalog) catalog).getDataTableLocation(identifier);
         Assert.assertEquals(tablePath.toString(), path + "test_db.db" + File.separator + "t3");
 
@@ -524,8 +524,7 @@ public class HiveCatalogITCase {
         List<Row> tables = collect("SHOW TABLES");
         Assert.assertEquals("[+I[t]]", tables.toString());
 
-        new LocalFileIO()
-                .delete(new org.apache.flink.table.store.fs.Path(path, "test_db.db/t"), true);
+        new LocalFileIO().delete(new org.apache.paimon.fs.Path(path, "test_db.db/t"), true);
         tables = collect("SHOW TABLES");
         Assert.assertEquals("[]", tables.toString());
     }
@@ -556,8 +555,7 @@ public class HiveCatalogITCase {
         assertTrue(
                 new SchemaManager(
                                 LocalFileIO.create(),
-                                new org.apache.flink.table.store.fs.Path(
-                                        path, "default.db/hive_table"))
+                                new org.apache.paimon.fs.Path(path, "default.db/hive_table"))
                         .listAllIds()
                         .isEmpty());
     }
@@ -592,7 +590,7 @@ public class HiveCatalogITCase {
         assertTrue(
                 new SchemaManager(
                                 LocalFileIO.create(),
-                                new org.apache.flink.table.store.fs.Path(
+                                new org.apache.paimon.fs.Path(
                                         path, "default.db/alter_failed_table"))
                         .latest()
                         .get()
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
index bc3acd039..10189721a 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
@@ -19,8 +19,6 @@
 package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.Path;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.metastore.api.hive_metastoreConstants;
@@ -29,6 +27,8 @@ import org.apache.hadoop.hive.serde2.SerDeUtils;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfo;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoUtils;
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.types.DataField;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
index 908ef9503..061800439 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.metastore.api.hive_metastoreConstants;
 import org.apache.hadoop.mapred.JobConf;
+import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.options.Options;
 
 import java.util.HashMap;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
index a3d62b60d..aa3dec353 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
@@ -19,7 +19,6 @@
 package org.apache.paimon.hive.mapred;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.schema.TableSchema;
 
 import org.apache.hadoop.hive.ql.io.sarg.ConvertAstToSearchArg;
 import org.apache.hadoop.hive.ql.io.sarg.SearchArgument;
@@ -31,6 +30,7 @@ import org.apache.hadoop.mapred.RecordReader;
 import org.apache.hadoop.mapred.Reporter;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.hive.RowDataContainer;
 import org.apache.paimon.hive.SearchArgumentToPredicateConverter;
 import org.apache.paimon.hive.TableStoreJobConf;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
index bdb0c19df..0d174be88 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.hive.mapred;
 
-import org.apache.flink.table.store.file.io.DataFileMeta;
-
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.mapred.FileSplit;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataOutputSerializer;
 import org.apache.paimon.table.source.DataSplit;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
index fc3162223..64a6b46f6 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.hive.mapred;
 
-import org.apache.flink.table.store.file.KeyValue;
-
 import org.apache.hadoop.mapred.RecordReader;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.hive.RowDataContainer;
 import org.apache.paimon.reader.RecordReaderIterator;
 import org.apache.paimon.table.source.ReadBuilder;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
index 6611bcda9..a03af542b 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
@@ -33,7 +32,7 @@ import java.util.List;
 
 import static org.apache.paimon.CoreOptions.PATH;
 
-/** Test utils related to {@link org.apache.flink.table.store.file.FileStore}. */
+/** Test utils related to {@link org.apache.paimon.file.FileStore}. */
 public class FileStoreTestUtils {
 
     public static FileStoreTable createFileStoreTable(
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
index 9c135bb85..f281e1f94 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
index 7be29e1c1..fb1a294b9 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
@@ -19,7 +19,6 @@
 package org.apache.paimon.hive;
 
 import org.apache.flink.connectors.hive.FlinkEmbeddedHiveRunner;
-import org.apache.flink.table.store.file.WriteMode;
 
 import com.klarna.hiverunner.HiveShell;
 import com.klarna.hiverunner.annotations.HiveSQL;
@@ -33,6 +32,7 @@ import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.hive.objectinspector.TableStoreObjectInspectorFactory;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
index 728f5ea35..8afbbf96c 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.StructField;
 import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.hive.objectinspector.TableStoreRowDataObjectInspector;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java
index 428adf516..e146b6711 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.hive.mapred;
 
-import org.apache.flink.table.store.file.io.DataFileTestDataGenerator;
-
 import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.file.io.DataFileTestDataGenerator;
 import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
index 74806df22..cd33f67e2 100644
--- a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
diff --git a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkReadITCase.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
index df10902e4..51f7e9fbc 100644
--- a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.fs.Path;
-
 import org.apache.commons.io.FileUtils;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
index af73d1369..0199ecaa6 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
@@ -19,12 +19,12 @@
 package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.catalog.Catalog;
-import org.apache.flink.table.store.file.catalog.CatalogFactory;
-import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.file.schema.SchemaChange;
 
+import org.apache.paimon.file.catalog.Catalog;
+import org.apache.paimon.file.catalog.CatalogFactory;
+import org.apache.paimon.file.operation.Lock;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.SchemaChange;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Preconditions;
@@ -354,14 +354,13 @@ public class SparkCatalog implements TableCatalog, SupportsNamespaces {
         return namespace.length == 1;
     }
 
-    private org.apache.flink.table.store.file.catalog.Identifier toIdentifier(Identifier ident)
+    private org.apache.paimon.file.catalog.Identifier toIdentifier(Identifier ident)
             throws NoSuchTableException {
         if (!isValidateNamespace(ident.namespace())) {
             throw new NoSuchTableException(ident);
         }
 
-        return new org.apache.flink.table.store.file.catalog.Identifier(
-                ident.namespace()[0], ident.name());
+        return new org.apache.paimon.file.catalog.Identifier(ident.namespace()[0], ident.name());
     }
 
     // --------------------- unsupported methods ----------------------------
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
index 9a85b79de..151874bc8 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.operation.Lock;
 
+import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.spark.sql.SparkSession;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
index b48e19225..0a4e5fc0e 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.file.operation.Lock;
-
+import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.table.DataTable;
 import org.apache.paimon.table.SupportsPartition;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWrite.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWrite.java
index 18d10d497..e48b42cfc 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWrite.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWrite.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.file.operation.Lock;
-
+import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.table.Table;
 import org.apache.paimon.table.sink.BatchTableCommit;
 import org.apache.paimon.table.sink.BatchTableWrite;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWriteBuilder.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWriteBuilder.java
index b8fb995f5..b5c6d8efb 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWriteBuilder.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWriteBuilder.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.file.operation.Lock;
-
+import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.table.Table;
 import org.apache.spark.sql.connector.write.Write;
 import org.apache.spark.sql.connector.write.WriteBuilder;
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/MinioTestContainer.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/MinioTestContainer.java
index 5cb8309e4..c5da8edc9 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/MinioTestContainer.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/MinioTestContainer.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.testutils.junit.DockerImageVersions;
-
 import com.amazonaws.auth.AWSStaticCredentialsProvider;
 import com.amazonaws.auth.BasicAWSCredentials;
 import com.amazonaws.client.builder.AwsClientBuilder;
 import com.amazonaws.services.s3.AmazonS3;
 import com.amazonaws.services.s3.AmazonS3Client;
 import com.github.dockerjava.api.command.InspectContainerResponse;
+import org.apache.paimon.testutils.junit.DockerImageVersions;
 import org.apache.paimon.utils.Preconditions;
 import org.junit.jupiter.api.extension.AfterAllCallback;
 import org.junit.jupiter.api.extension.BeforeAllCallback;
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
index 5aac7c249..a4ef7a7cf 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.BigIntType;
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
index ae778755a..778749b64 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-
 import org.apache.commons.lang3.StringUtils;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.sink.StreamTableCommit;
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkS3ITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkS3ITCase.java
index 4b3fd4798..b648b54de 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkS3ITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkS3ITCase.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.testutils.junit.parameterized.ParameterizedTestExtension;
-import org.apache.flink.table.store.testutils.junit.parameterized.Parameters;
-
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.testutils.junit.parameterized.ParameterizedTestExtension;
+import org.apache.paimon.testutils.junit.parameterized.Parameters;
 import org.apache.spark.sql.Row;
 import org.apache.spark.sql.SparkSession;
 import org.junit.jupiter.api.AfterAll;
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkWriteITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkWriteITCase.java
index bf36df4cf..891c7bfee 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkWriteITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkWriteITCase.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.fs.Path;
-
+import org.apache.paimon.fs.Path;
 import org.apache.spark.sql.Row;
 import org.apache.spark.sql.SparkSession;
 import org.junit.jupiter.api.AfterAll;


[incubator-paimon] 12/32: [core] Rename paimon types, table and utils

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit f7a58eb158326a4a8b7c57d73036a6c5cbef7eae
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 14:16:33 2023 +0800

    [core] Rename paimon types, table and utils
---
 .../flink/table/store/file/AbstractFileStore.java  |  2 +-
 .../table/store/file/AppendOnlyFileStore.java      |  2 +-
 .../apache/flink/table/store/file/FileStore.java   |  2 +-
 .../apache/flink/table/store/file/KeyValue.java    | 18 +++---
 .../flink/table/store/file/KeyValueFileStore.java  |  2 +-
 .../flink/table/store/file/KeyValueSerializer.java |  4 +-
 .../file/append/AppendOnlyCompactManager.java      |  2 +-
 .../table/store/file/append/AppendOnlyWriter.java  |  8 +--
 .../table/store/file/casting/CastExecutors.java    | 30 ++++-----
 .../flink/table/store/file/casting/CastedRow.java  |  4 +-
 .../table/store/file/catalog/AbstractCatalog.java  | 10 +--
 .../flink/table/store/file/catalog/Catalog.java    |  2 +-
 .../table/store/file/catalog/CatalogFactory.java   |  4 +-
 .../file/catalog/FileSystemCatalogFactory.java     |  2 +-
 .../flink/table/store/file/catalog/Identifier.java |  4 +-
 .../store/file/compact/NoopCompactManager.java     |  2 +-
 .../store/file/disk/AbstractFileIOChannel.java     |  2 +-
 .../store/file/disk/BufferFileChannelReader.java   |  2 +-
 .../store/file/disk/BufferFileWriterImpl.java      |  2 +-
 .../store/file/disk/FileChannelManagerImpl.java    |  8 +--
 .../flink/table/store/file/disk/FileIOChannel.java |  2 +-
 .../flink/table/store/file/disk/IOManagerImpl.java |  2 +-
 .../store/file/io/AbstractFileRecordIterator.java  |  4 +-
 .../flink/table/store/file/io/DataFileMeta.java    | 14 ++--
 .../store/file/io/DataFileMetaSerializer.java      |  4 +-
 .../flink/table/store/file/io/FileWriter.java      |  2 +-
 .../file/io/KeyValueDataFileRecordReader.java      |  4 +-
 .../store/file/io/KeyValueDataFileWriter.java      |  2 +-
 .../store/file/io/KeyValueFileReaderFactory.java   |  6 +-
 .../store/file/io/KeyValueFileWriterFactory.java   |  2 +-
 .../table/store/file/io/RollingFileWriter.java     |  2 +-
 .../store/file/io/RowDataFileRecordReader.java     |  2 +-
 .../table/store/file/io/RowDataFileWriter.java     |  4 +-
 .../store/file/io/RowDataRollingFileWriter.java    |  4 +-
 .../table/store/file/io/SingleFileWriter.java      |  2 +-
 .../file/io/StatsCollectingSingleFileWriter.java   |  4 +-
 .../store/file/manifest/ManifestCommittable.java   |  2 +-
 .../manifest/ManifestCommittableSerializer.java    |  4 +-
 .../table/store/file/manifest/ManifestEntry.java   | 10 +--
 .../table/store/file/manifest/ManifestFile.java    |  2 +-
 .../store/file/manifest/ManifestFileMeta.java      |  8 +--
 .../table/store/file/manifest/ManifestList.java    |  2 +-
 .../table/store/file/mergetree/DataFileReader.java |  2 +-
 .../store/file/mergetree/DropDeleteReader.java     |  4 +-
 .../flink/table/store/file/mergetree/Levels.java   |  4 +-
 .../table/store/file/mergetree/LookupLevels.java   | 10 +--
 .../store/file/mergetree/MergeTreeReaders.java     |  2 +-
 .../store/file/mergetree/MergeTreeWriter.java      |  2 +-
 .../file/mergetree/SortBufferWriteBuffer.java      |  8 +--
 .../table/store/file/mergetree/SortedRun.java      |  2 +-
 .../table/store/file/mergetree/WriteBuffer.java    |  2 +-
 .../compact/ChangelogMergeTreeRewriter.java        |  4 +-
 .../file/mergetree/compact/ChangelogResult.java    |  2 +-
 .../file/mergetree/compact/ConcatRecordReader.java |  4 +-
 .../compact/FullChangelogMergeFunctionWrapper.java |  4 +-
 .../FullChangelogMergeTreeCompactRewriter.java     |  2 +-
 .../LookupChangelogMergeFunctionWrapper.java       |  4 +-
 .../mergetree/compact/MergeTreeCompactManager.java |  2 +-
 .../compact/MergeTreeCompactRewriter.java          |  4 +-
 .../compact/PartialUpdateMergeFunction.java        |  8 +--
 .../file/mergetree/compact/SortMergeReader.java    |  4 +-
 .../mergetree/compact/ValueCountMergeFunction.java |  4 +-
 .../compact/aggregate/AggregateMergeFunction.java  | 10 +--
 .../compact/aggregate/FieldAggregator.java         |  2 +-
 .../compact/aggregate/FieldBoolAndAgg.java         |  2 +-
 .../compact/aggregate/FieldBoolOrAgg.java          |  2 +-
 .../aggregate/FieldLastNonNullValueAgg.java        |  2 +-
 .../compact/aggregate/FieldLastValueAgg.java       |  2 +-
 .../compact/aggregate/FieldListaggAgg.java         |  4 +-
 .../mergetree/compact/aggregate/FieldMaxAgg.java   |  6 +-
 .../mergetree/compact/aggregate/FieldMinAgg.java   |  6 +-
 .../compact/aggregate/FieldPrimaryKeyAgg.java      |  2 +-
 .../mergetree/compact/aggregate/FieldSumAgg.java   |  4 +-
 .../file/operation/AbstractFileStoreScan.java      |  8 +--
 .../file/operation/AbstractFileStoreWrite.java     |  4 +-
 .../file/operation/AppendOnlyFileStoreRead.java    |  8 +--
 .../file/operation/AppendOnlyFileStoreScan.java    |  2 +-
 .../file/operation/AppendOnlyFileStoreWrite.java   |  8 +--
 .../store/file/operation/FileStoreCommitImpl.java  |  8 +--
 .../table/store/file/operation/FileStoreRead.java  |  4 +-
 .../table/store/file/operation/FileStoreScan.java  |  2 +-
 .../table/store/file/operation/FileStoreWrite.java |  4 +-
 .../file/operation/KeyValueFileStoreRead.java      |  8 +--
 .../file/operation/KeyValueFileStoreScan.java      |  2 +-
 .../file/operation/KeyValueFileStoreWrite.java     |  2 +-
 .../store/file/operation/PartitionExpire.java      |  4 +-
 .../table/store/file/operation/ReverseReader.java  |  4 +-
 .../store/file/schema/KeyValueFieldsExtractor.java |  2 +-
 .../flink/table/store/file/schema/Schema.java      |  8 +--
 .../table/store/file/schema/SchemaChange.java      |  2 +-
 .../store/file/schema/SchemaEvolutionUtil.java     | 22 +++----
 .../table/store/file/schema/SchemaManager.java     | 20 +++---
 .../table/store/file/schema/SchemaSerializer.java  |  6 +-
 .../table/store/file/schema/SchemaValidation.java  | 16 ++---
 .../flink/table/store/file/schema/TableSchema.java |  8 +--
 .../store/file/sort/BinaryInMemorySortBuffer.java  |  2 +-
 .../table/store/file/sort/BinaryMergeIterator.java |  2 +-
 .../table/store/file/sort/SpillChannelManager.java |  2 +-
 .../table/store/file/stats/BinaryTableStats.java   |  2 +-
 .../file/stats/FieldStatsArraySerializer.java      | 12 ++--
 .../store/file/stats/FieldStatsConverters.java     |  4 +-
 .../table/store/file/utils/BulkFormatMapping.java  |  6 +-
 .../store/file/utils/ExecutorThreadFactory.java    |  2 +-
 .../store/file/utils/FileStorePathFactory.java     |  4 +-
 .../flink/table/store/file/utils/FileUtils.java    |  2 +-
 .../store/file/utils/IteratorRecordReader.java     |  2 +-
 .../table/store/file/utils/JsonSerdeUtil.java      |  6 +-
 .../store/file/utils/KeyComparatorSupplier.java    |  2 +-
 .../table/store/file/utils/ObjectSerializer.java   |  2 +-
 .../flink/table/store/file/utils/OffsetRow.java    |  2 +-
 .../store/file/utils/RowDataPartitionComputer.java |  6 +-
 .../table/store/file/utils/SerializationUtils.java |  4 +-
 .../table/store/file/utils/SnapshotManager.java    |  2 +-
 .../file/utils/VersionedObjectSerializer.java      |  6 +-
 .../paimon/file/predicate/BucketSelector.java      |  4 +-
 .../table/AbstractFileStoreTable.java              | 18 +++---
 .../table/AppendOnlyFileStoreTable.java            | 22 +++----
 .../table/ChangelogValueCountFileStoreTable.java   | 26 ++++----
 .../table/ChangelogWithKeyFileStoreTable.java      | 24 +++----
 .../table/store => paimon}/table/DataTable.java    |  8 +--
 .../store => paimon}/table/FileStoreTable.java     |  8 +--
 .../table/FileStoreTableFactory.java               |  2 +-
 .../table/store => paimon}/table/InnerTable.java   | 26 ++++----
 .../store => paimon}/table/ReadonlyTable.java      | 12 ++--
 .../store => paimon}/table/SupportsPartition.java  |  2 +-
 .../{flink/table/store => paimon}/table/Table.java | 10 +--
 .../table/store => paimon}/table/TableUtils.java   | 20 +++---
 .../table/sink/BatchTableCommit.java               |  2 +-
 .../table/sink/BatchTableWrite.java                |  2 +-
 .../table/sink/BatchWriteBuilder.java              |  2 +-
 .../table/sink/BatchWriteBuilderImpl.java          |  6 +-
 .../table/sink/BucketComputer.java                 |  6 +-
 .../store => paimon}/table/sink/CommitMessage.java |  2 +-
 .../table/sink/CommitMessageImpl.java              |  2 +-
 .../table/sink/CommitMessageSerializer.java        |  2 +-
 .../table/sink/InnerTableCommit.java               |  2 +-
 .../table/sink/InnerTableWrite.java                |  2 +-
 .../table/sink/PartitionComputer.java              |  4 +-
 .../table/sink/SequenceGenerator.java              | 36 +++++------
 .../store => paimon}/table/sink/SinkRecord.java    |  6 +-
 .../table/sink/SinkRecordConverter.java            |  4 +-
 .../table/sink/StreamTableCommit.java              |  2 +-
 .../table/sink/StreamTableWrite.java               |  2 +-
 .../table/sink/StreamWriteBuilder.java             |  2 +-
 .../table/sink/StreamWriteBuilderImpl.java         |  6 +-
 .../store => paimon}/table/sink/TableCommit.java   |  4 +-
 .../table/sink/TableCommitImpl.java                |  4 +-
 .../store => paimon}/table/sink/TableWrite.java    |  4 +-
 .../table/sink/TableWriteImpl.java                 |  4 +-
 .../store => paimon}/table/sink/WriteBuilder.java  |  4 +-
 .../table/source/AbstractDataTableScan.java        | 24 +++----
 .../table/source/AppendOnlySplitGenerator.java     |  4 +-
 .../table/source/BatchDataTableScan.java           |  6 +-
 .../table/source/BatchDataTableScanImpl.java       |  6 +-
 .../store => paimon}/table/source/DataSplit.java   |  2 +-
 .../table/source/DataTableScan.java                |  4 +-
 .../table/source/EndOfScanException.java           |  2 +-
 .../table/source/InnerStreamTableScan.java         |  2 +-
 .../table/source/InnerTableRead.java               |  2 +-
 .../table/source/InnerTableScan.java               |  2 +-
 .../table/source/KeyValueTableRead.java            |  4 +-
 .../table/source/MergeTreeSplitGenerator.java      |  4 +-
 .../store => paimon}/table/source/ReadBuilder.java |  4 +-
 .../table/source/ReadBuilderImpl.java              | 10 +--
 .../table/source/ReadOnceTableScan.java            |  2 +-
 .../table/source/ResetRowKindRecordIterator.java   |  6 +-
 .../table/store => paimon}/table/source/Split.java |  2 +-
 .../table/source/SplitGenerator.java               |  2 +-
 .../table/source/StreamDataTableScan.java          |  8 +--
 .../table/source/StreamDataTableScanImpl.java      | 20 +++---
 .../table/source/StreamTableScan.java              |  2 +-
 .../store => paimon}/table/source/TableRead.java   |  4 +-
 .../store => paimon}/table/source/TableScan.java   |  4 +-
 .../table/source/TableStreamingReader.java         | 10 +--
 .../source/ValueContentRowDataRecordIterator.java  |  4 +-
 .../source/ValueCountRowDataRecordIterator.java    |  6 +-
 .../snapshot/BoundedWatermarkFollowUpScanner.java  |  4 +-
 .../source/snapshot/CompactedStartingScanner.java  |  4 +-
 .../CompactionChangelogFollowUpScanner.java        |  4 +-
 .../ContinuousCompactorFollowUpScanner.java        |  4 +-
 .../ContinuousCompactorStartingScanner.java        |  4 +-
 .../ContinuousFromSnapshotStartingScanner.java     |  4 +-
 .../ContinuousFromTimestampStartingScanner.java    |  4 +-
 .../snapshot/ContinuousLatestStartingScanner.java  |  4 +-
 .../source/snapshot/DeltaFollowUpScanner.java      |  4 +-
 .../table/source/snapshot/FollowUpScanner.java     |  6 +-
 .../table/source/snapshot/FullStartingScanner.java |  4 +-
 .../snapshot/InputChangelogFollowUpScanner.java    |  4 +-
 .../table/source/snapshot/SnapshotSplitReader.java |  8 +--
 .../source/snapshot/SnapshotSplitReaderImpl.java   | 10 +--
 .../table/source/snapshot/StartingScanner.java     |  8 +--
 .../StaticFromSnapshotStartingScanner.java         |  4 +-
 .../StaticFromTimestampStartingScanner.java        |  4 +-
 .../table/system/AuditLogTable.java                | 42 ++++++------
 .../table/system/BucketsTable.java                 | 34 +++++-----
 .../store => paimon}/table/system/FilesTable.java  | 36 +++++------
 .../table/system/OptionsTable.java                 | 22 +++----
 .../table/system/SchemasTable.java                 | 26 ++++----
 .../table/system/SnapshotsTable.java               | 26 ++++----
 .../table/system/SystemTableLoader.java            | 16 ++---
 .../flink/table/store/file/FileFormatTest.java     |  6 +-
 .../flink/table/store/file/TestFileStore.java      |  8 +--
 .../table/store/file/TestKeyValueGenerator.java    | 18 +++---
 .../store/file/append/AppendOnlyWriterTest.java    | 10 +--
 .../table/store/file/casting/CastExecutorTest.java | 32 +++++-----
 .../store/file/catalog/CatalogFactoryTest.java     |  2 +-
 .../file/disk/BufferFileWriterReaderTest.java      |  2 +-
 .../store/file/format/FileFormatSuffixTest.java    |  8 +--
 .../file/format/FileStatsExtractingAvroFormat.java |  2 +-
 .../store/file/format/FlushingFileFormat.java      |  2 +-
 .../store/file/io/KeyValueFileReadWriteTest.java   | 14 ++--
 .../table/store/file/io/RollingFileWriterTest.java |  8 +--
 .../ManifestCommittableSerializerTest.java         |  4 +-
 .../store/file/manifest/ManifestFileMetaTest.java  |  4 +-
 .../file/manifest/ManifestTestDataGenerator.java   |  2 +-
 .../store/file/mergetree/LookupLevelsTest.java     | 10 +--
 .../table/store/file/mergetree/MergeTreeTest.java  | 18 +++---
 .../mergetree/SortBufferWriteBufferTestBase.java   | 10 +--
 .../compact/CombiningRecordReaderTestBase.java     |  2 +-
 .../mergetree/compact/ConcatRecordReaderTest.java  |  2 +-
 .../FullChangelogMergeFunctionWrapperTestBase.java |  2 +-
 .../LookupChangelogMergeFunctionWrapperTest.java   | 10 +--
 .../mergetree/compact/MergeFunctionTestUtils.java  |  4 +-
 .../ReducerMergeFunctionWrapperTestBase.java       |  2 +-
 .../mergetree/compact/SortMergeReaderTestBase.java |  2 +-
 .../compact/aggregate/FieldAggregatorTest.java     | 18 +++---
 .../store/file/operation/FileStoreCommitTest.java  |  2 +-
 .../file/operation/KeyValueFileStoreReadTest.java  | 22 +++----
 .../file/operation/KeyValueFileStoreScanTest.java  |  4 +-
 .../store/file/operation/PartitionExpireTest.java  | 12 ++--
 .../store/file/operation/TestCommitThread.java     |  4 +-
 .../store/file/schema/DataTypeJsonParserTest.java  | 46 +++++++-------
 .../store/file/schema/SchemaEvolutionUtilTest.java | 18 +++---
 .../table/store/file/schema/SchemaManagerTest.java | 26 ++++----
 .../flink/table/store/file/schema/SchemaUtils.java |  6 +-
 .../file/schema/TableSchemaSerializationTest.java  | 10 +--
 .../table/store/file/schema/TableSchemaTest.java   |  6 +-
 .../store/file/sort/IntNormalizedKeyComputer.java  |  2 +-
 .../store/file/stats/BinaryTableStatsTest.java     |  4 +-
 .../file/stats/FieldStatsArraySerializerTest.java  |  4 +-
 .../store/file/stats/FieldStatsCollectorTest.java  |  8 +--
 .../table/store/file/stats/StatsTestUtils.java     |  4 +-
 .../store/file/stats/TestFileStatsExtractor.java   |  2 +-
 .../table/store/file/utils/FailingFileIO.java      |  2 +-
 .../store/file/utils/FileStorePathFactoryTest.java |  8 +--
 .../table/store/file/utils/OffsetRowTest.java      |  2 +-
 .../table/store/file/utils/ReusingTestData.java    |  4 +-
 .../store/file/utils/TestReusingRecordReader.java  |  2 +-
 .../table/store/file/utils/TraceableFileIO.java    |  4 +-
 .../paimon/file/predicate/BucketSelectorTest.java  |  4 +-
 .../file/predicate/PredicateBuilderTest.java       |  4 +-
 .../paimon/file/predicate/PredicateTest.java       |  4 +-
 .../table/AppendOnlyFileDataTableTest.java         |  2 +-
 .../table/AppendOnlyFileStoreTableTest.java        | 16 ++---
 .../AppendOnlyTableColumnTypeFileDataTest.java     |  2 +-
 .../AppendOnlyTableColumnTypeFileMetaTest.java     |  2 +-
 .../table/AppendOnlyTableFileMetaFilterTest.java   |  2 +-
 .../ChangelogValueCountColumnTypeFileDataTest.java |  2 +-
 .../ChangelogValueCountColumnTypeFileMetaTest.java |  2 +-
 .../ChangelogValueCountFileDataTableTest.java      |  2 +-
 .../ChangelogValueCountFileMetaFilterTest.java     |  2 +-
 .../ChangelogValueCountFileStoreTableTest.java     | 12 ++--
 .../ChangelogWithKeyColumnTypeFileDataTest.java    |  4 +-
 .../table/ChangelogWithKeyFileDataTableTest.java   |  8 +--
 .../table/ChangelogWithKeyFileMetaFilterTest.java  |  4 +-
 .../table/ChangelogWithKeyFileStoreTableTest.java  | 46 +++++++-------
 ...hangelogWithKeyTableColumnTypeFileMetaTest.java |  4 +-
 .../table/ColumnTypeFileDataTestBase.java          |  8 +--
 .../table/ColumnTypeFileMetaTestBase.java          |  4 +-
 .../table/FileDataFilterTestBase.java              | 12 ++--
 .../table/FileMetaFilterTestBase.java              |  4 +-
 .../table/FileStoreTableTestBase.java              | 30 ++++-----
 .../table/SchemaEvolutionTableTestBase.java        | 46 +++++++-------
 .../table/SchemaEvolutionTest.java                 | 20 +++---
 .../table/WritePreemptMemoryTest.java              | 10 +--
 .../table/sink/CommitMessageSerializerTest.java    |  2 +-
 .../table/sink/SinkRecordConverterTest.java        |  8 +--
 .../table/sink/TableWriteTest.java                 | 16 ++---
 .../table/source/BatchDataTableScanTest.java       | 10 +--
 .../source/RowDataRecordIteratorTestBase.java      |  6 +-
 .../table/source/SplitGeneratorTest.java           |  2 +-
 .../store => paimon}/table/source/SplitTest.java   |  2 +-
 .../table/source/StreamDataTableScanTest.java      | 10 +--
 .../ValueContentRowDataRecordIteratorTest.java     |  4 +-
 .../ValueCountRowDataRecordIteratorTest.java       |  6 +-
 .../BoundedWatermarkFollowUpScannerTest.java       |  4 +-
 .../snapshot/CompactedStartingScannerTest.java     | 10 +--
 .../CompactionChangelogFollowUpScannerTest.java    | 14 ++--
 .../ContinuousCompactorFollowUpScannerTest.java    | 14 ++--
 .../ContinuousCompactorStartingScannerTest.java    | 10 +--
 ...ContinuousFromTimestampStartingScannerTest.java | 10 +--
 .../ContinuousLatestStartingScannerTest.java       | 10 +--
 .../source/snapshot/DeltaFollowUpScannerTest.java  | 12 ++--
 .../source/snapshot/FullStartingScannerTest.java   | 10 +--
 .../InputChangelogFollowUpScannerTest.java         | 14 ++--
 .../table/source/snapshot/ScannerTestBase.java     | 22 +++----
 .../utils/CompatibilityTestUtils.java              |  2 +-
 .../apache/paimon/benchmark/TableBenchmark.java    |  8 +--
 .../paimon/benchmark/TableWriterBenchmark.java     |  8 +--
 .../org/apache/paimon/catalog/CatalogContext.java  |  2 +-
 .../org/apache/paimon/codegen/CodeGenLoader.java   |  2 +-
 .../org/apache/paimon/codegen/CodeGenUtils.java    |  4 +-
 .../org/apache/paimon/codegen/CodeGenerator.java   |  4 +-
 .../paimon/codegen/CodeGeneratorContext.scala      |  4 +-
 .../apache/paimon/codegen/CodeGeneratorImpl.java   |  6 +-
 .../paimon/codegen/ComparatorCodeGenerator.scala   |  2 +-
 .../org/apache/paimon/codegen/CompileUtils.java    |  2 +-
 .../apache/paimon/codegen/ExprCodeGenerator.scala  |  4 +-
 .../org/apache/paimon/codegen/GenerateUtils.scala  |  8 +--
 .../org/apache/paimon/codegen/GeneratedClass.java  |  2 +-
 .../paimon/codegen/GeneratedExpression.scala       |  2 +-
 .../paimon/codegen/ProjectionCodeGenerator.scala   |  2 +-
 .../apache/paimon/codegen/SortCodeGenerator.scala  |  6 +-
 .../codegen/codesplit/BlockStatementGrouper.java   |  2 +-
 .../codegen/codesplit/BlockStatementSplitter.java  |  2 +-
 .../codegen/codesplit/CodeRewriterTestBase.java    |  2 +-
 .../codegen/codesplit/CodeSplitTestUtil.java       |  8 +--
 .../codegen/codesplit/DeclarationRewriter.java     |  2 +-
 .../paimon/codegen/codesplit/JavaCodeSplitter.java |  2 +-
 .../codegen/codesplit/JavaCodeSplitterTest.java    |  2 +-
 .../codegen/codesplit/MemberFieldRewriter.java     |  2 +-
 .../java/org/apache/paimon/data/BinaryArray.java   |  2 +-
 .../org/apache/paimon/data/BinaryArrayWriter.java  |  2 +-
 .../java/org/apache/paimon/data/BinaryMap.java     |  4 +-
 .../java/org/apache/paimon/data/BinaryRow.java     | 14 ++--
 .../org/apache/paimon/data/BinaryRowWriter.java    |  2 +-
 .../java/org/apache/paimon/data/BinarySection.java |  4 +-
 .../java/org/apache/paimon/data/BinaryString.java  |  2 +-
 .../java/org/apache/paimon/data/BinaryWriter.java  | 10 +--
 .../main/java/org/apache/paimon/data/Decimal.java  |  4 +-
 .../java/org/apache/paimon/data/GenericArray.java  |  4 +-
 .../java/org/apache/paimon/data/GenericMap.java    |  4 +-
 .../java/org/apache/paimon/data/GenericRow.java    |  6 +-
 .../java/org/apache/paimon/data/InternalArray.java | 10 +--
 .../java/org/apache/paimon/data/InternalMap.java   |  4 +-
 .../java/org/apache/paimon/data/InternalRow.java   | 12 ++--
 .../java/org/apache/paimon/data/JoinedRow.java     |  2 +-
 .../org/apache/paimon/data/LazyGenericRow.java     |  4 +-
 .../java/org/apache/paimon/data/NestedRow.java     |  4 +-
 .../apache/paimon/data/RandomAccessInputView.java  |  2 +-
 .../paimon/data/SimpleCollectingOutputView.java    |  2 +-
 .../java/org/apache/paimon/data/Timestamp.java     |  6 +-
 .../apache/paimon/data/columnar/ColumnarRow.java   |  2 +-
 .../paimon/data/columnar/ColumnarRowIterator.java  |  4 +-
 .../data/serializer/BinaryRowSerializer.java       |  2 +-
 .../data/serializer/InternalArraySerializer.java   |  2 +-
 .../data/serializer/InternalMapSerializer.java     |  2 +-
 .../data/serializer/InternalRowSerializer.java     |  4 +-
 .../data/serializer/InternalSerializers.java       | 18 +++---
 .../paimon/data/serializer/ListSerializer.java     |  2 +-
 .../paimon/data/serializer/NullableSerializer.java |  2 +-
 .../data/serializer/RowCompactedSerializer.java    | 14 ++--
 .../apache/paimon/file/predicate/CompareUtils.java |  2 +-
 .../org/apache/paimon/file/predicate/Equal.java    |  2 +-
 .../org/apache/paimon/file/predicate/FieldRef.java |  2 +-
 .../paimon/file/predicate/GreaterOrEqual.java      |  2 +-
 .../apache/paimon/file/predicate/GreaterThan.java  |  2 +-
 .../java/org/apache/paimon/file/predicate/In.java  |  2 +-
 .../apache/paimon/file/predicate/IsNotNull.java    |  2 +-
 .../org/apache/paimon/file/predicate/IsNull.java   |  2 +-
 .../apache/paimon/file/predicate/LeafFunction.java |  2 +-
 .../paimon/file/predicate/LeafPredicate.java       |  2 +-
 .../paimon/file/predicate/LeafUnaryFunction.java   |  2 +-
 .../apache/paimon/file/predicate/LessOrEqual.java  |  2 +-
 .../org/apache/paimon/file/predicate/LessThan.java |  2 +-
 .../org/apache/paimon/file/predicate/NotEqual.java |  2 +-
 .../org/apache/paimon/file/predicate/NotIn.java    |  2 +-
 .../predicate/NullFalseLeafBinaryFunction.java     |  2 +-
 .../paimon/file/predicate/PredicateBuilder.java    | 12 ++--
 .../paimon/file/predicate/PredicateFilter.java     |  4 +-
 .../apache/paimon/file/predicate/StartsWith.java   |  2 +-
 .../apache/paimon/format/FieldStatsCollector.java  |  4 +-
 .../java/org/apache/paimon/format/FileFormat.java  |  2 +-
 .../apache/paimon/format/FormatReaderFactory.java  |  2 +-
 .../src/main/java/org/apache/paimon/fs/Path.java   |  2 +-
 .../org/apache/paimon/fs/local/LocalFileIO.java    |  2 +-
 .../org/apache/paimon/io/DataOutputSerializer.java |  2 +-
 .../paimon/io/cache/CachedRandomInputView.java     |  2 +-
 .../paimon/lookup/hash/HashLookupStoreReader.java  |  4 +-
 .../paimon/lookup/hash/HashLookupStoreWriter.java  |  4 +-
 .../apache/paimon/memory/MemorySegmentUtils.java   |  2 +-
 .../java/org/apache/paimon/memory/MemoryUtils.java |  2 +-
 .../org/apache/paimon/options/CatalogOptions.java  |  2 +-
 .../org/apache/paimon/options/ConfigOption.java    |  2 +-
 .../org/apache/paimon/options/ConfigOptions.java   |  2 +-
 .../java/org/apache/paimon/options/MemorySize.java |  4 +-
 .../org/apache/paimon/options/OptionsUtils.java    |  2 +-
 .../paimon/options/StructuredOptionsSplitter.java  |  2 +-
 .../paimon/options/description/TextElement.java    |  2 +-
 .../plugin/ComponentClassLoader.java               |  4 +-
 .../store => paimon}/plugin/PluginLoader.java      |  6 +-
 .../store => paimon}/reader/RecordReader.java      |  4 +-
 .../reader/RecordReaderIterator.java               |  4 +-
 .../table/store => paimon}/table/TableType.java    |  2 +-
 .../table/store => paimon}/types/ArrayType.java    |  4 +-
 .../table/store => paimon}/types/BigIntType.java   |  2 +-
 .../table/store => paimon}/types/BinaryType.java   |  2 +-
 .../table/store => paimon}/types/BooleanType.java  |  2 +-
 .../table/store => paimon}/types/CharType.java     |  2 +-
 .../table/store => paimon}/types/DataField.java    |  6 +-
 .../table/store => paimon}/types/DataType.java     |  4 +-
 .../store => paimon}/types/DataTypeCasts.java      | 52 +++++++--------
 .../store => paimon}/types/DataTypeChecks.java     |  4 +-
 .../types/DataTypeDefaultVisitor.java              |  2 +-
 .../store => paimon}/types/DataTypeFamily.java     |  2 +-
 .../store => paimon}/types/DataTypeJsonParser.java |  6 +-
 .../table/store => paimon}/types/DataTypeRoot.java |  2 +-
 .../store => paimon}/types/DataTypeVisitor.java    |  2 +-
 .../table/store => paimon}/types/DataTypes.java    |  2 +-
 .../table/store => paimon}/types/DateType.java     |  2 +-
 .../table/store => paimon}/types/DecimalType.java  |  2 +-
 .../table/store => paimon}/types/DoubleType.java   |  2 +-
 .../table/store => paimon}/types/FloatType.java    |  2 +-
 .../table/store => paimon}/types/IntType.java      |  2 +-
 .../types/LocalZonedTimestampType.java             |  2 +-
 .../table/store => paimon}/types/MapType.java      |  4 +-
 .../table/store => paimon}/types/MultisetType.java |  4 +-
 .../store => paimon}/types/ReassignFieldId.java    |  2 +-
 .../table/store => paimon}/types/RowKind.java      |  2 +-
 .../table/store => paimon}/types/RowType.java      |  6 +-
 .../table/store => paimon}/types/SmallIntType.java |  2 +-
 .../table/store => paimon}/types/TimeType.java     |  2 +-
 .../store => paimon}/types/TimestampType.java      |  2 +-
 .../table/store => paimon}/types/TinyIntType.java  |  2 +-
 .../store => paimon}/types/VarBinaryType.java      |  2 +-
 .../table/store => paimon}/types/VarCharType.java  |  2 +-
 .../table/store => paimon}/utils/ArrayUtils.java   |  2 +-
 .../store => paimon}/utils/BinaryRowDataUtil.java  |  2 +-
 .../store => paimon}/utils/CloseableIterator.java  |  2 +-
 .../store => paimon}/utils/DateTimeUtils.java      |  2 +-
 .../table/store => paimon}/utils/DecimalUtils.java |  2 +-
 .../store => paimon}/utils/EncodingUtils.java      |  2 +-
 .../store => paimon}/utils/ExceptionUtils.java     |  4 +-
 .../table/store => paimon}/utils/FileIOUtils.java  |  4 +-
 .../table/store => paimon}/utils/Filter.java       |  2 +-
 .../utils/FunctionWithException.java               |  2 +-
 .../table/store => paimon}/utils/HadoopUtils.java  |  2 +-
 .../table/store => paimon}/utils/IOFunction.java   |  2 +-
 .../table/store => paimon}/utils/IOUtils.java      |  2 +-
 .../store => paimon}/utils/InstantiationUtil.java  |  2 +-
 .../utils/IteratorResultIterator.java              |  4 +-
 .../store => paimon}/utils/KeyProjectedRow.java    |  4 +-
 .../store => paimon}/utils/LocalFileUtils.java     |  2 +-
 .../table/store => paimon}/utils/LongCounter.java  |  2 +-
 .../table/store => paimon}/utils/MapBuilder.java   |  2 +-
 .../table/store => paimon}/utils/MathUtils.java    |  2 +-
 .../store => paimon}/utils/MurmurHashUtils.java    |  2 +-
 .../store => paimon}/utils/OperatingSystem.java    |  2 +-
 .../store => paimon}/utils/OrderedPacking.java     |  2 +-
 .../{flink/table/store => paimon}/utils/Pair.java  |  2 +-
 .../{flink/table/store => paimon}/utils/Pool.java  |  4 +-
 .../store => paimon}/utils/Preconditions.java      |  2 +-
 .../table/store => paimon}/utils/ProjectedRow.java |  6 +-
 .../table/store => paimon}/utils/Projection.java   | 10 +--
 .../store => paimon}/utils/RecyclableIterator.java |  4 +-
 .../table/store => paimon}/utils/Reference.java    |  2 +-
 .../store => paimon}/utils/ReflectionUtils.java    |  2 +-
 .../utils/RowDataToObjectArrayConverter.java       |  4 +-
 .../table/store => paimon}/utils/RowDataUtils.java | 22 +++----
 .../utils/SerializableFunction.java                |  2 +-
 .../table/store => paimon}/utils/SortUtil.java     |  2 +-
 .../table/store => paimon}/utils/StringUtils.java  |  6 +-
 .../table/store => paimon}/utils/ThreadUtils.java  |  2 +-
 .../store => paimon}/utils/ThrowingConsumer.java   |  2 +-
 .../table/store => paimon}/utils/TimeUtils.java    |  6 +-
 .../table/store => paimon}/utils/TypeUtils.java    | 22 +++----
 .../store => paimon}/utils/VarLengthIntUtils.java  |  2 +-
 .../table/store/datagen/DataGenVisitorBase.java    |  8 +--
 .../table/store/datagen/DataGeneratorMapper.java   |  2 +-
 .../store/datagen/RandomGeneratorVisitor.java      | 40 ++++++------
 .../java/org/apache/paimon/data/BinaryRowTest.java | 14 ++--
 .../org/apache/paimon/data/BinaryStringTest.java   |  4 +-
 .../org/apache/paimon/data/DataFormatTestUtil.java |  4 +-
 .../java/org/apache/paimon/data/DecimalTest.java   | 12 ++--
 .../java/org/apache/paimon/data/MapDataUtil.java   |  2 +-
 .../java/org/apache/paimon/data/NestedRowTest.java |  2 +-
 .../java/org/apache/paimon/data/RowDataTest.java   |  8 +--
 .../serializer/InternalArraySerializerTest.java    |  2 +-
 .../data/serializer/InternalMapSerializerTest.java |  4 +-
 .../data/serializer/InternalRowSerializerTest.java |  4 +-
 .../serializer/RowCompactedSerializerTest.java     |  6 +-
 .../paimon/data/serializer/SerializerTestBase.java |  4 +-
 .../paimon/format/FileStatsExtractorTestBase.java  | 26 ++++----
 .../apache/paimon/fs/FileIOBehaviorTestBase.java   |  2 +-
 .../apache/paimon/fs/HadoopConfigLoadingTest.java  |  4 +-
 .../org/apache/paimon/fs/HdfsBehaviorTest.java     |  2 +-
 .../lookup/hash/HashLookupStoreFactoryTest.java    |  4 +-
 .../store => paimon}/types/DataTypeAssert.java     |  4 +-
 .../store => paimon}/types/DataTypeChecksTest.java |  4 +-
 .../store => paimon}/types/DataTypesTest.java      |  2 +-
 .../store => paimon}/utils/CommonTestUtils.java    |  2 +-
 .../store => paimon}/utils/LocalFileUtilsTest.java |  2 +-
 .../store => paimon}/utils/RowDataUtilsTest.java   |  8 +--
 .../table/store => paimon}/utils/TempDirUtils.java |  2 +-
 .../configuration/ConfigOptionsDocGenerator.java   |  6 +-
 .../ConfigOptionsDocGeneratorTest.java             |  2 +-
 .../ConfigOptionsDocsCompletenessITCase.java       |  2 +-
 .../main/java/org/apache/paimon/oss/OSSLoader.java |  2 +-
 .../main/java/org/apache/paimon/s3/S3Loader.java   |  2 +-
 .../connector/AbstractTableStoreFactory.java       |  6 +-
 .../apache/paimon/connector/DataCatalogTable.java  |  2 +-
 .../paimon/connector/DataTypeToLogicalType.java    | 46 +++++++-------
 .../org/apache/paimon/connector/FlinkCatalog.java  |  4 +-
 .../org/apache/paimon/connector/FlinkRowData.java  |  2 +-
 .../apache/paimon/connector/FlinkRowWrapper.java   |  2 +-
 .../paimon/connector/LogicalTypeConversion.java    |  6 +-
 .../paimon/connector/LogicalTypeToDataType.java    | 44 ++++++-------
 .../paimon/connector/PredicateConverter.java       |  2 +-
 .../paimon/connector/SystemCatalogTable.java       |  2 +-
 .../apache/paimon/connector/action/ActionBase.java |  8 +--
 .../paimon/connector/action/CompactAction.java     |  2 +-
 .../connector/action/DropPartitionAction.java      |  2 +-
 .../paimon/connector/action/MergeIntoAction.java   |  6 +-
 .../kafka/KafkaLogSerializationSchema.java         |  4 +-
 .../paimon/connector/kafka/KafkaSinkFunction.java  |  2 +-
 .../connector/lookup/FileStoreLookupFunction.java  | 14 ++--
 .../paimon/connector/lookup/LookupTable.java       |  2 +-
 .../connector/lookup/PrimaryKeyLookupTable.java    |  8 +--
 .../paimon/connector/lookup/RocksDBSetState.java   |  2 +-
 .../paimon/connector/lookup/RocksDBValueState.java |  2 +-
 .../lookup/SecondaryIndexLookupTable.java          |  8 +--
 .../connector/sink/BucketStreamPartitioner.java    |  4 +-
 .../connector/sink/CommittableSerializer.java      |  4 +-
 .../paimon/connector/sink/CommittableTypeInfo.java |  2 +-
 .../paimon/connector/sink/CommitterOperator.java   |  2 +-
 .../paimon/connector/sink/CompactorSink.java       |  2 +-
 .../connector/sink/CompactorSinkBuilder.java       |  4 +-
 .../paimon/connector/sink/FileStoreSink.java       |  2 +-
 .../apache/paimon/connector/sink/FlinkSink.java    |  4 +-
 .../paimon/connector/sink/FlinkSinkBuilder.java    |  2 +-
 .../sink/FullChangelogStoreSinkWrite.java          |  4 +-
 .../paimon/connector/sink/LogSinkFunction.java     |  2 +-
 .../sink/LookupChangelogStoreSinkWrite.java        |  2 +-
 .../sink/OffsetRowDataHashStreamPartitioner.java   |  2 +-
 .../apache/paimon/connector/sink/StateUtils.java   |  2 +-
 .../paimon/connector/sink/StoreCommitter.java      |  6 +-
 .../connector/sink/StoreCompactOperator.java       |  4 +-
 .../paimon/connector/sink/StoreSinkWrite.java      |  4 +-
 .../paimon/connector/sink/StoreSinkWriteImpl.java  |  8 +--
 .../paimon/connector/sink/StoreWriteOperator.java  |  4 +-
 .../paimon/connector/sink/TableStoreSink.java      |  8 +--
 .../connector/source/CompactorSourceBuilder.java   | 14 ++--
 .../source/ContinuousFileSplitEnumerator.java      | 10 +--
 .../source/ContinuousFileStoreSource.java          |  6 +-
 .../connector/source/FileStoreSourceReader.java    |  2 +-
 .../connector/source/FileStoreSourceSplit.java     |  2 +-
 .../source/FileStoreSourceSplitGenerator.java      |  2 +-
 .../source/FileStoreSourceSplitReader.java         |  8 +--
 .../source/FileStoreSourceSplitSerializer.java     |  4 +-
 .../source/FileStoreSourceSplitState.java          |  4 +-
 .../paimon/connector/source/FlinkSource.java       |  4 +-
 .../connector/source/FlinkSourceBuilder.java       |  4 +-
 .../paimon/connector/source/FlinkTableSource.java  |  2 +-
 .../connector/source/SimpleSystemSource.java       |  2 +-
 .../connector/source/SingleIteratorRecords.java    |  2 +-
 .../connector/source/StaticFileStoreSource.java    |  6 +-
 .../paimon/connector/source/SystemTableSource.java |  4 +-
 .../paimon/connector/source/TableStoreSource.java  | 10 +--
 .../paimon/connector/CatalogTableITCase.java       |  2 +-
 .../apache/paimon/connector/ChangelogModeTest.java |  8 +--
 .../apache/paimon/connector/FileStoreITCase.java   |  4 +-
 .../apache/paimon/connector/FiniteTestSource.java  |  2 +-
 .../paimon/connector/ForceCompactionITCase.java    |  6 +-
 .../paimon/connector/action/ActionITCaseBase.java  | 14 ++--
 .../connector/action/CompactActionITCase.java      | 16 ++---
 .../connector/action/DeleteActionITCase.java       |  8 +--
 .../action/DropPartitionActionITCase.java          | 10 +--
 .../connector/kafka/KafkaLogSerializationTest.java |  4 +-
 .../paimon/connector/kafka/KafkaLogTestUtils.java  |  4 +-
 .../paimon/connector/lookup/LookupTableTest.java   |  6 +-
 .../connector/sink/CommittableSerializerTest.java  |  6 +-
 .../connector/sink/CommitterOperatorTest.java      |  6 +-
 .../connector/sink/CommitterOperatorTestBase.java  | 18 +++---
 .../paimon/connector/sink/CompactorSinkITCase.java | 18 +++---
 .../connector/sink/FileStoreShuffleBucketTest.java |  6 +-
 .../connector/source/CompactorSourceITCase.java    | 14 ++--
 .../source/ContinuousFileSplitEnumeratorTest.java  |  6 +-
 .../source/FileStoreSourceReaderTest.java          |  8 +--
 .../source/FileStoreSourceSplitGeneratorTest.java  |  6 +-
 .../source/FileStoreSourceSplitReaderTest.java     |  6 +-
 .../source/FileStoreSourceSplitSerializerTest.java |  2 +-
 .../source/TestChangelogDataReadWrite.java         | 24 +++----
 .../paimon/connector/util/AbstractTestBase.java    |  2 +-
 .../paimon/format/avro/AbstractAvroBulkFormat.java |  8 +--
 .../apache/paimon/format/avro/AvroFileFormat.java  |  6 +-
 .../paimon/format/avro/AvroSchemaConverter.java    | 20 +++---
 .../format/avro/AvroToRowDataConverters.java       | 12 ++--
 .../format/avro/RowDataToAvroConverters.java       |  8 +--
 .../paimon/format/fs/HadoopReadOnlyFileSystem.java |  2 +-
 .../apache/paimon/format/orc/OrcFileFormat.java    | 20 +++---
 .../apache/paimon/format/orc/OrcReaderFactory.java | 14 ++--
 .../apache/paimon/format/orc/OrcWriterFactory.java |  2 +-
 .../orc/SerializableHadoopConfigWrapper.java       |  2 +-
 .../format/orc/filter/OrcFileStatsExtractor.java   | 10 +--
 .../orc/filter/OrcPredicateFunctionVisitor.java    |  2 +-
 .../format/orc/reader/AbstractOrcColumnVector.java | 10 +--
 .../format/orc/reader/OrcArrayColumnVector.java    |  2 +-
 .../format/orc/reader/OrcMapColumnVector.java      |  2 +-
 .../format/orc/reader/OrcRowColumnVector.java      |  2 +-
 .../format/orc/reader/OrcSplitReaderUtil.java      | 16 ++---
 .../paimon/format/orc/writer/OrcBulkWriter.java    |  2 +-
 .../format/orc/writer/RowDataVectorizer.java       | 14 ++--
 .../paimon/format/orc/writer/Vectorizer.java       |  2 +-
 .../paimon/format/parquet/ParquetFileFormat.java   |  4 +-
 .../format/parquet/ParquetFileStatsExtractor.java  | 10 +--
 .../format/parquet/ParquetReaderFactory.java       | 10 +--
 .../format/parquet/ParquetSchemaConverter.java     | 18 +++---
 .../apache/paimon/format/parquet/ParquetUtil.java  |  2 +-
 .../format/parquet/reader/ArrayColumnReader.java   |  4 +-
 .../parquet/reader/BaseVectorizedColumnReader.java |  2 +-
 .../reader/ParquetDataColumnReaderFactory.java     |  2 +-
 .../parquet/reader/ParquetSplitReaderUtil.java     | 16 ++---
 .../format/parquet/writer/ParquetBulkWriter.java   |  2 +-
 .../parquet/writer/ParquetRowDataBuilder.java      |  2 +-
 .../parquet/writer/ParquetRowDataWriter.java       | 20 +++---
 .../parquet/writer/RowDataParquetBuilder.java      |  2 +-
 .../format/parquet/writer/StreamOutputFile.java    |  2 +-
 .../apache/paimon/format/BulkFileFormatTest.java   |  6 +-
 .../paimon/format/avro/AvroBulkFormatTest.java     |  4 +-
 .../format/avro/AvroBulkFormatTestUtils.java       |  6 +-
 .../format/orc/OrcFileStatsExtractorTest.java      | 36 +++++------
 .../paimon/format/orc/OrcFilterConverterTest.java  |  6 +-
 .../paimon/format/orc/OrcReaderFactoryTest.java    | 12 ++--
 .../paimon/format/orc/OrcSplitReaderUtilTest.java  |  4 +-
 .../paimon/format/orc/OrcWriterFactoryTest.java    |  6 +-
 .../parquet/ParquetFileStatsExtractorTest.java     | 38 +++++------
 .../format/parquet/ParquetReadWriteTest.java       | 34 +++++-----
 .../java/org/apache/paimon/hive/HiveCatalog.java   |  8 +--
 .../org/apache/paimon/hive/HiveCatalogFactory.java |  2 +-
 .../org/apache/paimon/hive/HiveCatalogLock.java    |  2 +-
 .../java/org/apache/paimon/hive/HiveTypeUtils.java | 12 ++--
 .../java/org/apache/paimon/hive/HiveSchema.java    |  6 +-
 .../hive/SearchArgumentToPredicateConverter.java   |  6 +-
 .../apache/paimon/hive/TableStoreHiveMetaHook.java |  2 +-
 .../paimon/hive/mapred/TableStoreInputFormat.java  |  8 +--
 .../paimon/hive/mapred/TableStoreInputSplit.java   |  2 +-
 .../paimon/hive/mapred/TableStoreRecordReader.java |  6 +-
 .../TableStoreDateObjectInspector.java             |  2 +-
 .../TableStoreListObjectInspector.java             |  2 +-
 .../TableStoreMapObjectInspector.java              |  2 +-
 .../TableStoreObjectInspectorFactory.java          | 12 ++--
 .../TableStoreRowDataObjectInspector.java          |  4 +-
 .../org/apache/paimon/hive/FileStoreTestUtils.java |  6 +-
 .../apache/paimon/hive/HiveTableSchemaTest.java    |  6 +-
 .../paimon/hive/RandomGenericRowDataGenerator.java |  8 +--
 .../SearchArgumentToPredicateConverterTest.java    |  6 +-
 .../hive/TableStoreHiveStorageHandlerITCase.java   | 14 ++--
 .../hive/mapred/TableStoreInputSplitTest.java      |  2 +-
 .../hive/mapred/TableStoreRecordReaderTest.java    | 16 ++---
 .../TableStoreListObjectInspectorTest.java         |  2 +-
 .../TableStoreMapObjectInspectorTest.java          |  2 +-
 .../apache/paimon/spark/SparkDataSourceReader.java | 10 +--
 .../apache/paimon/spark/SparkInputPartition.java   |  8 +--
 .../java/org/apache/paimon/spark/SparkSource.java  |  2 +-
 .../apache/paimon/spark/SimpleTableTestHelper.java | 10 +--
 .../paimon/spark/SparkFilterConverterTest.java     | 10 +--
 .../apache/paimon/spark/SparkInternalRowTest.java  |  2 +-
 .../org/apache/paimon/spark/SparkReadITCase.java   | 12 ++--
 .../org/apache/paimon/spark/SparkTypeTest.java     |  4 +-
 .../org/apache/paimon/spark/SparkArrayData.java    | 14 ++--
 .../java/org/apache/paimon/spark/SparkCatalog.java |  4 +-
 .../apache/paimon/spark/SparkFilterConverter.java  |  4 +-
 .../apache/paimon/spark/SparkInputPartition.java   |  2 +-
 .../org/apache/paimon/spark/SparkInternalRow.java  | 18 +++---
 .../apache/paimon/spark/SparkReaderFactory.java    |  6 +-
 .../java/org/apache/paimon/spark/SparkRow.java     | 14 ++--
 .../java/org/apache/paimon/spark/SparkScan.java    |  4 +-
 .../org/apache/paimon/spark/SparkScanBuilder.java  |  2 +-
 .../java/org/apache/paimon/spark/SparkSource.java  |  2 +-
 .../java/org/apache/paimon/spark/SparkTable.java   |  8 +--
 .../org/apache/paimon/spark/SparkTypeUtils.java    | 74 +++++++++++-----------
 .../java/org/apache/paimon/spark/SparkWrite.java   | 12 ++--
 .../org/apache/paimon/spark/SparkWriteBuilder.java |  2 +-
 .../apache/paimon/spark/MinioTestContainer.java    |  2 +-
 .../paimon/spark/SparkFilterConverterTest.java     | 10 +--
 .../apache/paimon/spark/SparkInternalRowTest.java  |  2 +-
 .../org/apache/paimon/spark/SparkReadITCase.java   | 14 ++--
 .../org/apache/paimon/spark/SparkReadTestBase.java | 18 +++---
 .../org/apache/paimon/spark/SparkTypeTest.java     |  4 +-
 679 files changed, 2161 insertions(+), 2161 deletions(-)

diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java
index fec802ed0..f986978cd 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java
@@ -28,7 +28,7 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
index d144c4c4f..b4346d08e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
@@ -24,7 +24,7 @@ import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreScan;
 import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreWrite;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.paimon.fs.FileIO;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormatDiscover;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/FileStore.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/FileStore.java
index 83970390d..6c1091103 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/FileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/FileStore.java
@@ -26,7 +26,7 @@ import org.apache.flink.table.store.file.operation.FileStoreScan;
 import org.apache.flink.table.store.file.operation.FileStoreWrite;
 import org.apache.flink.table.store.file.operation.PartitionExpire;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValue.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValue.java
index 746fca6d2..826cf79b4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValue.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValue.java
@@ -18,12 +18,12 @@
 
 package org.apache.flink.table.store.file;
 
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.TinyIntType;
-import org.apache.flink.table.store.utils.RowDataUtils;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.TinyIntType;
+import org.apache.paimon.utils.RowDataUtils;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
@@ -36,7 +36,7 @@ import java.util.stream.IntStream;
 
 import static org.apache.flink.table.store.file.schema.SystemColumns.SEQUENCE_NUMBER;
 import static org.apache.flink.table.store.file.schema.SystemColumns.VALUE_KIND;
-import static org.apache.flink.table.store.utils.Preconditions.checkState;
+import static org.apache.paimon.utils.Preconditions.checkState;
 
 /**
  * A key value, including user key, sequence number, value kind and value. This object can be
@@ -146,12 +146,12 @@ public class KeyValue {
                 new DataField(
                         maxKeyId + 1,
                         SEQUENCE_NUMBER,
-                        new org.apache.flink.table.store.types.BigIntType(false)));
+                        new org.apache.paimon.types.BigIntType(false)));
         fields.add(
                 new DataField(
                         maxKeyId + 2,
                         VALUE_KIND,
-                        new org.apache.flink.table.store.types.TinyIntType(false)));
+                        new org.apache.paimon.types.TinyIntType(false)));
         for (DataField valueField : valueFields) {
             DataField newValueField =
                     new DataField(
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
index 2a3090739..494a550df 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
@@ -27,7 +27,7 @@ import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.KeyComparatorSupplier;
 import org.apache.paimon.fs.FileIO;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormatDiscover;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueSerializer.java
index 2c94781ef..52d02f0e8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueSerializer.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.file;
 
 import org.apache.flink.table.store.file.utils.ObjectSerializer;
 import org.apache.flink.table.store.file.utils.OffsetRow;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java
index b30ed176e..f93b2a8fa 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java
@@ -24,7 +24,7 @@ import org.apache.flink.table.store.file.compact.CompactTask;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.paimon.fs.FileIO;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
index 444906215..648485046 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
@@ -28,10 +28,10 @@ import org.apache.flink.table.store.file.io.RowDataRollingFileWriter;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.RecordWriter;
 import org.apache.paimon.fs.FileIO;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.LongCounter;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.LongCounter;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutors.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutors.java
index 5cce3b1af..3df02be63 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutors.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutors.java
@@ -18,16 +18,16 @@
 
 package org.apache.flink.table.store.file.casting;
 
-import org.apache.flink.table.store.types.BinaryType;
-import org.apache.flink.table.store.types.CharType;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DecimalType;
-import org.apache.flink.table.store.types.TimestampType;
-import org.apache.flink.table.store.types.VarBinaryType;
-import org.apache.flink.table.store.types.VarCharType;
-import org.apache.flink.table.store.utils.DateTimeUtils;
-import org.apache.flink.table.store.utils.DecimalUtils;
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.types.BinaryType;
+import org.apache.paimon.types.CharType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.TimestampType;
+import org.apache.paimon.types.VarBinaryType;
+import org.apache.paimon.types.VarCharType;
+import org.apache.paimon.utils.DateTimeUtils;
+import org.apache.paimon.utils.DecimalUtils;
+import org.apache.paimon.utils.StringUtils;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
@@ -37,11 +37,11 @@ import javax.annotation.Nullable;
 
 import java.util.Arrays;
 
-import static org.apache.flink.table.store.types.DataTypeRoot.BINARY;
-import static org.apache.flink.table.store.types.DataTypeRoot.CHAR;
-import static org.apache.flink.table.store.types.DataTypeRoot.TIMESTAMP_WITHOUT_TIME_ZONE;
-import static org.apache.flink.table.store.types.DataTypeRoot.VARBINARY;
-import static org.apache.flink.table.store.types.DataTypeRoot.VARCHAR;
+import static org.apache.paimon.types.DataTypeRoot.BINARY;
+import static org.apache.paimon.types.DataTypeRoot.CHAR;
+import static org.apache.paimon.types.DataTypeRoot.TIMESTAMP_WITHOUT_TIME_ZONE;
+import static org.apache.paimon.types.DataTypeRoot.VARBINARY;
+import static org.apache.paimon.types.DataTypeRoot.VARCHAR;
 
 /** Cast executors for input type and output type. */
 public class CastExecutors {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastedRow.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastedRow.java
index 9c9bfee3a..a8ff2dacd 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastedRow.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastedRow.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.casting;
 
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
@@ -27,7 +27,7 @@ import org.apache.paimon.data.InternalMap;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /**
  * An implementation of {@link InternalRow} which provides a casted view of the underlying {@link
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java
index 864606a4b..0bc249a8b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java
@@ -21,11 +21,11 @@ package org.apache.flink.table.store.file.catalog;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.FileStoreTableFactory;
-import org.apache.flink.table.store.table.Table;
-import org.apache.flink.table.store.table.system.SystemTableLoader;
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.FileStoreTableFactory;
+import org.apache.paimon.table.Table;
+import org.apache.paimon.table.system.SystemTableLoader;
+import org.apache.paimon.utils.StringUtils;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Catalog.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Catalog.java
index cd184f99d..7acbe7161 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Catalog.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Catalog.java
@@ -20,7 +20,7 @@ package org.apache.flink.table.store.file.catalog;
 
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaChange;
-import org.apache.flink.table.store.table.Table;
+import org.apache.paimon.table.Table;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java
index b4d27c2ee..e89d2794e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.catalog;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.annotation.Experimental;
 
@@ -34,7 +34,7 @@ import java.util.stream.Collectors;
 
 import static org.apache.paimon.options.CatalogOptions.METASTORE;
 import static org.apache.paimon.options.CatalogOptions.WAREHOUSE;
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
  * Factory to create {@link Catalog}. Each factory should have a unique identifier.
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalogFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalogFactory.java
index 5b56f5744..7c0b12308 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalogFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalogFactory.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.catalog;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.table.TableType;
+import org.apache.paimon.table.TableType;
 
 import static org.apache.paimon.options.CatalogOptions.TABLE_TYPE;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java
index 25491a41e..20c848cbe 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.catalog;
 
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.utils.StringUtils;
 
 import org.apache.paimon.annotation.Experimental;
 
@@ -27,7 +27,7 @@ import java.io.Serializable;
 import java.util.Objects;
 
 import static org.apache.flink.table.store.file.catalog.AbstractCatalog.DB_SUFFIX;
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
  * Identifies an object in a catalog.
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/NoopCompactManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/NoopCompactManager.java
index 071dbd763..cc4ec3f89 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/NoopCompactManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/compact/NoopCompactManager.java
@@ -20,7 +20,7 @@ package org.apache.flink.table.store.file.compact;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import java.io.IOException;
 import java.util.Collections;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/AbstractFileIOChannel.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/AbstractFileIOChannel.java
index ca51b0c71..97b46b933 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/AbstractFileIOChannel.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/AbstractFileIOChannel.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.disk;
 
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileChannelReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileChannelReader.java
index 0a82944b4..ab3eb1ced 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileChannelReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileChannelReader.java
@@ -24,7 +24,7 @@ import java.io.IOException;
 import java.nio.ByteBuffer;
 import java.nio.channels.FileChannel;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /** Helper class to read {@link Buffer}s from files into objects. */
 public class BufferFileChannelReader {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriterImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriterImpl.java
index 8f507133b..5e4de2920 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriterImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriterImpl.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.disk;
 
 import org.apache.flink.table.store.file.memory.Buffer;
-import org.apache.flink.table.store.utils.FileIOUtils;
+import org.apache.paimon.utils.FileIOUtils;
 
 import java.io.IOException;
 import java.nio.ByteBuffer;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelManagerImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelManagerImpl.java
index f3220f908..7d758febc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelManagerImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileChannelManagerImpl.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.file.disk;
 
 import org.apache.flink.table.store.file.disk.FileIOChannel.Enumerator;
 import org.apache.flink.table.store.file.disk.FileIOChannel.ID;
-import org.apache.flink.table.store.utils.FileIOUtils;
-import org.apache.flink.table.store.utils.IOUtils;
+import org.apache.paimon.utils.FileIOUtils;
+import org.apache.paimon.utils.IOUtils;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -35,8 +35,8 @@ import java.util.UUID;
 import java.util.concurrent.atomic.AtomicLong;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /** The manager used for creating/deleting file channels based on config temp dirs. */
 public class FileChannelManagerImpl implements FileChannelManager {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileIOChannel.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileIOChannel.java
index b01751310..7f7916e2a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileIOChannel.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileIOChannel.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.disk;
 
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.utils.StringUtils;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManagerImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManagerImpl.java
index f50621470..3e3d3e590 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManagerImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManagerImpl.java
@@ -20,7 +20,7 @@ package org.apache.flink.table.store.file.disk;
 
 import org.apache.flink.table.store.file.disk.FileIOChannel.Enumerator;
 import org.apache.flink.table.store.file.disk.FileIOChannel.ID;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/AbstractFileRecordIterator.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/AbstractFileRecordIterator.java
index e28fdcee5..89e4276fe 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/AbstractFileRecordIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/AbstractFileRecordIterator.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.file.io;
 
 import org.apache.flink.table.store.file.casting.CastFieldGetter;
 import org.apache.flink.table.store.file.casting.CastedRow;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.utils.ProjectedRow;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.utils.ProjectedRow;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMeta.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMeta.java
index ec0fc220a..943ccf01d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMeta.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMeta.java
@@ -21,12 +21,12 @@ package org.apache.flink.table.store.file.io;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.types.ArrayType;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataTypes;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataTypes;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.Timestamp;
@@ -38,7 +38,7 @@ import java.util.Objects;
 
 import static org.apache.flink.table.store.file.utils.SerializationUtils.newBytesType;
 import static org.apache.flink.table.store.file.utils.SerializationUtils.newStringType;
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 import static org.apache.paimon.data.BinaryRow.EMPTY_ROW;
 
 /** Metadata of a data file. */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMetaSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMetaSerializer.java
index 2483ec5b3..3fa138ebc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMetaSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMetaSerializer.java
@@ -27,8 +27,8 @@ import org.apache.paimon.data.InternalRow;
 
 import static org.apache.flink.table.store.file.utils.SerializationUtils.deserializeBinaryRow;
 import static org.apache.flink.table.store.file.utils.SerializationUtils.serializeBinaryRow;
-import static org.apache.flink.table.store.utils.RowDataUtils.fromStringArrayData;
-import static org.apache.flink.table.store.utils.RowDataUtils.toStringArrayData;
+import static org.apache.paimon.utils.RowDataUtils.fromStringArrayData;
+import static org.apache.paimon.utils.RowDataUtils.toStringArrayData;
 
 /** Serializer for {@link DataFileMeta}. */
 public class DataFileMetaSerializer extends ObjectSerializer<DataFileMeta> {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/FileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/FileWriter.java
index 09677c01f..6dde94d34 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/FileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/FileWriter.java
@@ -19,7 +19,7 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.utils.CloseableIterator;
+import org.apache.paimon.utils.CloseableIterator;
 
 import java.io.Closeable;
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
index e0d54f8ca..33c93f330 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
@@ -24,8 +24,8 @@ import org.apache.flink.table.store.file.casting.CastFieldGetter;
 import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatReaderFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
index b9c5c21df..d5f8137cb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
@@ -23,7 +23,7 @@ import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
index 5c2cd0965..99c304775 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
@@ -26,9 +26,9 @@ import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.BulkFormatMapping;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIO;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.Projection;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Projection;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.format.FileFormatDiscover;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
index b4d4b8657..99c3abb81 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
@@ -23,7 +23,7 @@ import org.apache.flink.table.store.file.KeyValueSerializer;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RollingFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RollingFileWriter.java
index 1a9a1a0d6..1dbb032d2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RollingFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RollingFileWriter.java
@@ -19,7 +19,7 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
index f8489075e..671012ae3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.store.file.casting.CastFieldGetter;
 import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatReaderFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
index f3c16ddcb..a5292bdb7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
@@ -23,8 +23,8 @@ import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.LongCounter;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.LongCounter;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileStatsExtractor;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
index 393f3366b..98a2fff3e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
@@ -20,8 +20,8 @@
 package org.apache.flink.table.store.file.io;
 
 import org.apache.paimon.fs.FileIO;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.LongCounter;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.LongCounter;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
index 74cba78ac..521f013d0 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
@@ -22,7 +22,7 @@ package org.apache.flink.table.store.file.io;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.PositionOutputStream;
-import org.apache.flink.table.store.utils.IOUtils;
+import org.apache.paimon.utils.IOUtils;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatWriter;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
index 88e87ce02..eabc5605e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
@@ -21,8 +21,8 @@ package org.apache.flink.table.store.file.io;
 
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FieldStats;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittable.java
index d7389af89..0a0f8ef2f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittable.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.manifest;
 
-import org.apache.flink.table.store.table.sink.CommitMessage;
+import org.apache.paimon.table.sink.CommitMessage;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java
index 40bcbd6c2..db40ee416 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.file.manifest;
 
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
-import org.apache.flink.table.store.table.sink.CommitMessage;
-import org.apache.flink.table.store.table.sink.CommitMessageSerializer;
+import org.apache.paimon.table.sink.CommitMessage;
+import org.apache.paimon.table.sink.CommitMessageSerializer;
 
 import org.apache.paimon.data.serializer.VersionedSerializer;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntry.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntry.java
index 2f43c8b54..e207e2158 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntry.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntry.java
@@ -20,11 +20,11 @@ package org.apache.flink.table.store.file.manifest;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.TinyIntType;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.TinyIntType;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.data.BinaryRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
index 93fd0238b..db61ff68f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
@@ -27,7 +27,7 @@ import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.flink.table.store.file.utils.VersionedObjectSerializer;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.format.FieldStatsCollector;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMeta.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMeta.java
index ce7b7d0e7..9dc6a3d26 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMeta.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMeta.java
@@ -20,10 +20,10 @@ package org.apache.flink.table.store.file.manifest;
 
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.VarCharType;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarCharType;
 
 import java.util.ArrayList;
 import java.util.LinkedHashMap;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java
index 87ff1c413..d03e9e681 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java
@@ -24,7 +24,7 @@ import org.apache.flink.table.store.file.utils.VersionedObjectSerializer;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.PositionOutputStream;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatReaderFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DataFileReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DataFileReader.java
index 3ce2a2114..68c1606b6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DataFileReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DataFileReader.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.mergetree;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.paimon.lookup.LookupStoreReader;
 import org.apache.paimon.options.MemorySize;
-import org.apache.flink.table.store.utils.FileIOUtils;
+import org.apache.paimon.utils.FileIOUtils;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DropDeleteReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DropDeleteReader.java
index 8b42957cf..fc9a84397 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DropDeleteReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DropDeleteReader.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.file.mergetree;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.types.RowKind;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/Levels.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/Levels.java
index 9dc966f7c..39299064a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/Levels.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/Levels.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.mergetree;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.data.InternalRow;
 
@@ -33,7 +33,7 @@ import java.util.TreeSet;
 import java.util.stream.Collectors;
 
 import static java.util.Collections.emptyList;
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /** A class which stores all level files of merge tree. */
 public class Levels {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java
index 14bd06b52..8c8d8c4f2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java
@@ -26,11 +26,11 @@ import org.apache.paimon.lookup.LookupStoreReader;
 import org.apache.paimon.lookup.LookupStoreWriter;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.options.MemorySize;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.FileIOUtils;
-import org.apache.flink.table.store.utils.IOFunction;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FileIOUtils;
+import org.apache.paimon.utils.IOFunction;
 
 import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
 import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeReaders.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeReaders.java
index fa10e6620..3041e0399 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeReaders.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeReaders.java
@@ -26,7 +26,7 @@ import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionWrapper;
 import org.apache.flink.table.store.file.mergetree.compact.ReducerMergeFunctionWrapper;
 import org.apache.flink.table.store.file.mergetree.compact.SortMergeReader;
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeWriter.java
index 4cfa0cdc4..39acf8145 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeWriter.java
@@ -33,7 +33,7 @@ import org.apache.flink.table.store.file.memory.MemorySegmentPool;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBuffer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBuffer.java
index 2c56afaa4..1583a5b69 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBuffer.java
@@ -31,10 +31,10 @@ import org.apache.flink.table.store.file.sort.BinaryExternalSortBuffer;
 import org.apache.flink.table.store.file.sort.BinaryInMemorySortBuffer;
 import org.apache.flink.table.store.file.sort.SortBuffer;
 import org.apache.flink.table.store.file.utils.MutableObjectIterator;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortedRun.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortedRun.java
index 10802ab89..40ff02b7e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortedRun.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortedRun.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.mergetree;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/WriteBuffer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/WriteBuffer.java
index a1a5bcd06..ee361b66e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/WriteBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/WriteBuffer.java
@@ -20,7 +20,7 @@ package org.apache.flink.table.store.file.mergetree;
 
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogMergeTreeRewriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogMergeTreeRewriter.java
index ece5ff705..5e7bbecd4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogMergeTreeRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogMergeTreeRewriter.java
@@ -26,8 +26,8 @@ import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
 import org.apache.flink.table.store.file.io.RollingFileWriter;
 import org.apache.flink.table.store.file.mergetree.MergeTreeReaders;
 import org.apache.flink.table.store.file.mergetree.SortedRun;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.reader.RecordReaderIterator;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.reader.RecordReaderIterator;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogResult.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogResult.java
index a4414e7e0..67e2c1947 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogResult.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogResult.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.mergetree.compact;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReader.java
index 539d3d24d..f12fc39c3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReader.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.utils.Preconditions;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
index 699b27244..84b70d9cc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.file.mergetree.compact;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.Preconditions;
 
 /**
  * Wrapper for {@link MergeFunction}s to produce changelog during a full compaction.
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
index d9f20fb74..02c466ce2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
@@ -23,7 +23,7 @@ import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
 import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
 import org.apache.flink.table.store.file.mergetree.SortedRun;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
index 557075dec..f2e6b543e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
@@ -19,13 +19,13 @@
 package org.apache.flink.table.store.file.mergetree.compact;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.InternalRow;
 
 import java.util.function.Function;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
  * Wrapper for {@link MergeFunction}s to produce changelog by lookup during the compaction involving
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManager.java
index 3234fb682..516d0da1a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManager.java
@@ -24,7 +24,7 @@ import org.apache.flink.table.store.file.compact.CompactUnit;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.mergetree.LevelSortedRun;
 import org.apache.flink.table.store.file.mergetree.Levels;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactRewriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactRewriter.java
index ffc531b9b..f00077011 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactRewriter.java
@@ -26,8 +26,8 @@ import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
 import org.apache.flink.table.store.file.io.RollingFileWriter;
 import org.apache.flink.table.store.file.mergetree.MergeTreeReaders;
 import org.apache.flink.table.store.file.mergetree.SortedRun;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.reader.RecordReaderIterator;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.reader.RecordReaderIterator;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/PartialUpdateMergeFunction.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/PartialUpdateMergeFunction.java
index 9fed302bf..ef1dbfcfa 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/PartialUpdateMergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/PartialUpdateMergeFunction.java
@@ -19,9 +19,9 @@
 package org.apache.flink.table.store.file.mergetree.compact;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.utils.Projection;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.Projection;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
@@ -30,7 +30,7 @@ import javax.annotation.Nullable;
 
 import java.util.List;
 
-import static org.apache.flink.table.store.utils.RowDataUtils.createFieldGetters;
+import static org.apache.paimon.utils.RowDataUtils.createFieldGetters;
 
 /**
  * A {@link MergeFunction} where key is primary key (unique) and value is the partial record, update
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReader.java
index 4602121f8..82dd00466 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReader.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.file.mergetree.compact;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ValueCountMergeFunction.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ValueCountMergeFunction.java
index a4597057d..1ed5acc4a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ValueCountMergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ValueCountMergeFunction.java
@@ -19,14 +19,14 @@
 package org.apache.flink.table.store.file.mergetree.compact;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 
 import javax.annotation.Nullable;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
  * A {@link MergeFunction} where key is the full record and value is a count which represents number
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java
index 3e4be4deb..9da73ff49 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java
@@ -22,9 +22,9 @@ import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionFactory;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.utils.Projection;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.Projection;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
@@ -34,8 +34,8 @@ import javax.annotation.Nullable;
 import java.util.List;
 
 import static org.apache.paimon.options.ConfigOptions.key;
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
-import static org.apache.flink.table.store.utils.RowDataUtils.createFieldGetters;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.RowDataUtils.createFieldGetters;
 
 /**
  * A {@link MergeFunction} where key is primary key (unique) and value is the partial record,
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregator.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregator.java
index a5468af57..3e369b79f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregator.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregator.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import java.io.Serializable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolAndAgg.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
index 8bf8f72ec..462e30652 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 /** bool_and aggregate a field of a row. */
 public class FieldBoolAndAgg extends FieldAggregator {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolOrAgg.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
index deb2d2912..7f1e7841f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 /** bool_or aggregate a field of a row. */
 public class FieldBoolOrAgg extends FieldAggregator {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
index 4326c1be1..9a1dd4475 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 /** last non-null value aggregate a field of a row. */
 public class FieldLastNonNullValueAgg extends FieldAggregator {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastValueAgg.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastValueAgg.java
index 5a5fb3bfd..7a6b96f10 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastValueAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldLastValueAgg.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 /** last value aggregate a field of a row. */
 public class FieldLastValueAgg extends FieldAggregator {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldListaggAgg.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldListaggAgg.java
index f76a02ec2..d1b1094d5 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldListaggAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldListaggAgg.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.utils.StringUtils;
 
 import org.apache.paimon.data.BinaryString;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMaxAgg.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMaxAgg.java
index 1881455ea..bb2e2465d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMaxAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMaxAgg.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypeRoot;
-import org.apache.flink.table.store.utils.RowDataUtils;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeRoot;
+import org.apache.paimon.utils.RowDataUtils;
 
 /** max aggregate a field of a row. */
 public class FieldMaxAgg extends FieldAggregator {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMinAgg.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMinAgg.java
index cfb105183..9111a1070 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMinAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldMinAgg.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypeRoot;
-import org.apache.flink.table.store.utils.RowDataUtils;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeRoot;
+import org.apache.paimon.utils.RowDataUtils;
 
 /** min aggregate a field of a row. */
 public class FieldMinAgg extends FieldAggregator {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
index 0812c671e..98fc7bb2d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 /** primary key aggregate a field of a row. */
 public class FieldPrimaryKeyAgg extends FieldAggregator {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldSumAgg.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldSumAgg.java
index 8167456c1..ab03a6245 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldSumAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldSumAgg.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.utils.DecimalUtils;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.utils.DecimalUtils;
 
 import org.apache.paimon.data.Decimal;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java
index 2a53bc686..c3d7c2eb2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java
@@ -32,10 +32,10 @@ import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.Filter;
-import org.apache.flink.table.store.utils.Preconditions;
-import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Filter;
+import org.apache.paimon.utils.Preconditions;
+import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
 import org.apache.paimon.data.BinaryRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreWrite.java
index b9433f467..114f83c0c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreWrite.java
@@ -27,8 +27,8 @@ import org.apache.flink.table.store.file.utils.ExecutorThreadFactory;
 import org.apache.flink.table.store.file.utils.RecordWriter;
 import org.apache.flink.table.store.file.utils.Restorable;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.sink.CommitMessage;
-import org.apache.flink.table.store.table.sink.CommitMessageImpl;
+import org.apache.paimon.table.sink.CommitMessage;
+import org.apache.paimon.table.sink.CommitMessageImpl;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
index 65ec86e80..5d7d8c815 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
@@ -30,10 +30,10 @@ import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.BulkFormatMapping;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIO;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.Projection;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Projection;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormatDiscover;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreScan.java
index 3a55fa2db..02118da34 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreScan.java
@@ -25,7 +25,7 @@ import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.stats.FieldStatsConverters;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
index 2d4c66fac..2b95cde9e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
@@ -31,10 +31,10 @@ import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.RecordWriter;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
-import org.apache.flink.table.store.reader.RecordReaderIterator;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.LongCounter;
+import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.LongCounter;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java
index 1030d4318..85b8eb726 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java
@@ -34,10 +34,10 @@ import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.MemorySize;
-import org.apache.flink.table.store.table.sink.CommitMessage;
-import org.apache.flink.table.store.table.sink.CommitMessageImpl;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
+import org.apache.paimon.table.sink.CommitMessage;
+import org.apache.paimon.table.sink.CommitMessageImpl;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreRead.java
index b6c0f4393..4a1f48490 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreRead.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.file.operation;
 
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.source.DataSplit;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.source.DataSplit;
 
 import java.io.IOException;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java
index 59a646377..601f64b27 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java
@@ -23,7 +23,7 @@ import org.apache.flink.table.store.file.manifest.FileKind;
 import org.apache.flink.table.store.file.manifest.ManifestEntry;
 import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.utils.Filter;
+import org.apache.paimon.utils.Filter;
 
 import org.apache.paimon.data.BinaryRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreWrite.java
index caaddacf3..ad3a4a312 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreWrite.java
@@ -22,8 +22,8 @@ import org.apache.flink.table.store.file.FileStore;
 import org.apache.flink.table.store.file.disk.IOManager;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.table.sink.CommitMessage;
-import org.apache.flink.table.store.table.sink.SinkRecord;
+import org.apache.paimon.table.sink.CommitMessage;
+import org.apache.paimon.table.sink.SinkRecord;
 
 import org.apache.paimon.data.BinaryRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
index 59e339fb1..ab1384d2f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
@@ -35,10 +35,10 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.paimon.fs.FileIO;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.ProjectedRow;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.ProjectedRow;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormatDiscover;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScan.java
index 4acf52f77..5d0cb256d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScan.java
@@ -26,7 +26,7 @@ import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.stats.FieldStatsConverters;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
index 29a76f87e..2eccdcb6d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
@@ -45,7 +45,7 @@ import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.lookup.hash.HashLookupStoreFactory;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/PartitionExpire.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/PartitionExpire.java
index 773ed9d1a..15da30f65 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/PartitionExpire.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/PartitionExpire.java
@@ -21,8 +21,8 @@ package org.apache.flink.table.store.file.operation;
 import org.apache.flink.table.store.file.manifest.ManifestCommittable;
 import org.apache.flink.table.store.file.manifest.ManifestEntry;
 import org.apache.flink.table.store.file.partition.PartitionTimeExtractor;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/ReverseReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/ReverseReader.java
index 7f0260251..d400e8f4f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/ReverseReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/ReverseReader.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.file.operation;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.types.RowKind;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/KeyValueFieldsExtractor.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/KeyValueFieldsExtractor.java
index e7d112e49..94cc72505 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/KeyValueFieldsExtractor.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/KeyValueFieldsExtractor.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.schema;
 
-import org.apache.flink.table.store.types.DataField;
+import org.apache.paimon.types.DataField;
 
 import java.io.Serializable;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/Schema.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/Schema.java
index 13b0314dd..e4b4e3b88 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/Schema.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/Schema.java
@@ -18,10 +18,10 @@
 
 package org.apache.flink.table.store.file.schema;
 
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaChange.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaChange.java
index 6b46d9f6a..222ccf9f3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaChange.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaChange.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.schema;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java
index dda6b6acf..a64c56f2f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java
@@ -25,15 +25,15 @@ import org.apache.flink.table.store.file.casting.CastFieldGetter;
 import org.apache.paimon.file.predicate.LeafPredicate;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateReplaceVisitor;
-import org.apache.flink.table.store.types.ArrayType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypeFamily;
-import org.apache.flink.table.store.types.MapType;
-import org.apache.flink.table.store.types.MultisetType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.ProjectedRow;
-import org.apache.flink.table.store.utils.RowDataUtils;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeFamily;
+import org.apache.paimon.types.MapType;
+import org.apache.paimon.types.MultisetType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.ProjectedRow;
+import org.apache.paimon.utils.RowDataUtils;
 
 import org.apache.paimon.data.InternalRow;
 
@@ -48,8 +48,8 @@ import java.util.Map;
 import java.util.Optional;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
-import static org.apache.flink.table.store.utils.Preconditions.checkState;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkState;
 
 /** Utils for schema evolution. */
 public class SchemaEvolutionUtil {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java
index 37f562190..313a3cfe3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java
@@ -33,13 +33,13 @@ import org.apache.flink.table.store.file.schema.SchemaChange.UpdateColumnType;
 import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypeCasts;
-import org.apache.flink.table.store.types.DataTypeVisitor;
-import org.apache.flink.table.store.types.ReassignFieldId;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeCasts;
+import org.apache.paimon.types.DataTypeVisitor;
+import org.apache.paimon.types.ReassignFieldId;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 
@@ -60,7 +60,7 @@ import java.util.function.Function;
 import java.util.stream.Collectors;
 
 import static org.apache.flink.table.store.file.utils.FileUtils.listVersionedFiles;
-import static org.apache.flink.table.store.utils.Preconditions.checkState;
+import static org.apache.paimon.utils.Preconditions.checkState;
 
 /** Schema Manager to manage schema versions. */
 public class SchemaManager implements Serializable {
@@ -396,7 +396,7 @@ public class SchemaManager implements Serializable {
                 } else {
                     List<DataField> nestedFields =
                             new ArrayList<>(
-                                    ((org.apache.flink.table.store.types.RowType) field.type())
+                                    ((org.apache.paimon.types.RowType) field.type())
                                             .getFields());
                     updateNestedColumn(nestedFields, updateFieldNames, index + 1, updateFunc);
                     newFields.set(
@@ -404,7 +404,7 @@ public class SchemaManager implements Serializable {
                             new DataField(
                                     field.id(),
                                     field.name(),
-                                    new org.apache.flink.table.store.types.RowType(
+                                    new org.apache.paimon.types.RowType(
                                             field.type().isNullable(), nestedFields),
                                     field.description()));
                 }
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaSerializer.java
index c955c60c6..ff4b8d467 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaSerializer.java
@@ -20,9 +20,9 @@ package org.apache.flink.table.store.file.schema;
 
 import org.apache.flink.table.store.file.utils.JsonDeserializer;
 import org.apache.flink.table.store.file.utils.JsonSerializer;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataTypeJsonParser;
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataTypeJsonParser;
+import org.apache.paimon.utils.StringUtils;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaValidation.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaValidation.java
index 32422a4f6..7e4f6a166 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaValidation.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaValidation.java
@@ -21,12 +21,12 @@ package org.apache.flink.table.store.file.schema;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.paimon.options.ConfigOption;
-import org.apache.flink.table.store.types.ArrayType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.MapType;
-import org.apache.flink.table.store.types.MultisetType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.MapType;
+import org.apache.paimon.types.MultisetType;
+import org.apache.paimon.types.RowType;
 
 import java.util.Arrays;
 import java.util.HashMap;
@@ -43,8 +43,8 @@ import static org.apache.flink.table.store.CoreOptions.SNAPSHOT_NUM_RETAINED_MIN
 import static org.apache.flink.table.store.file.WriteMode.APPEND_ONLY;
 import static org.apache.flink.table.store.file.schema.SystemColumns.KEY_FIELD_PREFIX;
 import static org.apache.flink.table.store.file.schema.SystemColumns.SYSTEM_FIELD_NAMES;
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
-import static org.apache.flink.table.store.utils.Preconditions.checkState;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkState;
 
 /** Validation utils for {@link TableSchema}. */
 public class SchemaValidation {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/TableSchema.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/TableSchema.java
index 2b7565705..af0148b16 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/TableSchema.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/TableSchema.java
@@ -19,10 +19,10 @@
 package org.apache.flink.table.store.file.schema;
 
 import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.Preconditions;
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Preconditions;
+import org.apache.paimon.utils.StringUtils;
 
 import java.io.Serializable;
 import java.util.Arrays;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java
index e6d357e99..6ebe1927c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java
@@ -34,7 +34,7 @@ import java.io.EOFException;
 import java.io.IOException;
 import java.util.ArrayList;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
  * In memory sort buffer for binary row. The main code is copied from Flink {@code
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryMergeIterator.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryMergeIterator.java
index f2668214d..955f739d8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryMergeIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryMergeIterator.java
@@ -24,7 +24,7 @@ import java.io.IOException;
 import java.util.Comparator;
 import java.util.List;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /** Binary version of {@code MergeIterator}. Use {@code RecordComparator} to compare record. */
 public class BinaryMergeIterator<Entry> implements MutableObjectIterator<Entry> {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SpillChannelManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SpillChannelManager.java
index 007659dec..4c7cc0164 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SpillChannelManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SpillChannelManager.java
@@ -26,7 +26,7 @@ import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /** Channel manager to manage the life cycle of spill channels. */
 public class SpillChannelManager implements Closeable {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java
index 6fc066776..4ea0a3d75 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java
@@ -32,7 +32,7 @@ import java.util.Objects;
 
 import static org.apache.flink.table.store.file.utils.SerializationUtils.deserializeBinaryRow;
 import static org.apache.flink.table.store.file.utils.SerializationUtils.serializeBinaryRow;
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /** A serialized row bytes to cache {@link FieldStats}. */
 public class BinaryTableStats {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java
index ed7550de1..859c7e73f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java
@@ -19,12 +19,12 @@
 package org.apache.flink.table.store.file.stats;
 
 import org.apache.flink.table.store.file.casting.CastExecutor;
-import org.apache.flink.table.store.types.ArrayType;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.RowDataUtils;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.RowDataUtils;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsConverters.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsConverters.java
index 9725f9a3a..cab43f66e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsConverters.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsConverters.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.file.stats;
 
 import org.apache.flink.table.store.file.casting.CastExecutor;
 import org.apache.flink.table.store.file.schema.SchemaEvolutionUtil;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.RowType;
 
 import java.util.List;
 import java.util.concurrent.ConcurrentHashMap;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java
index 1eeba424a..3c344b7f2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java
@@ -25,9 +25,9 @@ import org.apache.flink.table.store.file.schema.IndexCastMapping;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaEvolutionUtil;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.Projection;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Projection;
 
 import org.apache.paimon.format.FileFormatDiscover;
 import org.apache.paimon.format.FormatReaderFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ExecutorThreadFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ExecutorThreadFactory.java
index ea3cda455..7624ab65f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ExecutorThreadFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ExecutorThreadFactory.java
@@ -23,7 +23,7 @@ import javax.annotation.Nullable;
 import java.util.concurrent.ThreadFactory;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /**
  * A thread factory intended for use by critical thread pools. Critical thread pools here mean
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java
index 067cc0c42..ea52cceb5 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java
@@ -22,8 +22,8 @@ import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.ConfigOption;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
index cd2204d1a..9f4dbf216 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.utils;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatReaderFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/IteratorRecordReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/IteratorRecordReader.java
index b2e7789c5..4c8c7d932 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/IteratorRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/IteratorRecordReader.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonSerdeUtil.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonSerdeUtil.java
index c8ee6500f..c94459f75 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonSerdeUtil.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/JsonSerdeUtil.java
@@ -20,9 +20,9 @@ package org.apache.flink.table.store.file.utils;
 
 import org.apache.flink.table.store.file.schema.SchemaSerializer;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypeJsonParser;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeJsonParser;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonParser;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/KeyComparatorSupplier.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/KeyComparatorSupplier.java
index 23100bd92..051be6f7c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/KeyComparatorSupplier.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/KeyComparatorSupplier.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.utils;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.GeneratedClass;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java
index 56c3e18da..39dd8fb33 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java
@@ -22,7 +22,7 @@ import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataInputViewStreamWrapper;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/OffsetRow.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/OffsetRow.java
index fad055fd1..ce5af39c0 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/OffsetRow.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/OffsetRow.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RowDataPartitionComputer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RowDataPartitionComputer.java
index dc7102a9c..b8ce90258 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RowDataPartitionComputer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RowDataPartitionComputer.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.RowDataUtils;
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.RowDataUtils;
+import org.apache.paimon.utils.StringUtils;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java
index ddcb846e2..638bc5772 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java
@@ -21,8 +21,8 @@ package org.apache.flink.table.store.file.utils;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.memory.MemorySegment;
-import org.apache.flink.table.store.types.VarBinaryType;
-import org.apache.flink.table.store.types.VarCharType;
+import org.apache.paimon.types.VarBinaryType;
+import org.apache.paimon.types.VarCharType;
 
 import org.apache.paimon.data.BinaryRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SnapshotManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SnapshotManager.java
index c7da43466..f5c02bebd 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SnapshotManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SnapshotManager.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.utils;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/VersionedObjectSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/VersionedObjectSerializer.java
index 6a7676a8e..a4c051235 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/VersionedObjectSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/VersionedObjectSerializer.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
index 7d67c386c..b8d0dd2a7 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.table.sink.BucketComputer;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.table.sink.BucketComputer;
+import org.apache.paimon.types.RowType;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableSet;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AbstractFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
similarity index 90%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AbstractFileStoreTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
index f125892ca..6f8c2a346 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AbstractFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.FileStore;
@@ -29,14 +29,14 @@ import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.table.sink.TableCommitImpl;
-import org.apache.flink.table.store.table.source.BatchDataTableScan;
-import org.apache.flink.table.store.table.source.BatchDataTableScanImpl;
-import org.apache.flink.table.store.table.source.SplitGenerator;
-import org.apache.flink.table.store.table.source.StreamDataTableScan;
-import org.apache.flink.table.store.table.source.StreamDataTableScanImpl;
-import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader;
-import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReaderImpl;
+import org.apache.paimon.table.sink.TableCommitImpl;
+import org.apache.paimon.table.source.BatchDataTableScan;
+import org.apache.paimon.table.source.BatchDataTableScanImpl;
+import org.apache.paimon.table.source.SplitGenerator;
+import org.apache.paimon.table.source.StreamDataTableScan;
+import org.apache.paimon.table.source.StreamDataTableScanImpl;
+import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
+import org.apache.paimon.table.source.snapshot.SnapshotSplitReaderImpl;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
similarity index 87%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
index 1f93960b7..c51425de5 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.AppendOnlyFileStore;
@@ -29,16 +29,16 @@ import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.sink.SinkRecordConverter;
-import org.apache.flink.table.store.table.sink.TableWriteImpl;
-import org.apache.flink.table.store.table.source.AppendOnlySplitGenerator;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.table.source.InnerTableRead;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.SplitGenerator;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.sink.SinkRecordConverter;
+import org.apache.paimon.table.sink.TableWriteImpl;
+import org.apache.paimon.table.source.AppendOnlySplitGenerator;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.table.source.InnerTableRead;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.SplitGenerator;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
similarity index 89%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
index 27c9d138e..28b9ec337 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.KeyValue;
@@ -33,18 +33,18 @@ import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.sink.SinkRecordConverter;
-import org.apache.flink.table.store.table.sink.TableWriteImpl;
-import org.apache.flink.table.store.table.source.InnerTableRead;
-import org.apache.flink.table.store.table.source.KeyValueTableRead;
-import org.apache.flink.table.store.table.source.MergeTreeSplitGenerator;
-import org.apache.flink.table.store.table.source.SplitGenerator;
-import org.apache.flink.table.store.table.source.ValueCountRowDataRecordIterator;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.sink.SinkRecordConverter;
+import org.apache.paimon.table.sink.TableWriteImpl;
+import org.apache.paimon.table.source.InnerTableRead;
+import org.apache.paimon.table.source.KeyValueTableRead;
+import org.apache.paimon.table.source.MergeTreeSplitGenerator;
+import org.apache.paimon.table.source.SplitGenerator;
+import org.apache.paimon.table.source.ValueCountRowDataRecordIterator;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
index 15ffc798a..f67864fee 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
@@ -36,17 +36,17 @@ import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.sink.SequenceGenerator;
-import org.apache.flink.table.store.table.sink.SinkRecordConverter;
-import org.apache.flink.table.store.table.sink.TableWriteImpl;
-import org.apache.flink.table.store.table.source.InnerTableRead;
-import org.apache.flink.table.store.table.source.KeyValueTableRead;
-import org.apache.flink.table.store.table.source.MergeTreeSplitGenerator;
-import org.apache.flink.table.store.table.source.SplitGenerator;
-import org.apache.flink.table.store.table.source.ValueContentRowDataRecordIterator;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.sink.SequenceGenerator;
+import org.apache.paimon.table.sink.SinkRecordConverter;
+import org.apache.paimon.table.sink.TableWriteImpl;
+import org.apache.paimon.table.source.InnerTableRead;
+import org.apache.paimon.table.source.KeyValueTableRead;
+import org.apache.paimon.table.source.MergeTreeSplitGenerator;
+import org.apache.paimon.table.source.SplitGenerator;
+import org.apache.paimon.table.source.ValueContentRowDataRecordIterator;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/DataTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java
similarity index 83%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/DataTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java
index 2ff7770fb..da47ba3d0 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/DataTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.table.source.BatchDataTableScan;
-import org.apache.flink.table.store.table.source.StreamDataTableScan;
-import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader;
+import org.apache.paimon.table.source.BatchDataTableScan;
+import org.apache.paimon.table.source.StreamDataTableScan;
+import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
 
 /** A {@link Table} for data. */
 public interface DataTable extends InnerTable {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
similarity index 89%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
index 572b0f86c..7b53fdace 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.table.sink.TableCommitImpl;
-import org.apache.flink.table.store.table.sink.TableWriteImpl;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.table.sink.TableCommitImpl;
+import org.apache.paimon.table.sink.TableWriteImpl;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTableFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTableFactory.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
index 37e9aa4c4..4aae3148a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTableFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/InnerTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/InnerTable.java
similarity index 65%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/InnerTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/InnerTable.java
index 26af910e1..456834ebc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/InnerTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/InnerTable.java
@@ -16,19 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
-
-import org.apache.flink.table.store.table.sink.BatchWriteBuilder;
-import org.apache.flink.table.store.table.sink.BatchWriteBuilderImpl;
-import org.apache.flink.table.store.table.sink.InnerTableCommit;
-import org.apache.flink.table.store.table.sink.InnerTableWrite;
-import org.apache.flink.table.store.table.sink.StreamWriteBuilder;
-import org.apache.flink.table.store.table.sink.StreamWriteBuilderImpl;
-import org.apache.flink.table.store.table.source.InnerStreamTableScan;
-import org.apache.flink.table.store.table.source.InnerTableRead;
-import org.apache.flink.table.store.table.source.InnerTableScan;
-import org.apache.flink.table.store.table.source.ReadBuilder;
-import org.apache.flink.table.store.table.source.ReadBuilderImpl;
+package org.apache.paimon.table;
+
+import org.apache.paimon.table.sink.BatchWriteBuilder;
+import org.apache.paimon.table.sink.BatchWriteBuilderImpl;
+import org.apache.paimon.table.sink.InnerTableCommit;
+import org.apache.paimon.table.sink.InnerTableWrite;
+import org.apache.paimon.table.sink.StreamWriteBuilder;
+import org.apache.paimon.table.sink.StreamWriteBuilderImpl;
+import org.apache.paimon.table.source.InnerStreamTableScan;
+import org.apache.paimon.table.source.InnerTableRead;
+import org.apache.paimon.table.source.InnerTableScan;
+import org.apache.paimon.table.source.ReadBuilder;
+import org.apache.paimon.table.source.ReadBuilderImpl;
 
 /** Inner table for implementation, provide newScan, newRead ... directly. */
 public interface InnerTable extends Table {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ReadonlyTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/ReadonlyTable.java
similarity index 86%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ReadonlyTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/ReadonlyTable.java
index ac25a2a76..479d930f6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ReadonlyTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/ReadonlyTable.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
-import org.apache.flink.table.store.table.sink.BatchWriteBuilder;
-import org.apache.flink.table.store.table.sink.InnerTableCommit;
-import org.apache.flink.table.store.table.sink.InnerTableWrite;
-import org.apache.flink.table.store.table.sink.StreamWriteBuilder;
-import org.apache.flink.table.store.table.source.InnerStreamTableScan;
+import org.apache.paimon.table.sink.BatchWriteBuilder;
+import org.apache.paimon.table.sink.InnerTableCommit;
+import org.apache.paimon.table.sink.InnerTableWrite;
+import org.apache.paimon.table.sink.StreamWriteBuilder;
+import org.apache.paimon.table.source.InnerStreamTableScan;
 
 /** Readonly table which only provide implementation for scan and read. */
 public interface ReadonlyTable extends InnerTable {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/SupportsPartition.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/SupportsPartition.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/SupportsPartition.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/SupportsPartition.java
index 7d2944ff0..9a13d8d13 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/SupportsPartition.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/SupportsPartition.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/Table.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/Table.java
similarity index 84%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/Table.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/Table.java
index 974114373..3159d03e7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/Table.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/Table.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
-import org.apache.flink.table.store.table.sink.BatchWriteBuilder;
-import org.apache.flink.table.store.table.sink.StreamWriteBuilder;
-import org.apache.flink.table.store.table.source.ReadBuilder;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.table.sink.BatchWriteBuilder;
+import org.apache.paimon.table.sink.StreamWriteBuilder;
+import org.apache.paimon.table.source.ReadBuilder;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/TableUtils.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/TableUtils.java
similarity index 80%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/TableUtils.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/TableUtils.java
index 037ec8546..b6cf73e7b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/TableUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/TableUtils.java
@@ -16,20 +16,20 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateFilter;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.sink.BatchTableCommit;
-import org.apache.flink.table.store.table.sink.BatchTableWrite;
-import org.apache.flink.table.store.table.sink.BatchWriteBuilder;
-import org.apache.flink.table.store.table.sink.InnerTableCommit;
-import org.apache.flink.table.store.table.source.ReadBuilder;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.utils.CloseableIterator;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.sink.BatchTableCommit;
+import org.apache.paimon.table.sink.BatchTableWrite;
+import org.apache.paimon.table.sink.BatchWriteBuilder;
+import org.apache.paimon.table.sink.InnerTableCommit;
+import org.apache.paimon.table.source.ReadBuilder;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.CloseableIterator;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableCommit.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchTableCommit.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableCommit.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchTableCommit.java
index 3bff2ce73..242263f64 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableCommit.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchTableCommit.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchTableWrite.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableWrite.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchTableWrite.java
index b40276c06..30c05ee99 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchTableWrite.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchWriteBuilder.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilder.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchWriteBuilder.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilder.java
index d90b46a0f..c2e725adc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchWriteBuilder.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchWriteBuilderImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilderImpl.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchWriteBuilderImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilderImpl.java
index c7694c9e1..a1342e652 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchWriteBuilderImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilderImpl.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.table.InnerTable;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.table.InnerTable;
+import org.apache.paimon.types.RowType;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BucketComputer.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BucketComputer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
index 6fce6a210..9cc44e1c1 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BucketComputer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessage.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessage.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessage.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessage.java
index c4af9c4fd..b969bb18d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessage.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessage.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
index 494204360..587fcd286 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.file.io.CompactIncrement;
 import org.apache.flink.table.store.file.io.NewFilesIncrement;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageSerializer.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
similarity index 99%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageSerializer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
index 2f4bc7352..e66fd69d9 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.file.io.CompactIncrement;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/InnerTableCommit.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/InnerTableCommit.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
index e9a792825..aff78b51b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/InnerTableCommit.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.file.operation.Lock;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/InnerTableWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableWrite.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/InnerTableWrite.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableWrite.java
index e2b51378b..a7044adcf 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/InnerTableWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableWrite.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 /** Inner {@link TableWrite} contains overwrite setter. */
 public interface InnerTableWrite extends StreamTableWrite, BatchTableWrite {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/PartitionComputer.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/PartitionComputer.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
index c54418cd7..d7d173726 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/PartitionComputer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SequenceGenerator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SequenceGenerator.java
similarity index 80%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SequenceGenerator.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SequenceGenerator.java
index 32040e997..07e8f98be 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SequenceGenerator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SequenceGenerator.java
@@ -16,24 +16,24 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
-
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.CharType;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypeDefaultVisitor;
-import org.apache.flink.table.store.types.DateType;
-import org.apache.flink.table.store.types.DecimalType;
-import org.apache.flink.table.store.types.DoubleType;
-import org.apache.flink.table.store.types.FloatType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.LocalZonedTimestampType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.SmallIntType;
-import org.apache.flink.table.store.types.TimestampType;
-import org.apache.flink.table.store.types.TinyIntType;
-import org.apache.flink.table.store.types.VarCharType;
-import org.apache.flink.table.store.utils.RowDataUtils;
+package org.apache.paimon.table.sink;
+
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.CharType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeDefaultVisitor;
+import org.apache.paimon.types.DateType;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.DoubleType;
+import org.apache.paimon.types.FloatType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.LocalZonedTimestampType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.SmallIntType;
+import org.apache.paimon.types.TimestampType;
+import org.apache.paimon.types.TinyIntType;
+import org.apache.paimon.types.VarCharType;
+import org.apache.paimon.utils.RowDataUtils;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecord.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecord.java
similarity index 90%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecord.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecord.java
index a9edb602e..2b7021ee7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecord.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecord.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /** A sink record contains key, row and partition, bucket information. */
 public class SinkRecord {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecordConverter.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecordConverter.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
index 799b42c77..c474413ce 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecordConverter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableCommit.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamTableCommit.java
similarity index 98%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableCommit.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamTableCommit.java
index c788a7b95..068f6430c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableCommit.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamTableCommit.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamTableWrite.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableWrite.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamTableWrite.java
index 649df6f75..b5545eb18 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamTableWrite.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamWriteBuilder.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilder.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamWriteBuilder.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilder.java
index e51911765..f147a17c3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamWriteBuilder.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamWriteBuilderImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilderImpl.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamWriteBuilderImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilderImpl.java
index c59887759..402b0beb2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamWriteBuilderImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilderImpl.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.table.InnerTable;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.table.InnerTable;
+import org.apache.paimon.types.RowType;
 
 import java.util.UUID;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableCommit.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommit.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableCommit.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommit.java
index a8b8d4cd1..8b60f1a17 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableCommit.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommit.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.table.Table;
+import org.apache.paimon.table.Table;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableCommitImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableCommitImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
index 528e5e606..ad67bfd37 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableCommitImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.file.manifest.ManifestCommittable;
 import org.apache.flink.table.store.file.operation.FileStoreCommit;
@@ -32,7 +32,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkState;
+import static org.apache.paimon.utils.Preconditions.checkState;
 
 /**
  * An abstraction layer above {@link FileStoreCommit} and {@link FileStoreExpire} to provide
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWrite.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
index 52d704338..18b0a72ff 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.file.disk.IOManager;
-import org.apache.flink.table.store.table.Table;
+import org.apache.paimon.table.Table;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWriteImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWriteImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
index 58215b955..c824791fa 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWriteImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.file.disk.IOManager;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -29,7 +29,7 @@ import org.apache.paimon.data.InternalRow;
 
 import java.util.List;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkState;
+import static org.apache.paimon.utils.Preconditions.checkState;
 
 /**
  * {@link TableWrite} implementation.
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/WriteBuilder.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/WriteBuilder.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/WriteBuilder.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/sink/WriteBuilder.java
index a52f6401f..d33a51d7f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/WriteBuilder.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/WriteBuilder.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AbstractDataTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
similarity index 82%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AbstractDataTableScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
index 935125c97..c55758fc6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AbstractDataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
@@ -16,23 +16,23 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.operation.FileStoreScan;
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.table.source.snapshot.CompactedStartingScanner;
-import org.apache.flink.table.store.table.source.snapshot.ContinuousFromSnapshotStartingScanner;
-import org.apache.flink.table.store.table.source.snapshot.ContinuousFromTimestampStartingScanner;
-import org.apache.flink.table.store.table.source.snapshot.ContinuousLatestStartingScanner;
-import org.apache.flink.table.store.table.source.snapshot.FullStartingScanner;
-import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader;
-import org.apache.flink.table.store.table.source.snapshot.StartingScanner;
-import org.apache.flink.table.store.table.source.snapshot.StaticFromSnapshotStartingScanner;
-import org.apache.flink.table.store.table.source.snapshot.StaticFromTimestampStartingScanner;
-import org.apache.flink.table.store.utils.Filter;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.table.source.snapshot.CompactedStartingScanner;
+import org.apache.paimon.table.source.snapshot.ContinuousFromSnapshotStartingScanner;
+import org.apache.paimon.table.source.snapshot.ContinuousFromTimestampStartingScanner;
+import org.apache.paimon.table.source.snapshot.ContinuousLatestStartingScanner;
+import org.apache.paimon.table.source.snapshot.FullStartingScanner;
+import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
+import org.apache.paimon.table.source.snapshot.StartingScanner;
+import org.apache.paimon.table.source.snapshot.StaticFromSnapshotStartingScanner;
+import org.apache.paimon.table.source.snapshot.StaticFromTimestampStartingScanner;
+import org.apache.paimon.utils.Filter;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AppendOnlySplitGenerator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AppendOnlySplitGenerator.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
index 27780e855..60911d012 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AppendOnlySplitGenerator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.utils.OrderedPacking;
+import org.apache.paimon.utils.OrderedPacking;
 
 import java.util.List;
 import java.util.function.Function;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/BatchDataTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScan.java
similarity index 88%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/BatchDataTableScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScan.java
index 787aa7e95..4a3e0bcf7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/BatchDataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScan.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.table.DataTable;
-import org.apache.flink.table.store.table.source.snapshot.StartingScanner;
+import org.apache.paimon.table.DataTable;
+import org.apache.paimon.table.source.snapshot.StartingScanner;
 
 import java.io.Serializable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/BatchDataTableScanImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
similarity index 91%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/BatchDataTableScanImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
index 1bd7dacf1..ace89db99 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/BatchDataTableScanImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader;
-import org.apache.flink.table.store.table.source.snapshot.StartingScanner;
+import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
+import org.apache.paimon.table.source.snapshot.StartingScanner;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataSplit.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
similarity index 99%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataSplit.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
index 6ae99ea29..151646c51 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataSplit.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataTableScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
index 8e72638d4..bb2f96ec8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.utils.Filter;
+import org.apache.paimon.utils.Filter;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/EndOfScanException.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/EndOfScanException.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/EndOfScanException.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/EndOfScanException.java
index 000c2e1a7..167de5907 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/EndOfScanException.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/EndOfScanException.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerStreamTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerStreamTableScan.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerStreamTableScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerStreamTableScan.java
index 8ddeb7ae2..e36a40e49 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerStreamTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerStreamTableScan.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 /** Streaming {@link InnerTableScan} with {@link StreamTableScan}. */
 public interface InnerStreamTableScan extends InnerTableScan, StreamTableScan {}
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableRead.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerTableRead.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableRead.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerTableRead.java
index 37b07fe04..47829e634 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerTableRead.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerTableScan.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerTableScan.java
index eba70a583..a995ab293 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerTableScan.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/KeyValueTableRead.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/KeyValueTableRead.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
index e5a5d7b4c..41ace0185 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/KeyValueTableRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.operation.KeyValueFileStoreRead;
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/MergeTreeSplitGenerator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/MergeTreeSplitGenerator.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
index a20d6baef..2f8b57766 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/MergeTreeSplitGenerator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.mergetree.SortedRun;
 import org.apache.flink.table.store.file.mergetree.compact.IntervalPartition;
-import org.apache.flink.table.store.utils.OrderedPacking;
+import org.apache.paimon.utils.OrderedPacking;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilder.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilder.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
index 77ee3b582..2799df317 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilder.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilderImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadBuilderImpl.java
similarity index 91%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilderImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadBuilderImpl.java
index 9341f7419..fa5598950 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilderImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadBuilderImpl.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.table.InnerTable;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.Projection;
-import org.apache.flink.table.store.utils.TypeUtils;
+import org.apache.paimon.table.InnerTable;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Projection;
+import org.apache.paimon.utils.TypeUtils;
 
 import java.util.Arrays;
 import java.util.Objects;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadOnceTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadOnceTableScan.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadOnceTableScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadOnceTableScan.java
index 357117d22..7efe2c4ff 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadOnceTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadOnceTableScan.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 /** An {@link InnerTableScan} for reading only once, this is for batch scan. */
 public abstract class ReadOnceTableScan implements InnerTableScan {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ResetRowKindRecordIterator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ResetRowKindRecordIterator.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
index 765741286..ba299fc7d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ResetRowKindRecordIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/Split.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/Split.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/Split.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/Split.java
index bf35c505e..8bc4ff034 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/Split.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/Split.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/SplitGenerator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/SplitGenerator.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
index 6bb7daac0..dfdb33fa2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/SplitGenerator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamDataTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamDataTableScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
index 46922c4ba..d8cec34d0 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamDataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.table.DataTable;
-import org.apache.flink.table.store.table.source.snapshot.FollowUpScanner;
-import org.apache.flink.table.store.table.source.snapshot.StartingScanner;
+import org.apache.paimon.table.DataTable;
+import org.apache.paimon.table.source.snapshot.FollowUpScanner;
+import org.apache.paimon.table.source.snapshot.StartingScanner;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamDataTableScanImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
similarity index 89%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamDataTableScanImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
index c0e61caa1..3d0348f89 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamDataTableScanImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
@@ -16,20 +16,20 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.source.snapshot.BoundedWatermarkFollowUpScanner;
-import org.apache.flink.table.store.table.source.snapshot.CompactedStartingScanner;
-import org.apache.flink.table.store.table.source.snapshot.CompactionChangelogFollowUpScanner;
-import org.apache.flink.table.store.table.source.snapshot.DeltaFollowUpScanner;
-import org.apache.flink.table.store.table.source.snapshot.FollowUpScanner;
-import org.apache.flink.table.store.table.source.snapshot.FullStartingScanner;
-import org.apache.flink.table.store.table.source.snapshot.InputChangelogFollowUpScanner;
-import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader;
-import org.apache.flink.table.store.table.source.snapshot.StartingScanner;
+import org.apache.paimon.table.source.snapshot.BoundedWatermarkFollowUpScanner;
+import org.apache.paimon.table.source.snapshot.CompactedStartingScanner;
+import org.apache.paimon.table.source.snapshot.CompactionChangelogFollowUpScanner;
+import org.apache.paimon.table.source.snapshot.DeltaFollowUpScanner;
+import org.apache.paimon.table.source.snapshot.FollowUpScanner;
+import org.apache.paimon.table.source.snapshot.FullStartingScanner;
+import org.apache.paimon.table.source.snapshot.InputChangelogFollowUpScanner;
+import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
+import org.apache.paimon.table.source.snapshot.StartingScanner;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamTableScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
index 82ff8cd13..96205e2ce 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.utils.Restorable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableRead.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableRead.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableRead.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableRead.java
index 9050e6543..9b753c610 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableRead.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
 import org.apache.flink.table.store.file.operation.FileStoreRead;
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableScan.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableScan.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableScan.java
index 1a9f42243..a28a02750 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableScan.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.table.Table;
+import org.apache.paimon.table.Table;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableStreamingReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableStreamingReader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
index e66ce7daa..157dcc46a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableStreamingReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateFilter;
-import org.apache.flink.table.store.reader.RecordReaderIterator;
-import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.source.DataTableScan.DataFilePlan;
-import org.apache.flink.table.store.utils.TypeUtils;
+import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.source.DataTableScan.DataFilePlan;
+import org.apache.paimon.utils.TypeUtils;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueContentRowDataRecordIterator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueContentRowDataRecordIterator.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
index 100fc287d..1597fd10d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueContentRowDataRecordIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueCountRowDataRecordIterator.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
similarity index 92%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueCountRowDataRecordIterator.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
index 4411ee620..c3e0dff0e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueCountRowDataRecordIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/BoundedWatermarkFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
index cb35dcb78..6a054329c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.table.source.DataTableScan.DataFilePlan;
+import org.apache.paimon.table.source.DataTableScan.DataFilePlan;
 
 /**
  * {@link FollowUpScanner} for bounded watermark, end scanning when a snapshot larger than bounded
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/CompactedStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/CompactedStartingScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
index 72a97f5ce..feb6a360d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/CompactedStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.source.DataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/CompactionChangelogFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/CompactionChangelogFollowUpScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
index 8a47cf174..7649d6abf 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/CompactionChangelogFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.table.source.DataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
index a8c7e8ba4..e6f58b067 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.table.source.DataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorStartingScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
index 8a9121666..991c1b526 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.source.DataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
index c7e2a78e3..01a4a2a1b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.source.DataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
 
 import java.util.Collections;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousFromTimestampStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
index 533931973..c415cc350 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.source.DataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousLatestStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousLatestStartingScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
index e64334749..5e5bb47ba 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/ContinuousLatestStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.source.DataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/DeltaFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/DeltaFollowUpScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
index b23a9c626..a6bd023a4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/DeltaFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.table.source.DataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/FollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
similarity index 88%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/FollowUpScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
index 0c424185e..988388cf4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/FollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.table.source.StreamDataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.table.source.StreamDataTableScan;
 
 /** Helper class for the follow-up planning of {@link StreamDataTableScan}. */
 public interface FollowUpScanner {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/FullStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/FullStartingScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
index 1f0fa9e29..9a5fb0b2e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/FullStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.source.DataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/InputChangelogFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/InputChangelogFollowUpScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
index 8e241dea1..f1de19e91 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/InputChangelogFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.table.source.DataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReader.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
index 36e037f72..2e3803a5e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.table.source.SplitGenerator;
-import org.apache.flink.table.store.utils.Filter;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.table.source.SplitGenerator;
+import org.apache.paimon.utils.Filter;
 
 import org.apache.paimon.data.BinaryRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReaderImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
similarity index 95%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReaderImpl.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
index 356d09c5c..fcb82f498 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReaderImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
@@ -30,9 +30,9 @@ import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.table.source.SplitGenerator;
-import org.apache.flink.table.store.utils.Filter;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.table.source.SplitGenerator;
+import org.apache.paimon.utils.Filter;
 
 import org.apache.paimon.data.BinaryRow;
 
@@ -44,7 +44,7 @@ import java.util.Optional;
 import java.util.function.BiConsumer;
 
 import static org.apache.paimon.file.predicate.PredicateBuilder.transformFieldMapping;
-import static org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader.generateSplits;
+import static org.apache.paimon.table.source.snapshot.SnapshotSplitReader.generateSplits;
 
 /** Implementation of {@link SnapshotSplitReader}. */
 public class SnapshotSplitReaderImpl implements SnapshotSplitReader {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/StartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
similarity index 81%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/StartingScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
index 170f0f72b..1da5a7386 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/StartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.source.BatchDataTableScan;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.table.source.StreamDataTableScan;
+import org.apache.paimon.table.source.BatchDataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.table.source.StreamDataTableScan;
 
 /**
  * Helper class for the first planning of {@link BatchDataTableScan} and {@link
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/StaticFromSnapshotStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/StaticFromSnapshotStartingScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
index ce5a341d7..b94d0212a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/StaticFromSnapshotStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.source.DataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
 
 /**
  * {@link StartingScanner} for the {@link CoreOptions.StartupMode#FROM_SNAPSHOT} startup mode of a
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/StaticFromTimestampStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
similarity index 94%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/StaticFromTimestampStartingScanner.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
index eb312b535..a1dcda61d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/StaticFromTimestampStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.source.DataTableScan;
+import org.apache.paimon.table.source.DataTableScan;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/AuditLogTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
similarity index 91%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/AuditLogTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
index ca9a0bdc4..b9f814261 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/AuditLogTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.system;
+package org.apache.paimon.table.system;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.operation.ScanKind;
@@ -27,26 +27,26 @@ import org.apache.paimon.file.predicate.PredicateReplaceVisitor;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.DataTable;
-import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.ReadonlyTable;
-import org.apache.flink.table.store.table.Table;
-import org.apache.flink.table.store.table.source.BatchDataTableScan;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.table.source.InnerTableRead;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.StreamDataTableScan;
-import org.apache.flink.table.store.table.source.snapshot.FollowUpScanner;
-import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader;
-import org.apache.flink.table.store.table.source.snapshot.StartingScanner;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.VarCharType;
-import org.apache.flink.table.store.utils.Filter;
-import org.apache.flink.table.store.utils.ProjectedRow;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.DataTable;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.ReadonlyTable;
+import org.apache.paimon.table.Table;
+import org.apache.paimon.table.source.BatchDataTableScan;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.table.source.InnerTableRead;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.StreamDataTableScan;
+import org.apache.paimon.table.source.snapshot.FollowUpScanner;
+import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
+import org.apache.paimon.table.source.snapshot.StartingScanner;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarCharType;
+import org.apache.paimon.utils.Filter;
+import org.apache.paimon.utils.ProjectedRow;
 
 import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/BucketsTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
similarity index 84%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/BucketsTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
index 0b8c6fed2..8c5422dc9 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/BucketsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.system;
+package org.apache.paimon.table.system;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -26,22 +26,22 @@ import org.apache.flink.table.store.file.utils.IteratorRecordReader;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.DataTable;
-import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.ReadonlyTable;
-import org.apache.flink.table.store.table.Table;
-import org.apache.flink.table.store.table.source.BatchDataTableScan;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.table.source.InnerTableRead;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.StreamDataTableScan;
-import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.VarBinaryType;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.DataTable;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.ReadonlyTable;
+import org.apache.paimon.table.Table;
+import org.apache.paimon.table.source.BatchDataTableScan;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.table.source.InnerTableRead;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.StreamDataTableScan;
+import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarBinaryType;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
similarity index 93%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
index f2d3c7939..909b268e9 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.system;
+package org.apache.paimon.table.system;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
@@ -28,23 +28,23 @@ import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.flink.table.store.file.stats.FieldStatsConverters;
 import org.apache.flink.table.store.file.utils.IteratorRecordReader;
 import org.apache.flink.table.store.file.utils.SerializationUtils;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.ReadonlyTable;
-import org.apache.flink.table.store.table.Table;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.table.source.InnerTableRead;
-import org.apache.flink.table.store.table.source.InnerTableScan;
-import org.apache.flink.table.store.table.source.ReadOnceTableScan;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataTypes;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.ProjectedRow;
-import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.ReadonlyTable;
+import org.apache.paimon.table.Table;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.table.source.InnerTableRead;
+import org.apache.paimon.table.source.InnerTableScan;
+import org.apache.paimon.table.source.ReadOnceTableScan;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataTypes;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.ProjectedRow;
+import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/OptionsTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
similarity index 90%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/OptionsTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
index 70c74b3fc..34221f5be 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/OptionsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
@@ -16,23 +16,23 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.system;
+package org.apache.paimon.table.system;
 
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.IteratorRecordReader;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.ReadonlyTable;
-import org.apache.flink.table.store.table.Table;
-import org.apache.flink.table.store.table.source.InnerTableRead;
-import org.apache.flink.table.store.table.source.InnerTableScan;
-import org.apache.flink.table.store.table.source.ReadOnceTableScan;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.ProjectedRow;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.ReadonlyTable;
+import org.apache.paimon.table.Table;
+import org.apache.paimon.table.source.InnerTableRead;
+import org.apache.paimon.table.source.InnerTableScan;
+import org.apache.paimon.table.source.ReadOnceTableScan;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.ProjectedRow;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SchemasTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
similarity index 89%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SchemasTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
index 2164631b7..93ee28ffb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SchemasTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.system;
+package org.apache.paimon.table.system;
 
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.SchemaManager;
@@ -26,18 +26,18 @@ import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
 import org.apache.flink.table.store.file.utils.SerializationUtils;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.ReadonlyTable;
-import org.apache.flink.table.store.table.Table;
-import org.apache.flink.table.store.table.source.InnerTableRead;
-import org.apache.flink.table.store.table.source.InnerTableScan;
-import org.apache.flink.table.store.table.source.ReadOnceTableScan;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.TableRead;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.ProjectedRow;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.ReadonlyTable;
+import org.apache.paimon.table.Table;
+import org.apache.paimon.table.source.InnerTableRead;
+import org.apache.paimon.table.source.InnerTableScan;
+import org.apache.paimon.table.source.ReadOnceTableScan;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.ProjectedRow;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SnapshotsTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
similarity index 90%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SnapshotsTable.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
index 10a3bd5f8..9a4dea4bb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SnapshotsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.system;
+package org.apache.paimon.table.system;
 
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.paimon.file.predicate.Predicate;
@@ -25,18 +25,18 @@ import org.apache.flink.table.store.file.utils.SerializationUtils;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.table.ReadonlyTable;
-import org.apache.flink.table.store.table.Table;
-import org.apache.flink.table.store.table.source.InnerTableRead;
-import org.apache.flink.table.store.table.source.InnerTableScan;
-import org.apache.flink.table.store.table.source.ReadOnceTableScan;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.TimestampType;
-import org.apache.flink.table.store.utils.ProjectedRow;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.table.ReadonlyTable;
+import org.apache.paimon.table.Table;
+import org.apache.paimon.table.source.InnerTableRead;
+import org.apache.paimon.table.source.InnerTableScan;
+import org.apache.paimon.table.source.ReadOnceTableScan;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.TimestampType;
+import org.apache.paimon.utils.ProjectedRow;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SystemTableLoader.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SystemTableLoader.java
similarity index 75%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SystemTableLoader.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/table/system/SystemTableLoader.java
index 1dfc8e7a8..97c117617 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SystemTableLoader.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SystemTableLoader.java
@@ -16,20 +16,20 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.system;
+package org.apache.paimon.table.system;
 
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.Table;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.Table;
 
 import javax.annotation.Nullable;
 
-import static org.apache.flink.table.store.table.system.AuditLogTable.AUDIT_LOG;
-import static org.apache.flink.table.store.table.system.FilesTable.FILES;
-import static org.apache.flink.table.store.table.system.OptionsTable.OPTIONS;
-import static org.apache.flink.table.store.table.system.SchemasTable.SCHEMAS;
-import static org.apache.flink.table.store.table.system.SnapshotsTable.SNAPSHOTS;
+import static org.apache.paimon.table.system.AuditLogTable.AUDIT_LOG;
+import static org.apache.paimon.table.system.FilesTable.FILES;
+import static org.apache.paimon.table.system.OptionsTable.OPTIONS;
+import static org.apache.paimon.table.system.SchemasTable.SCHEMAS;
+import static org.apache.paimon.table.system.SnapshotsTable.SNAPSHOTS;
 
 /** Loader to load system {@link Table}s. */
 public class SystemTableLoader {
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
index a79a6bddd..ae8a5c638 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
@@ -23,9 +23,9 @@ import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.PositionOutputStream;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java
index 8c5757567..fba9c0a0b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java
@@ -45,10 +45,10 @@ import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.reader.RecordReaderIterator;
-import org.apache.flink.table.store.table.sink.CommitMessageImpl;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.table.sink.CommitMessageImpl;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java
index 7de9fdab1..690cbf505 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java
@@ -23,15 +23,15 @@ import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.table.SchemaEvolutionTableTestBase;
-import org.apache.flink.table.store.types.ArrayType;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.VarCharType;
+import org.apache.paimon.table.SchemaEvolutionTableTestBase;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarCharType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryString;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
index 253b1285a..bf1d94328 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
@@ -29,11 +29,11 @@ import org.apache.flink.table.store.file.utils.RecordWriter;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.VarCharType;
-import org.apache.flink.table.store.utils.Pair;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarCharType;
+import org.apache.paimon.utils.Pair;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryString;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/casting/CastExecutorTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/casting/CastExecutorTest.java
index 95a0138d1..96e188773 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/casting/CastExecutorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/casting/CastExecutorTest.java
@@ -18,22 +18,22 @@
 
 package org.apache.flink.table.store.file.casting;
 
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.BinaryType;
-import org.apache.flink.table.store.types.CharType;
-import org.apache.flink.table.store.types.DateType;
-import org.apache.flink.table.store.types.DecimalType;
-import org.apache.flink.table.store.types.DoubleType;
-import org.apache.flink.table.store.types.FloatType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.SmallIntType;
-import org.apache.flink.table.store.types.TimeType;
-import org.apache.flink.table.store.types.TimestampType;
-import org.apache.flink.table.store.types.TinyIntType;
-import org.apache.flink.table.store.types.VarBinaryType;
-import org.apache.flink.table.store.types.VarCharType;
-import org.apache.flink.table.store.utils.DateTimeUtils;
-import org.apache.flink.table.store.utils.DecimalUtils;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.BinaryType;
+import org.apache.paimon.types.CharType;
+import org.apache.paimon.types.DateType;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.DoubleType;
+import org.apache.paimon.types.FloatType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.SmallIntType;
+import org.apache.paimon.types.TimeType;
+import org.apache.paimon.types.TimestampType;
+import org.apache.paimon.types.TinyIntType;
+import org.apache.paimon.types.VarBinaryType;
+import org.apache.paimon.types.VarCharType;
+import org.apache.paimon.utils.DateTimeUtils;
+import org.apache.paimon.utils.DecimalUtils;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Timestamp;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/catalog/CatalogFactoryTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/catalog/CatalogFactoryTest.java
index 05dd5de63..02ea24d66 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/catalog/CatalogFactoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/catalog/CatalogFactoryTest.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.table.TableType;
+import org.apache.paimon.table.TableType;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hdfs.HdfsConfiguration;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/BufferFileWriterReaderTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/BufferFileWriterReaderTest.java
index f16dc9952..8df2848e0 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/BufferFileWriterReaderTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/BufferFileWriterReaderTest.java
@@ -31,7 +31,7 @@ import java.nio.file.Path;
 import java.util.LinkedList;
 import java.util.Random;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.api.Assertions.fail;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
index c4335fc03..a302e6e95 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
@@ -28,10 +28,10 @@ import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.VarCharType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarCharType;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java
index ad79a2172..ce9152db3 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.format;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.stats.TestFileStatsExtractor;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileStatsExtractor;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
index 8d2f2ffdc..0ea013279 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
@@ -20,7 +20,7 @@ package org.apache.flink.table.store.file.format;
 
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java
index 721e4a0fa..ca32b9c55 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java
@@ -32,13 +32,13 @@ import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.flink.table.store.reader.RecordReaderIterator;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.VarCharType;
-import org.apache.flink.table.store.utils.CloseableIterator;
+import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarCharType;
+import org.apache.paimon.utils.CloseableIterator;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
index 5ad5e42a8..1d7bca9c6 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
@@ -22,10 +22,10 @@ import org.apache.flink.table.store.CoreOptions;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.LongCounter;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.LongCounter;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializerTest.java
index ec28cd185..26434781e 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializerTest.java
@@ -21,8 +21,8 @@ package org.apache.flink.table.store.file.manifest;
 import org.apache.flink.table.store.file.io.CompactIncrement;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.NewFilesIncrement;
-import org.apache.flink.table.store.table.sink.CommitMessage;
-import org.apache.flink.table.store.table.sink.CommitMessageImpl;
+import org.apache.paimon.table.sink.CommitMessage;
+import org.apache.paimon.table.sink.CommitMessageImpl;
 
 import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
index 8363b6b1d..ad5dd2fd0 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
@@ -29,8 +29,8 @@ import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java
index 228a28790..7da9be330 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.TestKeyValueGenerator;
 import org.apache.flink.table.store.file.io.DataFileTestDataGenerator;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.format.FieldStatsCollector;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java
index 1efd4e2cc..e8fdc9cf0 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java
@@ -33,11 +33,11 @@ import org.apache.paimon.fs.Path;
 import org.apache.paimon.io.cache.CacheManager;
 import org.apache.paimon.lookup.hash.HashLookupStoreFactory;
 import org.apache.paimon.options.MemorySize;
-import org.apache.flink.table.store.table.SchemaEvolutionTableTestBase;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataTypes;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.table.SchemaEvolutionTableTestBase;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataTypes;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
index 48c5de8bb..d109ed853 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
@@ -45,13 +45,13 @@ import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.reader.RecordReaderIterator;
-import org.apache.flink.table.store.table.SchemaEvolutionTableTestBase;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.table.SchemaEvolutionTableTestBase;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
@@ -152,7 +152,7 @@ public class MergeTreeTest {
                                         new DataField(
                                                 0,
                                                 "k",
-                                                new org.apache.flink.table.store.types.IntType(
+                                                new org.apache.paimon.types.IntType(
                                                         false)));
                             }
 
@@ -162,7 +162,7 @@ public class MergeTreeTest {
                                         new DataField(
                                                 0,
                                                 "v",
-                                                new org.apache.flink.table.store.types.IntType(
+                                                new org.apache.paimon.types.IntType(
                                                         false)));
                             }
                         });
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBufferTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBufferTestBase.java
index 40c0164e6..f6b558a19 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBufferTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBufferTestBase.java
@@ -28,10 +28,10 @@ import org.apache.flink.table.store.file.mergetree.compact.ValueCountMergeFuncti
 import org.apache.flink.table.store.file.sort.BinaryInMemorySortBuffer;
 import org.apache.flink.table.store.file.utils.ReusingKeyValue;
 import org.apache.flink.table.store.file.utils.ReusingTestData;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.junit.jupiter.api.Test;
 
@@ -42,7 +42,7 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.Queue;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkState;
+import static org.apache.paimon.utils.Preconditions.checkState;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link SortBufferWriteBuffer}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/CombiningRecordReaderTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/CombiningRecordReaderTestBase.java
index 3cbbeae42..16e6c282f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/CombiningRecordReaderTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/CombiningRecordReaderTestBase.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.store.codegen.RecordComparator;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.utils.ReusingTestData;
 import org.apache.flink.table.store.file.utils.TestReusingRecordReader;
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import org.junit.jupiter.api.RepeatedTest;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReaderTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReaderTest.java
index 6fb24c967..d438b19c3 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReaderTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ConcatRecordReaderTest.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.mergetree.compact;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.utils.ReusingTestData;
 import org.apache.flink.table.store.file.utils.TestReusingRecordReader;
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
index ea8e4f223..595a2cd96 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.mergetree.compact;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
index f45d4026a..8250dae64 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.mergetree.compact.aggregate.AggregateMergeFunction;
 import org.apache.flink.table.store.file.mergetree.compact.aggregate.FieldAggregator;
 import org.apache.flink.table.store.file.mergetree.compact.aggregate.FieldSumAgg;
-import org.apache.flink.table.store.types.DataTypes;
+import org.apache.paimon.types.DataTypes;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.InternalRow.FieldGetter;
@@ -33,10 +33,10 @@ import java.util.List;
 import java.util.Map;
 
 import static org.apache.flink.table.store.file.io.DataFileTestUtils.row;
-import static org.apache.flink.table.store.types.RowKind.DELETE;
-import static org.apache.flink.table.store.types.RowKind.INSERT;
-import static org.apache.flink.table.store.types.RowKind.UPDATE_AFTER;
-import static org.apache.flink.table.store.types.RowKind.UPDATE_BEFORE;
+import static org.apache.paimon.types.RowKind.DELETE;
+import static org.apache.paimon.types.RowKind.INSERT;
+import static org.apache.paimon.types.RowKind.UPDATE_AFTER;
+import static org.apache.paimon.types.RowKind.UPDATE_BEFORE;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link LookupChangelogMergeFunctionWrapper}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionTestUtils.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionTestUtils.java
index a62cce6a8..e754460cf 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionTestUtils.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeFunctionTestUtils.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.file.mergetree.compact;
 
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.utils.ReusingTestData;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.Preconditions;
 
 import java.util.ArrayList;
 import java.util.Collections;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
index 6b412d3c8..e2694ebb8 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.mergetree.compact;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.GenericRow;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReaderTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReaderTestBase.java
index 629709227..434d87a3e 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReaderTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReaderTestBase.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.mergetree.compact;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.utils.ReusingTestData;
 import org.apache.flink.table.store.file.utils.TestReusingRecordReader;
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregatorTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregatorTest.java
index bbce72e2d..6fae28cd0 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregatorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregatorTest.java
@@ -18,15 +18,15 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.BooleanType;
-import org.apache.flink.table.store.types.DecimalType;
-import org.apache.flink.table.store.types.DoubleType;
-import org.apache.flink.table.store.types.FloatType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.SmallIntType;
-import org.apache.flink.table.store.types.TinyIntType;
-import org.apache.flink.table.store.types.VarCharType;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.BooleanType;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.DoubleType;
+import org.apache.paimon.types.FloatType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.SmallIntType;
+import org.apache.paimon.types.TinyIntType;
+import org.apache.paimon.types.VarCharType;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java
index 5cd6e84cc..8c98c84fa 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java
@@ -33,7 +33,7 @@ import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.flink.table.store.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.AfterEach;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java
index 5aec9282e..08ba3064e 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java
@@ -31,16 +31,16 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.reader.RecordReaderIterator;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.VarCharType;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarCharType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
@@ -126,7 +126,7 @@ public class KeyValueFileStoreReadTest {
                                         new DataField(
                                                 0,
                                                 "count",
-                                                new org.apache.flink.table.store.types
+                                                new org.apache.paimon.types
                                                         .BigIntType()));
                             }
                         },
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java
index ccebebb34..44af8ab8d 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java
@@ -31,8 +31,8 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java
index 748b6c495..344d8e534 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java
@@ -23,12 +23,12 @@ import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.flink.table.store.table.AbstractFileStoreTable;
-import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.FileStoreTableFactory;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.VarCharType;
+import org.apache.paimon.table.AbstractFileStoreTable;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.FileStoreTableFactory;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarCharType;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/TestCommitThread.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/TestCommitThread.java
index 84a8ce20b..ba84fe945 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/TestCommitThread.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/TestCommitThread.java
@@ -25,8 +25,8 @@ import org.apache.flink.table.store.file.manifest.ManifestCommittable;
 import org.apache.flink.table.store.file.memory.HeapMemorySegmentPool;
 import org.apache.flink.table.store.file.mergetree.MergeTreeWriter;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
-import org.apache.flink.table.store.table.sink.CommitMessageImpl;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.table.sink.CommitMessageImpl;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/DataTypeJsonParserTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/DataTypeJsonParserTest.java
index 0d6dbfec4..d808dee66 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/DataTypeJsonParserTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/DataTypeJsonParserTest.java
@@ -19,29 +19,29 @@
 package org.apache.flink.table.store.file.schema;
 
 import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
-import org.apache.flink.table.store.types.ArrayType;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.BinaryType;
-import org.apache.flink.table.store.types.BooleanType;
-import org.apache.flink.table.store.types.CharType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypeJsonParser;
-import org.apache.flink.table.store.types.DateType;
-import org.apache.flink.table.store.types.DecimalType;
-import org.apache.flink.table.store.types.DoubleType;
-import org.apache.flink.table.store.types.FloatType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.LocalZonedTimestampType;
-import org.apache.flink.table.store.types.MapType;
-import org.apache.flink.table.store.types.MultisetType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.SmallIntType;
-import org.apache.flink.table.store.types.TimeType;
-import org.apache.flink.table.store.types.TimestampType;
-import org.apache.flink.table.store.types.TinyIntType;
-import org.apache.flink.table.store.types.VarBinaryType;
-import org.apache.flink.table.store.types.VarCharType;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.BinaryType;
+import org.apache.paimon.types.BooleanType;
+import org.apache.paimon.types.CharType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeJsonParser;
+import org.apache.paimon.types.DateType;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.DoubleType;
+import org.apache.paimon.types.FloatType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.LocalZonedTimestampType;
+import org.apache.paimon.types.MapType;
+import org.apache.paimon.types.MultisetType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.SmallIntType;
+import org.apache.paimon.types.TimeType;
+import org.apache.paimon.types.TimestampType;
+import org.apache.paimon.types.TinyIntType;
+import org.apache.paimon.types.VarBinaryType;
+import org.apache.paimon.types.VarCharType;
 
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.MethodSource;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java
index ad525afc1..fec8ac7f5 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java
@@ -23,15 +23,15 @@ import org.apache.paimon.file.predicate.IsNotNull;
 import org.apache.paimon.file.predicate.IsNull;
 import org.apache.paimon.file.predicate.LeafPredicate;
 import org.apache.paimon.file.predicate.Predicate;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataTypes;
-import org.apache.flink.table.store.types.DecimalType;
-import org.apache.flink.table.store.types.DoubleType;
-import org.apache.flink.table.store.types.FloatType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.utils.ProjectedRow;
-import org.apache.flink.table.store.utils.Projection;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataTypes;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.DoubleType;
+import org.apache.paimon.types.FloatType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.utils.ProjectedRow;
+import org.apache.paimon.utils.Projection;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaManagerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaManagerTest.java
index 8c21866b4..c4fdd97c3 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaManagerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaManagerTest.java
@@ -24,13 +24,13 @@ import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DoubleType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.MapType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.VarCharType;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DoubleType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.MapType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarCharType;
 
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
@@ -103,11 +103,11 @@ public class SchemaManagerTest {
         List<DataField> fields =
                 Arrays.asList(
                         new DataField(
-                                0, "f0", new org.apache.flink.table.store.types.IntType(false)),
+                                0, "f0", new org.apache.paimon.types.IntType(false)),
                         new DataField(
-                                1, "f1", new org.apache.flink.table.store.types.BigIntType(false)),
+                                1, "f1", new org.apache.paimon.types.BigIntType(false)),
                         new DataField(
-                                2, "f2", new org.apache.flink.table.store.types.VarCharType()));
+                                2, "f2", new org.apache.paimon.types.VarCharType()));
 
         assertThat(latest.isPresent()).isTrue();
         assertThat(tableSchema).isEqualTo(latest.get());
@@ -235,11 +235,11 @@ public class SchemaManagerTest {
         List<DataField> fields =
                 Arrays.asList(
                         new DataField(
-                                0, "f0", new org.apache.flink.table.store.types.DoubleType(false)),
+                                0, "f0", new org.apache.paimon.types.DoubleType(false)),
                         new DataField(
-                                1, "f1", new org.apache.flink.table.store.types.BigIntType(false)),
+                                1, "f1", new org.apache.paimon.types.BigIntType(false)),
                         new DataField(
-                                2, "f2", new org.apache.flink.table.store.types.VarCharType()));
+                                2, "f2", new org.apache.paimon.types.VarCharType()));
 
         assertThat(latest.isPresent()).isTrue();
         assertThat(tableSchema).isEqualTo(latest.get());
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaUtils.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaUtils.java
index f454c078d..0587a88c6 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaUtils.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaUtils.java
@@ -19,9 +19,9 @@
 package org.apache.flink.table.store.file.schema;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Preconditions;
 
 import java.util.List;
 import java.util.Map;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaSerializationTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaSerializationTest.java
index 37ff27b1f..d34949a12 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaSerializationTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaSerializationTest.java
@@ -19,11 +19,11 @@
 package org.apache.flink.table.store.file.schema;
 
 import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
-import org.apache.flink.table.store.types.ArrayType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.MapType;
-import org.apache.flink.table.store.types.MultisetType;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.MapType;
+import org.apache.paimon.types.MultisetType;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaTest.java
index 62f5780dc..bfef56de4 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/TableSchemaTest.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.file.schema;
 
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java
index 2521ffb23..c28707e9e 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java
@@ -20,7 +20,7 @@ package org.apache.flink.table.store.file.sort;
 
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.paimon.memory.MemorySegment;
-import org.apache.flink.table.store.utils.SortUtil;
+import org.apache.paimon.utils.SortUtil;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java
index 98d52a394..76c18d82b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.file.stats;
 
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java
index 495195117..afad43b26 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java
@@ -21,8 +21,8 @@ package org.apache.flink.table.store.file.stats;
 import org.apache.flink.table.store.file.casting.CastExecutor;
 import org.apache.flink.table.store.file.schema.SchemaEvolutionUtil;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.IntType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.IntType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.format.FieldStats;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java
index bdb8508cf..09d6b572f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java
@@ -18,10 +18,10 @@
 
 package org.apache.flink.table.store.file.stats;
 
-import org.apache.flink.table.store.types.ArrayType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.VarCharType;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarCharType;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericArray;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/StatsTestUtils.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/StatsTestUtils.java
index 39f29b851..9be8b4178 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/StatsTestUtils.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/StatsTestUtils.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.file.stats;
 
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
index 974a82ead..5926530dd 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.flink.table.store.file.utils.ObjectSerializer;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FieldStats;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FailingFileIO.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FailingFileIO.java
index 0ce91b791..7184fa95f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FailingFileIO.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FailingFileIO.java
@@ -27,7 +27,7 @@ import org.apache.paimon.fs.PositionOutputStreamWrapper;
 import org.apache.paimon.fs.SeekableInputStream;
 import org.apache.paimon.fs.SeekableInputStreamWrapper;
 import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.flink.table.store.utils.ExceptionUtils;
+import org.apache.paimon.utils.ExceptionUtils;
 
 import java.io.File;
 import java.io.FileNotFoundException;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java
index dc00a4613..9d7a7b888 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java
@@ -21,10 +21,10 @@ package org.apache.flink.table.store.file.utils;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.VarCharType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarCharType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/OffsetRowTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/OffsetRowTest.java
index c54c505d8..3ccc72901 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/OffsetRowTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/OffsetRowTest.java
@@ -17,7 +17,7 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryArrayWriter;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingTestData.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingTestData.java
index de5d31767..d0e7f7aad 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingTestData.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingTestData.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.file.utils;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.Preconditions;
 
 import java.util.ArrayList;
 import java.util.HashSet;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TestReusingRecordReader.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TestReusingRecordReader.java
index 0ef58d6ab..310c4bdcb 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TestReusingRecordReader.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TestReusingRecordReader.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.utils;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TraceableFileIO.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TraceableFileIO.java
index 30d77c14b..8a94e88b7 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TraceableFileIO.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TraceableFileIO.java
@@ -28,7 +28,7 @@ import org.apache.paimon.fs.PositionOutputStreamWrapper;
 import org.apache.paimon.fs.SeekableInputStream;
 import org.apache.paimon.fs.SeekableInputStreamWrapper;
 import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.flink.table.store.utils.ThreadUtils;
+import org.apache.paimon.utils.ThreadUtils;
 
 import javax.annotation.concurrent.GuardedBy;
 
@@ -41,7 +41,7 @@ import java.util.function.Predicate;
 import java.util.function.Supplier;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /** A file system that tracks the number of concurrently open input streams, output streams. */
 public class TraceableFileIO implements FileIO {
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
index dbde1970b..d96442b64 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
index 400c02edd..0d1fd2df3 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
index 1e37c8272..dae2c55e6 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileDataTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileDataTableTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
index 41938dbdf..ca59c31cd 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileDataTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTableTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
index 3dfbb5fb5..c99980c7c 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
@@ -29,11 +29,11 @@ import org.apache.flink.table.store.file.schema.SchemaUtils;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.TableRead;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.TableRead;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
@@ -50,8 +50,8 @@ import java.util.Random;
 import java.util.function.Consumer;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.table.sink.BucketComputer.bucket;
-import static org.apache.flink.table.store.table.sink.BucketComputer.hashcode;
+import static org.apache.paimon.table.sink.BucketComputer.bucket;
+import static org.apache.paimon.table.sink.BucketComputer.hashcode;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for {@link AppendOnlyFileStoreTable}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyTableColumnTypeFileDataTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyTableColumnTypeFileDataTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
index c7988a888..2cc8a55fa 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyTableColumnTypeFileDataTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyTableColumnTypeFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyTableColumnTypeFileMetaTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
index 373fc47e0..4bdcf8d60 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyTableColumnTypeFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyTableFileMetaFilterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyTableFileMetaFilterTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
index 7249fc6ce..d9b2dede5 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyTableFileMetaFilterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountColumnTypeFileDataTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountColumnTypeFileDataTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
index fc8cd3b09..0a808a214 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountColumnTypeFileDataTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountColumnTypeFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountColumnTypeFileMetaTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
index 902a0e063..50e0aa36f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountColumnTypeFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileDataTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileDataTableTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
index 76ac11556..b20cd1df5 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileDataTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileMetaFilterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileMetaFilterTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
index 3df33eea6..1fb3184f8 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileMetaFilterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTableTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
index b185dda88..3a3bc0ffa 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
@@ -31,11 +31,11 @@ import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.TableRead;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyColumnTypeFileDataTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyColumnTypeFileDataTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
index dd0071a79..19ddbc69f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyColumnTypeFileDataTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
@@ -24,7 +24,7 @@ import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.table.source.Split;
+import org.apache.paimon.table.source.Split;
 
 import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileDataTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileDataTableTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
index 53da5518b..079fde7b6 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileDataTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
@@ -24,9 +24,9 @@ import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.TableRead;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.types.RowType;
 
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileMetaFilterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileMetaFilterTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
index 41a815f53..17bcc4997 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileMetaFilterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
@@ -26,7 +26,7 @@ import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.table.source.DataSplit;
+import org.apache.paimon.table.source.DataSplit;
 
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTableTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
index ca647c6e7..e0dd1790d 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
@@ -30,28 +30,28 @@ import org.apache.flink.table.store.file.schema.SchemaUtils;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.table.sink.BatchTableCommit;
-import org.apache.flink.table.store.table.sink.BatchTableWrite;
-import org.apache.flink.table.store.table.sink.BatchWriteBuilder;
-import org.apache.flink.table.store.table.sink.CommitMessage;
-import org.apache.flink.table.store.table.sink.InnerTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.table.source.ReadBuilder;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.StreamDataTableScan;
-import org.apache.flink.table.store.table.source.TableRead;
-import org.apache.flink.table.store.table.source.TableScan;
-import org.apache.flink.table.store.table.source.snapshot.FullStartingScanner;
-import org.apache.flink.table.store.table.source.snapshot.InputChangelogFollowUpScanner;
-import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader;
-import org.apache.flink.table.store.table.system.AuditLogTable;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypes;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.CompatibilityTestUtils;
+import org.apache.paimon.table.sink.BatchTableCommit;
+import org.apache.paimon.table.sink.BatchTableWrite;
+import org.apache.paimon.table.sink.BatchWriteBuilder;
+import org.apache.paimon.table.sink.CommitMessage;
+import org.apache.paimon.table.sink.InnerTableCommit;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.table.source.ReadBuilder;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.StreamDataTableScan;
+import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.table.source.TableScan;
+import org.apache.paimon.table.source.snapshot.FullStartingScanner;
+import org.apache.paimon.table.source.snapshot.InputChangelogFollowUpScanner;
+import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
+import org.apache.paimon.table.system.AuditLogTable;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypes;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.CompatibilityTestUtils;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
index 0a32145ee..fdb587f03 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
@@ -26,7 +26,7 @@ import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.table.source.DataSplit;
+import org.apache.paimon.table.source.DataSplit;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.format.FieldStats;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileDataTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileDataTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
index f067b0bfa..d8d92c4ce 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileDataTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.utils.RowDataUtils;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.utils.RowDataUtils;
 
 import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
similarity index 99%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
index dd28d457b..d77e265d5 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.table.source.DataSplit;
+import org.apache.paimon.table.source.DataSplit;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileDataFilterTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileDataFilterTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
index 91983446e..1c56bccbc 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileDataFilterTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Equal;
@@ -24,11 +24,11 @@ import org.apache.paimon.file.predicate.IsNull;
 import org.apache.paimon.file.predicate.LeafPredicate;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.TableRead;
-import org.apache.flink.table.store.types.DataTypes;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.types.DataTypes;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileMetaFilterTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
similarity index 99%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileMetaFilterTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
index 62a14b4ed..56297d81d 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileMetaFilterTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.table.source.DataSplit;
+import org.apache.paimon.table.source.DataSplit;
 
 import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileStoreTableTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
similarity index 95%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileStoreTableTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
index 4c18e5892..f42c40530 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileStoreTableTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -30,20 +30,20 @@ import org.apache.flink.table.store.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.reader.RecordReaderIterator;
-import org.apache.flink.table.store.table.sink.CommitMessage;
-import org.apache.flink.table.store.table.sink.CommitMessageImpl;
-import org.apache.flink.table.store.table.sink.InnerTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.TableRead;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypes;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.table.sink.CommitMessage;
+import org.apache.paimon.table.sink.CommitMessageImpl;
+import org.apache.paimon.table.sink.InnerTableCommit;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypes;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTableTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
similarity index 93%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTableTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
index 23a98e2d8..f14553ed4 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTableTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -30,27 +30,27 @@ import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.reader.RecordReaderIterator;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataSplit;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.TableRead;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.BinaryType;
-import org.apache.flink.table.store.types.CharType;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DateType;
-import org.apache.flink.table.store.types.DecimalType;
-import org.apache.flink.table.store.types.DoubleType;
-import org.apache.flink.table.store.types.FloatType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.SmallIntType;
-import org.apache.flink.table.store.types.TimestampType;
-import org.apache.flink.table.store.types.VarBinaryType;
-import org.apache.flink.table.store.types.VarCharType;
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataSplit;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.BinaryType;
+import org.apache.paimon.types.CharType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DateType;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.DoubleType;
+import org.apache.paimon.types.FloatType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.SmallIntType;
+import org.apache.paimon.types.TimestampType;
+import org.apache.paimon.types.VarBinaryType;
+import org.apache.paimon.types.VarCharType;
+import org.apache.paimon.utils.StringUtils;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
@@ -75,7 +75,7 @@ import java.util.function.BiConsumer;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Base test class for schema evolution in {@link FileStoreTable}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
index 311ef9f99..b09454ba4 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
@@ -25,15 +25,15 @@ import org.apache.flink.table.store.file.schema.SchemaChange;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.InnerTableRead;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader;
-import org.apache.flink.table.store.types.BigIntType;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.FloatType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.InnerTableRead;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
+import org.apache.paimon.types.BigIntType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.FloatType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.DataFormatTestUtil;
 import org.apache.paimon.data.GenericRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/WritePreemptMemoryTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
similarity index 93%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/WritePreemptMemoryTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
index 56e406ff8..bf75ec614 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/WritePreemptMemoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
@@ -27,10 +27,10 @@ import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.TableRead;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.TableRead;
 
 import org.apache.paimon.data.GenericRow;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/CommitMessageSerializerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/CommitMessageSerializerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
index c46050a6a..f0a057351 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/CommitMessageSerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.file.io.CompactIncrement;
 import org.apache.flink.table.store.file.io.NewFilesIncrement;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/SinkRecordConverterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
similarity index 95%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/SinkRecordConverterTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
index 15e3845d2..9ea99b439 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/SinkRecordConverterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/TableWriteTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
similarity index 94%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/TableWriteTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
index 40bf31fae..ba26be452 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/TableWriteTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.operation.AbstractFileStoreWrite;
@@ -29,13 +29,13 @@ import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.reader.RecordReaderIterator;
-import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.FileStoreTableFactory;
-import org.apache.flink.table.store.table.source.TableScan;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypes;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.FileStoreTableFactory;
+import org.apache.paimon.table.source.TableScan;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypes;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/BatchDataTableScanTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
similarity index 88%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/BatchDataTableScanTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
index 036c26e5b..28bc5d649 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/BatchDataTableScanTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.snapshot.ScannerTestBase;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.snapshot.ScannerTestBase;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/RowDataRecordIteratorTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
similarity index 95%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/RowDataRecordIteratorTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
index 69357d8cf..b3dac2975 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/RowDataRecordIteratorTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.utils.ReusingTestData;
 import org.apache.flink.table.store.file.utils.TestReusingRecordReader;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitGeneratorTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitGeneratorTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
index 715f24c98..e1196d6af 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitGeneratorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
index 6e19e452e..c3b84f57a 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFileTestDataGenerator;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/StreamDataTableScanTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
similarity index 95%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/StreamDataTableScanTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
index 004356235..63f434e15 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/StreamDataTableScanTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.snapshot.ScannerTestBase;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.snapshot.ScannerTestBase;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/ValueContentRowDataRecordIteratorTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
similarity index 95%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/ValueContentRowDataRecordIteratorTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
index 05e640643..0290c7162 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/ValueContentRowDataRecordIteratorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.utils.ReusingTestData;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/ValueCountRowDataRecordIteratorTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/ValueCountRowDataRecordIteratorTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
index 87de0937b..5d2e60ddf 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/ValueCountRowDataRecordIteratorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source;
+package org.apache.paimon.table.source;
 
 import org.apache.flink.table.store.file.utils.ReusingTestData;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.utils.ProjectedRow;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.ProjectedRow;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
similarity index 94%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
index 86497e440..c9243a14f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.manifest.ManifestCommittable;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.sink.TableCommitImpl;
+import org.apache.paimon.table.sink.TableCommitImpl;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/CompactedStartingScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
similarity index 91%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/CompactedStartingScannerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
index 64c0d1d92..a8a284dc1 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/CompactedStartingScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
similarity index 91%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
index 5ea0cf150..1e9ae442f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
@@ -16,18 +16,18 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.table.source.TableRead;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
similarity index 91%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
index 0bc4f3536..bddde856d 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.table.source.TableRead;
-import org.apache.flink.table.store.table.system.BucketsTable;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.table.system.BucketsTable;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorStartingScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
similarity index 90%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
index 3675caf57..690979457 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
similarity index 92%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
index f9bd51eb8..18a6b54d8 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousLatestStartingScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
similarity index 89%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousLatestStartingScannerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
index ee347a9f5..d339f19db 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousLatestStartingScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/DeltaFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
similarity index 89%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/DeltaFollowUpScannerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
index 50947cba5..986622644 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/DeltaFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.table.source.TableRead;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/FullStartingScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
similarity index 89%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/FullStartingScannerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
index 2dc7fb98c..1eb31f653 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/FullStartingScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/InputChangelogFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
similarity index 89%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/InputChangelogFollowUpScannerTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
index 80b8478d9..952501d0f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/InputChangelogFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
@@ -16,18 +16,18 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.source.DataTableScan;
-import org.apache.flink.table.store.table.source.TableRead;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.types.RowKind;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ScannerTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
similarity index 88%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ScannerTestBase.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
index 910cf2a85..8ab4b1758 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ScannerTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.source.snapshot;
+package org.apache.paimon.table.source.snapshot;
 
 import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
 import org.apache.flink.table.store.file.schema.Schema;
@@ -27,16 +27,16 @@ import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.reader.RecordReaderIterator;
-import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.FileStoreTableFactory;
-import org.apache.flink.table.store.table.source.Split;
-import org.apache.flink.table.store.table.source.TableRead;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypes;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.FileStoreTableFactory;
+import org.apache.paimon.table.source.Split;
+import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypes;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/utils/CompatibilityTestUtils.java b/flink-table-store-core/src/test/java/org/apache/paimon/utils/CompatibilityTestUtils.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/utils/CompatibilityTestUtils.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/utils/CompatibilityTestUtils.java
index 377b6af6a..ca2b985bb 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/utils/CompatibilityTestUtils.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/utils/CompatibilityTestUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.io.BufferedOutputStream;
 import java.io.File;
diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
index 196a0ed79..8dd5138de 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
@@ -26,10 +26,10 @@ import org.apache.flink.table.store.file.catalog.Identifier;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.paimon.options.CatalogOptions;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.table.Table;
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataTypes;
-import org.apache.flink.table.store.types.IntType;
+import org.apache.paimon.table.Table;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataTypes;
+import org.apache.paimon.types.IntType;
 
 import org.apache.commons.math3.random.RandomDataGenerator;
 import org.apache.paimon.data.BinaryString;
diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
index 1fe9d5122..1419cc368 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
@@ -20,10 +20,10 @@ package org.apache.paimon.benchmark;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.table.sink.CommitMessage;
-import org.apache.flink.table.store.table.sink.StreamTableCommit;
-import org.apache.flink.table.store.table.sink.StreamTableWrite;
-import org.apache.flink.table.store.table.sink.StreamWriteBuilder;
+import org.apache.paimon.table.sink.CommitMessage;
+import org.apache.paimon.table.sink.StreamTableCommit;
+import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.table.sink.StreamWriteBuilder;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java b/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
index 9d0926806..75f98f835 100644
--- a/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
+++ b/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
@@ -22,7 +22,7 @@ import org.apache.paimon.fs.FileIOLoader;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.hadoop.HadoopFileIOLoader;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.utils.HadoopUtils;
+import org.apache.paimon.utils.HadoopUtils;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.paimon.annotation.Experimental;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
index bf0ca8631..ddd392a6d 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.codegen;
 
-import org.apache.flink.table.store.plugin.PluginLoader;
+import org.apache.paimon.plugin.PluginLoader;
 
 /** Copied and modified from the flink-table-planner-loader module. */
 public class CodeGenLoader {
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
index f7b1dcd3c..da6fcf6b4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.codegen;
 
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenerator.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenerator.java
index 83715d958..34853e603 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenerator.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenerator.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.codegen;
 
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowType;
 
 import java.util.List;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala
index bb4c920fe..68f761665 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala
@@ -18,8 +18,8 @@
 package org.apache.flink.table.store.codegen
 
 import org.apache.paimon.data.serializer.InternalSerializers
-import org.apache.flink.table.store.types.DataType
-import org.apache.flink.table.store.utils.InstantiationUtil
+import org.apache.paimon.types.DataType
+import org.apache.paimon.utils.InstantiationUtil
 
 import GenerateUtils.{newName, newNames}
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java
index 7c2309c29..afccfc800 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.codegen;
 
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.TypeUtils;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.TypeUtils;
 
 import java.util.List;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
index cdc051e93..989e7dbc6 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
@@ -18,7 +18,7 @@
 package org.apache.flink.table.store.codegen
 
 import org.apache.flink.table.store.codegen.GenerateUtils.{newName, ROW_DATA}
-import org.apache.flink.table.store.types.RowType
+import org.apache.paimon.types.RowType
 
 /** A code generator for generating [[RecordComparator]]. */
 object ComparatorCodeGenerator {
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CompileUtils.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CompileUtils.java
index 1a738f3cf..e723d1c39 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CompileUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CompileUtils.java
@@ -28,7 +28,7 @@ import org.slf4j.LoggerFactory;
 import java.time.Duration;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /** Utilities to compile a generated code to a Class. Copied from Flink. */
 public final class CompileUtils {
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala
index a89327fe4..51e7560c8 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala
@@ -18,8 +18,8 @@
 package org.apache.flink.table.store.codegen
 
 import org.apache.paimon.data.{BinaryRow, InternalRow}
-import org.apache.flink.table.store.types.{RowType, TimestampType}
-import org.apache.flink.table.store.utils.TypeUtils.isInteroperable
+import org.apache.paimon.types.{RowType, TimestampType}
+import org.apache.paimon.utils.TypeUtils.isInteroperable
 
 import GeneratedExpression.{NEVER_NULL, NO_CODE}
 import GenerateUtils.{generateRecordStatement, rowSetField, DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM}
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
index d72595445..4616ca6f4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
@@ -19,9 +19,9 @@ package org.apache.flink.table.store.codegen
 
 import org.apache.paimon.data._
 import org.apache.paimon.memory.MemorySegment
-import org.apache.flink.table.store.types._
-import org.apache.flink.table.store.types.DataTypeChecks.{getFieldCount, getFieldTypes, getPrecision, getScale}
-import org.apache.flink.table.store.types.DataTypeRoot._
+import org.apache.paimon.types._
+import org.apache.paimon.types.DataTypeChecks.{getFieldCount, getFieldTypes, getPrecision, getScale}
+import org.apache.paimon.types.DataTypeRoot._
 
 import java.lang.{Boolean => JBoolean, Byte => JByte, Double => JDouble, Float => JFloat, Integer => JInt, Long => JLong, Short => JShort}
 import java.util.concurrent.atomic.AtomicLong
@@ -116,7 +116,7 @@ object GenerateUtils {
       s"($leftTerm == $rightTerm ? 0 : ($leftTerm ? 1 : -1))"
     case BINARY | VARBINARY =>
       val sortUtil =
-        classOf[org.apache.flink.table.store.utils.SortUtil].getCanonicalName
+        classOf[org.apache.paimon.utils.SortUtil].getCanonicalName
       s"$sortUtil.compareBinary($leftTerm, $rightTerm)"
     case TINYINT | SMALLINT | INTEGER | BIGINT | FLOAT | DOUBLE | DATE | TIME_WITHOUT_TIME_ZONE =>
       s"($leftTerm > $rightTerm ? 1 : $leftTerm < $rightTerm ? -1 : 0)"
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedClass.java b/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedClass.java
index b3a9e8bc1..0ff33bd18 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedClass.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedClass.java
@@ -25,7 +25,7 @@ import org.slf4j.LoggerFactory;
 
 import java.io.Serializable;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /**
  * A wrapper for generated class, defines a {@link #newInstance(ClassLoader)} method to get an
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedExpression.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedExpression.scala
index 38397c1a5..595be957f 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedExpression.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedExpression.scala
@@ -17,7 +17,7 @@
  */
 package org.apache.flink.table.store.codegen
 
-import org.apache.flink.table.store.types.DataType
+import org.apache.paimon.types.DataType
 
 /**
  * Describes a generated expression.
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
index 31538ea27..3fe899a40 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
@@ -19,7 +19,7 @@ package org.apache.flink.table.store.codegen
 
 import org.apache.flink.table.store.codegen.GenerateUtils.{generateRecordStatement, newName, DEFAULT_INPUT1_TERM, DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM, ROW_DATA}
 import org.apache.paimon.data.{BinaryRow, InternalRow}
-import org.apache.flink.table.store.types.RowType
+import org.apache.paimon.types.RowType
 
 import GeneratedExpression.{NEVER_NULL, NO_CODE}
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala
index 810dda0fe..2947216d1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala
@@ -19,9 +19,9 @@ package org.apache.flink.table.store.codegen
 
 import org.apache.flink.table.store.codegen.GenerateUtils.{newName, ROW_DATA, SEGMENT}
 import org.apache.paimon.data.{BinaryRow, Decimal, Timestamp}
-import org.apache.flink.table.store.types.{DataType, DecimalType, RowType, TimestampType}
-import org.apache.flink.table.store.types.DataTypeRoot._
-import org.apache.flink.table.store.utils.{SortUtil, TypeUtils}
+import org.apache.paimon.types.{DataType, DecimalType, RowType, TimestampType}
+import org.apache.paimon.types.DataTypeRoot._
+import org.apache.paimon.utils.{SortUtil, TypeUtils}
 
 import scala.collection.mutable
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouper.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouper.java
index 941b0ef4b..2a1488644 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouper.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouper.java
@@ -19,7 +19,7 @@ package org.apache.flink.table.store.codegen.codesplit;
 
 import org.apache.flink.table.store.codegen.codesplit.JavaParser.BlockStatementContext;
 import org.apache.flink.table.store.codegen.codesplit.JavaParser.StatementContext;
-import org.apache.flink.table.store.utils.Pair;
+import org.apache.paimon.utils.Pair;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitter.java
index 1a3a67743..6f2234f87 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitter.java
@@ -19,7 +19,7 @@ package org.apache.flink.table.store.codegen.codesplit;
 
 import org.apache.flink.table.store.codegen.codesplit.JavaParser.BlockStatementContext;
 import org.apache.flink.table.store.codegen.codesplit.JavaParser.StatementContext;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java
index d5d84ca79..c5e4ef13c 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java
@@ -17,7 +17,7 @@
 
 package org.apache.flink.table.store.codegen.codesplit;
 
-import org.apache.flink.table.store.utils.FileIOUtils;
+import org.apache.paimon.utils.FileIOUtils;
 
 import java.io.File;
 import java.util.function.Function;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java
index a46b216ea..0a5a2fb0d 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java
@@ -17,9 +17,9 @@
 
 package org.apache.flink.table.store.codegen.codesplit;
 
-import org.apache.flink.table.store.utils.FileIOUtils;
-import org.apache.flink.table.store.utils.Pair;
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.utils.FileIOUtils;
+import org.apache.paimon.utils.Pair;
+import org.apache.paimon.utils.StringUtils;
 
 import org.codehaus.commons.compiler.CompileException;
 import org.codehaus.janino.SimpleCompiler;
@@ -34,7 +34,7 @@ import java.util.Map;
 import java.util.Map.Entry;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Util class for code split tests. */
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriter.java
index d90c0e7b3..c1d2af31a 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriter.java
@@ -17,7 +17,7 @@
 
 package org.apache.flink.table.store.codegen.codesplit;
 
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitter.java
index 1927a97c5..d4656b2c1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitter.java
@@ -19,7 +19,7 @@ package org.apache.flink.table.store.codegen.codesplit;
 
 import java.util.Optional;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
  * Rewrite generated java code so that the length of each method becomes smaller and can be
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java
index f765ad18e..793b8424e 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java
@@ -17,7 +17,7 @@
 
 package org.apache.flink.table.store.codegen.codesplit;
 
-import org.apache.flink.table.store.utils.FileIOUtils;
+import org.apache.paimon.utils.FileIOUtils;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriter.java
index 0fa535f61..bcf2dd1da 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriter.java
@@ -17,7 +17,7 @@
 
 package org.apache.flink.table.store.codegen.codesplit;
 
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
index 9af790512..3c2744a55 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
@@ -20,7 +20,7 @@ package org.apache.paimon.data;
 
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryArrayWriter.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArrayWriter.java
index a685fab70..481fdc11f 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryArrayWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArrayWriter.java
@@ -19,7 +19,7 @@ package org.apache.paimon.data;
 
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import java.io.Serializable;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
index 3a7b00583..48d3e19e0 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
@@ -20,14 +20,14 @@ package org.apache.paimon.data;
 
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.annotation.Experimental;
 
 import java.util.HashMap;
 import java.util.Map;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
  * [4 byte(keyArray size in bytes)] + [Key BinaryArray] + [Value BinaryArray].
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
index f794cc3f5..7b7e1d8b1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
@@ -19,18 +19,18 @@ package org.apache.paimon.data;
 
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypeRoot;
-import org.apache.flink.table.store.types.DecimalType;
-import org.apache.flink.table.store.types.LocalZonedTimestampType;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.TimestampType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeRoot;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.LocalZonedTimestampType;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.TimestampType;
 
 import org.apache.paimon.annotation.Experimental;
 
 import java.nio.ByteOrder;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
  * An implementation of {@link InternalRow} which is backed by {@link MemorySegment} instead of
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryRowWriter.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRowWriter.java
index cdf7dc17c..f4cad16b5 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryRowWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRowWriter.java
@@ -19,7 +19,7 @@ package org.apache.paimon.data;
 
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 /** Writer for {@link BinaryRow}. */
 public final class BinaryRowWriter extends AbstractBinaryWriter {
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinarySection.java b/paimon-common/src/main/java/org/apache/paimon/data/BinarySection.java
index daac1c29e..113565cbc 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinarySection.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinarySection.java
@@ -19,8 +19,8 @@ package org.apache.paimon.data;
 
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
-import org.apache.flink.table.store.utils.IOUtils;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.IOUtils;
+import org.apache.paimon.utils.Preconditions;
 
 import java.io.IOException;
 import java.io.ObjectInputStream;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
index b1248774a..86b78a5a7 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
@@ -32,7 +32,7 @@ import java.util.Arrays;
 
 import static org.apache.paimon.memory.MemorySegmentUtils.allocateReuseBytes;
 import static org.apache.paimon.memory.MemorySegmentUtils.allocateReuseChars;
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
  * A string which is backed by {@link MemorySegment}s.
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryWriter.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryWriter.java
index dc58eab7a..9cd405acf 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryWriter.java
@@ -17,10 +17,10 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DecimalType;
-import org.apache.flink.table.store.types.LocalZonedTimestampType;
-import org.apache.flink.table.store.types.TimestampType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.LocalZonedTimestampType;
+import org.apache.paimon.types.TimestampType;
 
 import org.apache.paimon.data.serializer.InternalArraySerializer;
 import org.apache.paimon.data.serializer.InternalMapSerializer;
@@ -30,7 +30,7 @@ import org.apache.paimon.data.serializer.Serializer;
 
 import java.io.Serializable;
 
-import static org.apache.flink.table.store.types.DataTypeChecks.getPrecision;
+import static org.apache.paimon.types.DataTypeChecks.getPrecision;
 
 /**
  * Writer to write a composite data format, like row, array. 1. Invoke {@link #reset()}. 2. Write
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/Decimal.java b/paimon-common/src/main/java/org/apache/paimon/data/Decimal.java
index 4a2f5de6f..00bbebabf 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/Decimal.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/Decimal.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.types.DecimalType;
+import org.apache.paimon.types.DecimalType;
 
 import org.apache.paimon.annotation.Experimental;
 
@@ -30,7 +30,7 @@ import java.math.BigDecimal;
 import java.math.BigInteger;
 import java.math.RoundingMode;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
  * An internal data structure representing data of {@link DecimalType}.
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/GenericArray.java b/paimon-common/src/main/java/org/apache/paimon/data/GenericArray.java
index 3a826c768..7e5947931 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/GenericArray.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/GenericArray.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.types.ArrayType;
-import org.apache.flink.table.store.utils.ArrayUtils;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.utils.ArrayUtils;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/GenericMap.java b/paimon-common/src/main/java/org/apache/paimon/data/GenericMap.java
index 110c7fc01..b3ee5dac2 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/GenericMap.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/GenericMap.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.types.MapType;
-import org.apache.flink.table.store.types.MultisetType;
+import org.apache.paimon.types.MapType;
+import org.apache.paimon.types.MultisetType;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/GenericRow.java b/paimon-common/src/main/java/org/apache/paimon/data/GenericRow.java
index 5c04ace87..c79eed6a9 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/GenericRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/GenericRow.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.annotation.Experimental;
 
@@ -27,7 +27,7 @@ import java.io.Serializable;
 import java.util.Arrays;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /**
  * An internal data structure representing data of {@link RowType}.
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/InternalArray.java b/paimon-common/src/main/java/org/apache/paimon/data/InternalArray.java
index db8889de6..31e6ba46d 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/InternalArray.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/InternalArray.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.types.ArrayType;
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.annotation.Experimental;
 
@@ -27,9 +27,9 @@ import javax.annotation.Nullable;
 
 import java.io.Serializable;
 
-import static org.apache.flink.table.store.types.DataTypeChecks.getFieldCount;
-import static org.apache.flink.table.store.types.DataTypeChecks.getPrecision;
-import static org.apache.flink.table.store.types.DataTypeChecks.getScale;
+import static org.apache.paimon.types.DataTypeChecks.getFieldCount;
+import static org.apache.paimon.types.DataTypeChecks.getPrecision;
+import static org.apache.paimon.types.DataTypeChecks.getScale;
 
 /**
  * Base interface of an internal data structure representing data of {@link ArrayType}.
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/InternalMap.java b/paimon-common/src/main/java/org/apache/paimon/data/InternalMap.java
index 8f111083b..01c63599a 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/InternalMap.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/InternalMap.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.types.MapType;
-import org.apache.flink.table.store.types.MultisetType;
+import org.apache.paimon.types.MapType;
+import org.apache.paimon.types.MultisetType;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java b/paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java
index 9ae7e5cc0..8330c2ea1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypeChecks;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeChecks;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.annotation.Experimental;
 
@@ -29,8 +29,8 @@ import javax.annotation.Nullable;
 
 import java.io.Serializable;
 
-import static org.apache.flink.table.store.types.DataTypeChecks.getPrecision;
-import static org.apache.flink.table.store.types.DataTypeChecks.getScale;
+import static org.apache.paimon.types.DataTypeChecks.getPrecision;
+import static org.apache.paimon.types.DataTypeChecks.getScale;
 
 /**
  * Base interface for an internal data structure representing data of {@link RowType}.
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/JoinedRow.java b/paimon-common/src/main/java/org/apache/paimon/data/JoinedRow.java
index f8424e3e4..313a92b97 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/JoinedRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/JoinedRow.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/LazyGenericRow.java b/paimon-common/src/main/java/org/apache/paimon/data/LazyGenericRow.java
index 4bdd16333..ecb6bb1be 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/LazyGenericRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/LazyGenericRow.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import java.util.function.Supplier;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /** A {@link InternalRow} which lazy init fields. */
 public class LazyGenericRow implements InternalRow {
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java b/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
index bc62fc1c1..17323c15e 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
@@ -19,9 +19,9 @@ package org.apache.paimon.data;
 
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 import static org.apache.paimon.data.BinaryRow.calculateBitSetWidthInBytes;
 
 /**
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessInputView.java b/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessInputView.java
index d019f9c89..4a87058c8 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessInputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessInputView.java
@@ -20,7 +20,7 @@ package org.apache.paimon.data;
 
 import org.apache.paimon.io.SeekableDataInputView;
 import org.apache.paimon.memory.MemorySegment;
-import org.apache.flink.table.store.utils.MathUtils;
+import org.apache.paimon.utils.MathUtils;
 
 import java.io.EOFException;
 import java.util.ArrayList;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/SimpleCollectingOutputView.java b/paimon-common/src/main/java/org/apache/paimon/data/SimpleCollectingOutputView.java
index 07f2c3b96..6376365db 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/SimpleCollectingOutputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/SimpleCollectingOutputView.java
@@ -20,7 +20,7 @@ package org.apache.paimon.data;
 
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentSource;
-import org.apache.flink.table.store.utils.MathUtils;
+import org.apache.paimon.utils.MathUtils;
 
 import java.io.EOFException;
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/Timestamp.java b/paimon-common/src/main/java/org/apache/paimon/data/Timestamp.java
index 99849ac9a..ba7e9d7d2 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/Timestamp.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/Timestamp.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.types.LocalZonedTimestampType;
-import org.apache.flink.table.store.types.TimestampType;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.types.LocalZonedTimestampType;
+import org.apache.paimon.types.TimestampType;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRow.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRow.java
index 1408104b0..a7e2d47f9 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRow.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.data.columnar;
 
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.DataSetters;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRowIterator.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRowIterator.java
index bb97a44cb..6ad832ecf 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRowIterator.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRowIterator.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.columnar;
 
-import org.apache.flink.table.store.reader.RecordReader;
-import org.apache.flink.table.store.utils.RecyclableIterator;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.utils.RecyclableIterator;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
index 247d81be4..e0d185d60 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
@@ -30,7 +30,7 @@ import org.apache.paimon.data.BinaryRow;
 
 import java.io.IOException;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /** Serializer for {@link BinaryRow}. */
 public class BinaryRowSerializer extends AbstractRowDataSerializer<BinaryRow> {
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
index 823296b50..e3c835475 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
@@ -22,7 +22,7 @@ import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryArrayWriter;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
index c5bde00b1..04950331e 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
@@ -22,7 +22,7 @@ import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryArrayWriter;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
index 115d7d1d5..141742db1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
@@ -20,8 +20,8 @@ package org.apache.paimon.data.serializer;
 
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.AbstractPagedInputView;
 import org.apache.paimon.data.AbstractPagedOutputView;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalSerializers.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalSerializers.java
index ef09e0feb..624dda481 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalSerializers.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalSerializers.java
@@ -18,16 +18,16 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.types.ArrayType;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.MapType;
-import org.apache.flink.table.store.types.MultisetType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.MapType;
+import org.apache.paimon.types.MultisetType;
+import org.apache.paimon.types.RowType;
 
-import static org.apache.flink.table.store.types.DataTypeChecks.getFieldTypes;
-import static org.apache.flink.table.store.types.DataTypeChecks.getPrecision;
-import static org.apache.flink.table.store.types.DataTypeChecks.getScale;
+import static org.apache.paimon.types.DataTypeChecks.getFieldTypes;
+import static org.apache.paimon.types.DataTypeChecks.getPrecision;
+import static org.apache.paimon.types.DataTypeChecks.getScale;
 
 /** {@link Serializer} of {@link DataType} for internal data structures. */
 public final class InternalSerializers {
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/ListSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ListSerializer.java
index 51b8e2a54..1b351a4c8 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/ListSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ListSerializer.java
@@ -25,7 +25,7 @@ import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /**
  * A serializer for {@link List Lists}. The serializer relies on an element serializer for the
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/NullableSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/NullableSerializer.java
index c06de2acc..6b1cd0bfd 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/NullableSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/NullableSerializer.java
@@ -27,7 +27,7 @@ import javax.annotation.Nonnull;
 
 import java.io.IOException;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /** Serializer wrapper to add support of {@code null} value serialization. */
 public class NullableSerializer<T> implements Serializer<T> {
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
index d90967cb5..10aa9303a 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
@@ -21,10 +21,10 @@ package org.apache.paimon.data.serializer;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.memory.MemorySegment;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.RowKind;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.VarLengthIntUtils;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.VarLengthIntUtils;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryArray;
@@ -47,9 +47,9 @@ import java.util.Objects;
 
 import static org.apache.paimon.memory.MemorySegmentUtils.bitGet;
 import static org.apache.paimon.memory.MemorySegmentUtils.bitSet;
-import static org.apache.flink.table.store.types.DataTypeChecks.getPrecision;
-import static org.apache.flink.table.store.types.DataTypeChecks.getScale;
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.types.DataTypeChecks.getPrecision;
+import static org.apache.paimon.types.DataTypeChecks.getScale;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 import static org.apache.paimon.data.BinaryRow.HEADER_SIZE_IN_BITS;
 
 /** A {@link Serializer} for {@link InternalRow} using compacted binary. */
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/CompareUtils.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/CompareUtils.java
index e86bc53b5..80a0520f2 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/CompareUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/CompareUtils.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import static java.lang.Math.min;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java
index eaf09e971..926a047a5 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/FieldRef.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/FieldRef.java
index 7291cb7c4..607255757 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/FieldRef.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/FieldRef.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import java.io.Serializable;
 import java.util.Objects;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java
index f093c734c..206491956 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java
index b5859d446..2c47ee732 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java
index b527d0133..768aa2a1f 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java
index 5fbcdecd5..37dcdc217 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java
index 032ab1079..4fc9c1db2 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java
index 73b32f2d6..5e0940823 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java
index 1ff1aafed..9786b54a4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java
@@ -20,7 +20,7 @@ package org.apache.paimon.file.predicate;
 
 import org.apache.paimon.io.DataInputViewStreamWrapper;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.data.serializer.InternalSerializers;
 import org.apache.paimon.data.serializer.ListSerializer;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java
index eb2b669a6..3b0e9b03a 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java
index c82d1d0c8..7f51007e3 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java
index 776a221dc..8b39aecc4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java
index bcd1f00c8..718d0d0fb 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java
index 4042f5486..0aebb858c 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java
index 8fd2d827c..1d6c49349 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java
index 931353cb1..117683d94 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java
@@ -18,12 +18,12 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DecimalType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.Preconditions;
-import org.apache.flink.table.store.utils.TypeUtils;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Preconditions;
+import org.apache.paimon.utils.TypeUtils;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.BinaryString;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java
index 7fbcce2a3..2eb5558ef 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java
index 6020f475f..5a769a222 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.types.DataType;
+import org.apache.paimon.types.DataType;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.format.FieldStats;
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java b/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
index fea1428c0..5ecf845b9 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalSerializers;
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java b/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
index 4aafbef10..f0ab792c0 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
@@ -21,7 +21,7 @@ package org.apache.paimon.format;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java b/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
index 478246c60..7398ce146 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
@@ -20,7 +20,7 @@ package org.apache.paimon.format;
 
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/fs/Path.java b/paimon-common/src/main/java/org/apache/paimon/fs/Path.java
index 72180d6df..2fe12aeb6 100644
--- a/paimon-common/src/main/java/org/apache/paimon/fs/Path.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/Path.java
@@ -22,7 +22,7 @@
 
 package org.apache.paimon.fs;
 
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.utils.StringUtils;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
index a2162a924..164cb8035 100644
--- a/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
@@ -42,7 +42,7 @@ import java.util.List;
 import java.util.concurrent.locks.ReentrantLock;
 
 import static org.apache.paimon.fs.local.LocalFileIOLoader.SCHEME;
-import static org.apache.flink.table.store.utils.Preconditions.checkState;
+import static org.apache.paimon.utils.Preconditions.checkState;
 
 /** {@link FileIO} for local file. */
 public class LocalFileIO implements FileIO {
diff --git a/paimon-common/src/main/java/org/apache/paimon/io/DataOutputSerializer.java b/paimon-common/src/main/java/org/apache/paimon/io/DataOutputSerializer.java
index 3ede1649b..61d131302 100644
--- a/paimon-common/src/main/java/org/apache/paimon/io/DataOutputSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/DataOutputSerializer.java
@@ -21,7 +21,7 @@ package org.apache.paimon.io;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentWritable;
 import org.apache.paimon.memory.MemoryUtils;
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import java.io.EOFException;
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/paimon/io/cache/CachedRandomInputView.java b/paimon-common/src/main/java/org/apache/paimon/io/cache/CachedRandomInputView.java
index dc723825c..6b291edbb 100644
--- a/paimon-common/src/main/java/org/apache/paimon/io/cache/CachedRandomInputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/cache/CachedRandomInputView.java
@@ -20,7 +20,7 @@ package org.apache.paimon.io.cache;
 
 import org.apache.paimon.io.SeekableDataInputView;
 import org.apache.paimon.memory.MemorySegment;
-import org.apache.flink.table.store.utils.MathUtils;
+import org.apache.paimon.utils.MathUtils;
 
 import org.apache.paimon.data.AbstractPagedInputView;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreReader.java b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreReader.java
index dea195a08..0407d0450 100644
--- a/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreReader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreReader.java
@@ -25,8 +25,8 @@ package org.apache.paimon.lookup.hash;
 import org.apache.paimon.io.cache.CacheManager;
 import org.apache.paimon.io.cache.CachedRandomInputView;
 import org.apache.paimon.lookup.LookupStoreReader;
-import org.apache.flink.table.store.utils.MurmurHashUtils;
-import org.apache.flink.table.store.utils.VarLengthIntUtils;
+import org.apache.paimon.utils.MurmurHashUtils;
+import org.apache.paimon.utils.VarLengthIntUtils;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreWriter.java b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreWriter.java
index 3a0c8e9b6..ce946e841 100644
--- a/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreWriter.java
@@ -23,8 +23,8 @@
 package org.apache.paimon.lookup.hash;
 
 import org.apache.paimon.lookup.LookupStoreWriter;
-import org.apache.flink.table.store.utils.MurmurHashUtils;
-import org.apache.flink.table.store.utils.VarLengthIntUtils;
+import org.apache.paimon.utils.MurmurHashUtils;
+import org.apache.paimon.utils.VarLengthIntUtils;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentUtils.java b/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentUtils.java
index 4277629d9..3913b15c0 100644
--- a/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentUtils.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.memory;
 
 import org.apache.paimon.io.DataOutputView;
-import org.apache.flink.table.store.utils.MurmurHashUtils;
+import org.apache.paimon.utils.MurmurHashUtils;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryArray;
diff --git a/paimon-common/src/main/java/org/apache/paimon/memory/MemoryUtils.java b/paimon-common/src/main/java/org/apache/paimon/memory/MemoryUtils.java
index 316cfb48a..63a4ebd0a 100644
--- a/paimon-common/src/main/java/org/apache/paimon/memory/MemoryUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/memory/MemoryUtils.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.memory;
 
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import java.lang.reflect.Field;
 import java.nio.Buffer;
diff --git a/paimon-common/src/main/java/org/apache/paimon/options/CatalogOptions.java b/paimon-common/src/main/java/org/apache/paimon/options/CatalogOptions.java
index f053fd455..e4a3f26bf 100644
--- a/paimon-common/src/main/java/org/apache/paimon/options/CatalogOptions.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/CatalogOptions.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.options;
 
-import org.apache.flink.table.store.table.TableType;
+import org.apache.paimon.table.TableType;
 
 import java.time.Duration;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/options/ConfigOption.java b/paimon-common/src/main/java/org/apache/paimon/options/ConfigOption.java
index 28fbc73cf..5741eae93 100644
--- a/paimon-common/src/main/java/org/apache/paimon/options/ConfigOption.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/ConfigOption.java
@@ -27,7 +27,7 @@ import java.util.Collections;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /**
  * A {@code ConfigOption} describes a configuration parameter. It encapsulates the configuration
diff --git a/paimon-common/src/main/java/org/apache/paimon/options/ConfigOptions.java b/paimon-common/src/main/java/org/apache/paimon/options/ConfigOptions.java
index 3fcdcd233..e1c4b0061 100644
--- a/paimon-common/src/main/java/org/apache/paimon/options/ConfigOptions.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/ConfigOptions.java
@@ -27,7 +27,7 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /**
  * {@code ConfigOptions} are used to build a {@link ConfigOption}. The option is typically built in
diff --git a/paimon-common/src/main/java/org/apache/paimon/options/MemorySize.java b/paimon-common/src/main/java/org/apache/paimon/options/MemorySize.java
index 41ad758f8..f85d68ce0 100644
--- a/paimon-common/src/main/java/org/apache/paimon/options/MemorySize.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/MemorySize.java
@@ -34,8 +34,8 @@ import static org.apache.paimon.options.MemorySize.MemoryUnit.KILO_BYTES;
 import static org.apache.paimon.options.MemorySize.MemoryUnit.MEGA_BYTES;
 import static org.apache.paimon.options.MemorySize.MemoryUnit.TERA_BYTES;
 import static org.apache.paimon.options.MemorySize.MemoryUnit.hasUnit;
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /**
  * MemorySize is a representation of a number of bytes, viewable in different units.
diff --git a/paimon-common/src/main/java/org/apache/paimon/options/OptionsUtils.java b/paimon-common/src/main/java/org/apache/paimon/options/OptionsUtils.java
index d39a906a5..54dc795a4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/options/OptionsUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/OptionsUtils.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.options;
 
-import org.apache.flink.table.store.utils.TimeUtils;
+import org.apache.paimon.utils.TimeUtils;
 
 import javax.annotation.Nonnull;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/options/StructuredOptionsSplitter.java b/paimon-common/src/main/java/org/apache/paimon/options/StructuredOptionsSplitter.java
index 9e9b6155e..a500159a6 100644
--- a/paimon-common/src/main/java/org/apache/paimon/options/StructuredOptionsSplitter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/StructuredOptionsSplitter.java
@@ -22,7 +22,7 @@ import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /** Helper class for splitting a string on a given delimiter with quoting logic. */
 class StructuredOptionsSplitter {
diff --git a/paimon-common/src/main/java/org/apache/paimon/options/description/TextElement.java b/paimon-common/src/main/java/org/apache/paimon/options/description/TextElement.java
index 8ae5c2060..79b95de21 100644
--- a/paimon-common/src/main/java/org/apache/paimon/options/description/TextElement.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/TextElement.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.options.description;
 
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.utils.StringUtils;
 
 import java.util.Arrays;
 import java.util.Collections;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/plugin/ComponentClassLoader.java b/paimon-common/src/main/java/org/apache/paimon/plugin/ComponentClassLoader.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/plugin/ComponentClassLoader.java
rename to paimon-common/src/main/java/org/apache/paimon/plugin/ComponentClassLoader.java
index 5abe5a2ae..e1dd27c9e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/plugin/ComponentClassLoader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/plugin/ComponentClassLoader.java
@@ -15,9 +15,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.plugin;
+package org.apache.paimon.plugin;
 
-import org.apache.flink.table.store.utils.FunctionWithException;
+import org.apache.paimon.utils.FunctionWithException;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/plugin/PluginLoader.java b/paimon-common/src/main/java/org/apache/paimon/plugin/PluginLoader.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/plugin/PluginLoader.java
rename to paimon-common/src/main/java/org/apache/paimon/plugin/PluginLoader.java
index 753c9ed9a..e55f23a78 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/plugin/PluginLoader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/plugin/PluginLoader.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.plugin;
+package org.apache.paimon.plugin;
 
-import org.apache.flink.table.store.utils.IOUtils;
-import org.apache.flink.table.store.utils.LocalFileUtils;
+import org.apache.paimon.utils.IOUtils;
+import org.apache.paimon.utils.LocalFileUtils;
 
 import java.io.IOException;
 import java.io.InputStream;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReader.java b/paimon-common/src/main/java/org/apache/paimon/reader/RecordReader.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReader.java
rename to paimon-common/src/main/java/org/apache/paimon/reader/RecordReader.java
index b3c50c27e..210230dbb 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/reader/RecordReader.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.reader;
+package org.apache.paimon.reader;
 
-import org.apache.flink.table.store.utils.CloseableIterator;
+import org.apache.paimon.utils.CloseableIterator;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReaderIterator.java b/paimon-common/src/main/java/org/apache/paimon/reader/RecordReaderIterator.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReaderIterator.java
rename to paimon-common/src/main/java/org/apache/paimon/reader/RecordReaderIterator.java
index 4fb3ea4e4..fedb1aeef 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReaderIterator.java
+++ b/paimon-common/src/main/java/org/apache/paimon/reader/RecordReaderIterator.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.reader;
+package org.apache.paimon.reader;
 
-import org.apache.flink.table.store.utils.CloseableIterator;
+import org.apache.paimon.utils.CloseableIterator;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/table/TableType.java b/paimon-common/src/main/java/org/apache/paimon/table/TableType.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/table/TableType.java
rename to paimon-common/src/main/java/org/apache/paimon/table/TableType.java
index 662f85d3d..e466d641e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/table/TableType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/table/TableType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table;
+package org.apache.paimon.table;
 
 import org.apache.paimon.options.description.DescribedEnum;
 import org.apache.paimon.options.description.InlineElement;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/ArrayType.java b/paimon-common/src/main/java/org/apache/paimon/types/ArrayType.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/ArrayType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/ArrayType.java
index 3cea3386e..bb26e7cc5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/ArrayType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/ArrayType.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/BigIntType.java b/paimon-common/src/main/java/org/apache/paimon/types/BigIntType.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/BigIntType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/BigIntType.java
index fc766bcbb..897eff7cc 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/BigIntType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/BigIntType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/BinaryType.java b/paimon-common/src/main/java/org/apache/paimon/types/BinaryType.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/BinaryType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/BinaryType.java
index 064f8746d..7e2d1b8d0 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/BinaryType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/BinaryType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/BooleanType.java b/paimon-common/src/main/java/org/apache/paimon/types/BooleanType.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/BooleanType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/BooleanType.java
index 813e9e49e..aa55dd56a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/BooleanType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/BooleanType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/CharType.java b/paimon-common/src/main/java/org/apache/paimon/types/CharType.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/CharType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/CharType.java
index 7087e93bc..f762d1474 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/CharType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/CharType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataField.java b/paimon-common/src/main/java/org/apache/paimon/types/DataField.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DataField.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DataField.java
index 4db6b77ef..120a6995c 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataField.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataField.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
@@ -28,8 +28,8 @@ import java.io.IOException;
 import java.io.Serializable;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.utils.EncodingUtils.escapeIdentifier;
-import static org.apache.flink.table.store.utils.EncodingUtils.escapeSingleQuotes;
+import static org.apache.paimon.utils.EncodingUtils.escapeIdentifier;
+import static org.apache.paimon.utils.EncodingUtils.escapeSingleQuotes;
 
 /**
  * Defines the field of a row type.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataType.java b/paimon-common/src/main/java/org/apache/paimon/types/DataType.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DataType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DataType.java
index 63318a225..8dcdcbba8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataType.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeCasts.java b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeCasts.java
similarity index 86%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeCasts.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DataTypeCasts.java
index 637a6dc1b..0c0d2a813 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeCasts.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeCasts.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import java.util.Arrays;
 import java.util.HashMap;
@@ -24,31 +24,31 @@ import java.util.HashSet;
 import java.util.Map;
 import java.util.Set;
 
-import static org.apache.flink.table.store.types.DataTypeFamily.BINARY_STRING;
-import static org.apache.flink.table.store.types.DataTypeFamily.CHARACTER_STRING;
-import static org.apache.flink.table.store.types.DataTypeFamily.CONSTRUCTED;
-import static org.apache.flink.table.store.types.DataTypeFamily.DATETIME;
-import static org.apache.flink.table.store.types.DataTypeFamily.INTEGER_NUMERIC;
-import static org.apache.flink.table.store.types.DataTypeFamily.NUMERIC;
-import static org.apache.flink.table.store.types.DataTypeFamily.PREDEFINED;
-import static org.apache.flink.table.store.types.DataTypeFamily.TIME;
-import static org.apache.flink.table.store.types.DataTypeFamily.TIMESTAMP;
-import static org.apache.flink.table.store.types.DataTypeRoot.BIGINT;
-import static org.apache.flink.table.store.types.DataTypeRoot.BINARY;
-import static org.apache.flink.table.store.types.DataTypeRoot.BOOLEAN;
-import static org.apache.flink.table.store.types.DataTypeRoot.CHAR;
-import static org.apache.flink.table.store.types.DataTypeRoot.DATE;
-import static org.apache.flink.table.store.types.DataTypeRoot.DECIMAL;
-import static org.apache.flink.table.store.types.DataTypeRoot.DOUBLE;
-import static org.apache.flink.table.store.types.DataTypeRoot.FLOAT;
-import static org.apache.flink.table.store.types.DataTypeRoot.INTEGER;
-import static org.apache.flink.table.store.types.DataTypeRoot.SMALLINT;
-import static org.apache.flink.table.store.types.DataTypeRoot.TIMESTAMP_WITHOUT_TIME_ZONE;
-import static org.apache.flink.table.store.types.DataTypeRoot.TIMESTAMP_WITH_LOCAL_TIME_ZONE;
-import static org.apache.flink.table.store.types.DataTypeRoot.TIME_WITHOUT_TIME_ZONE;
-import static org.apache.flink.table.store.types.DataTypeRoot.TINYINT;
-import static org.apache.flink.table.store.types.DataTypeRoot.VARBINARY;
-import static org.apache.flink.table.store.types.DataTypeRoot.VARCHAR;
+import static org.apache.paimon.types.DataTypeFamily.BINARY_STRING;
+import static org.apache.paimon.types.DataTypeFamily.CHARACTER_STRING;
+import static org.apache.paimon.types.DataTypeFamily.CONSTRUCTED;
+import static org.apache.paimon.types.DataTypeFamily.DATETIME;
+import static org.apache.paimon.types.DataTypeFamily.INTEGER_NUMERIC;
+import static org.apache.paimon.types.DataTypeFamily.NUMERIC;
+import static org.apache.paimon.types.DataTypeFamily.PREDEFINED;
+import static org.apache.paimon.types.DataTypeFamily.TIME;
+import static org.apache.paimon.types.DataTypeFamily.TIMESTAMP;
+import static org.apache.paimon.types.DataTypeRoot.BIGINT;
+import static org.apache.paimon.types.DataTypeRoot.BINARY;
+import static org.apache.paimon.types.DataTypeRoot.BOOLEAN;
+import static org.apache.paimon.types.DataTypeRoot.CHAR;
+import static org.apache.paimon.types.DataTypeRoot.DATE;
+import static org.apache.paimon.types.DataTypeRoot.DECIMAL;
+import static org.apache.paimon.types.DataTypeRoot.DOUBLE;
+import static org.apache.paimon.types.DataTypeRoot.FLOAT;
+import static org.apache.paimon.types.DataTypeRoot.INTEGER;
+import static org.apache.paimon.types.DataTypeRoot.SMALLINT;
+import static org.apache.paimon.types.DataTypeRoot.TIMESTAMP_WITHOUT_TIME_ZONE;
+import static org.apache.paimon.types.DataTypeRoot.TIMESTAMP_WITH_LOCAL_TIME_ZONE;
+import static org.apache.paimon.types.DataTypeRoot.TIME_WITHOUT_TIME_ZONE;
+import static org.apache.paimon.types.DataTypeRoot.TINYINT;
+import static org.apache.paimon.types.DataTypeRoot.VARBINARY;
+import static org.apache.paimon.types.DataTypeRoot.VARCHAR;
 
 /** Utilities for casting {@link DataType}. */
 public final class DataTypeCasts {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeChecks.java b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeChecks.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeChecks.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DataTypeChecks.java
index 8c821789f..bbe5505a3 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeChecks.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeChecks.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
 
-import static org.apache.flink.table.store.types.DataTypeRoot.ROW;
+import static org.apache.paimon.types.DataTypeRoot.ROW;
 
 /**
  * Utilities for checking {@link DataType} and avoiding a lot of type casting and repetitive work.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeDefaultVisitor.java b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeDefaultVisitor.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeDefaultVisitor.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DataTypeDefaultVisitor.java
index 5e23becd2..f3a67f45b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeDefaultVisitor.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeDefaultVisitor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeFamily.java b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeFamily.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeFamily.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DataTypeFamily.java
index 950649cbf..edefcd19f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeFamily.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeFamily.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeJsonParser.java b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeJsonParser.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeJsonParser.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DataTypeJsonParser.java
index 60c172b76..a7a3f01e6 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeJsonParser.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeJsonParser.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode;
 
@@ -30,8 +30,8 @@ import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
 /**
- * Parser for creating instances of {@link org.apache.flink.table.store.types.DataType} from a
- * serialized string created with {@link org.apache.flink.table.store.types.DataType#serializeJson}.
+ * Parser for creating instances of {@link org.apache.paimon.types.DataType} from a
+ * serialized string created with {@link org.apache.paimon.types.DataType#serializeJson}.
  */
 public final class DataTypeJsonParser {
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeRoot.java b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeRoot.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeRoot.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DataTypeRoot.java
index 6daf7fd6b..ef1000af8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeRoot.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeRoot.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeVisitor.java b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeVisitor.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeVisitor.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DataTypeVisitor.java
index a1d55c937..41e714af4 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeVisitor.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeVisitor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypes.java b/paimon-common/src/main/java/org/apache/paimon/types/DataTypes.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypes.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DataTypes.java
index 0a01b0cf8..de5a35467 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypes.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataTypes.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DateType.java b/paimon-common/src/main/java/org/apache/paimon/types/DateType.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DateType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DateType.java
index 50024d68f..9f4578132 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DateType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DateType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DecimalType.java b/paimon-common/src/main/java/org/apache/paimon/types/DecimalType.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DecimalType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DecimalType.java
index a88cf1f73..06e3c92cd 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DecimalType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DecimalType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DoubleType.java b/paimon-common/src/main/java/org/apache/paimon/types/DoubleType.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/DoubleType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/DoubleType.java
index 0d36b2cfd..81442e76b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DoubleType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DoubleType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/FloatType.java b/paimon-common/src/main/java/org/apache/paimon/types/FloatType.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/FloatType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/FloatType.java
index eece59a99..854f4fd56 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/FloatType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/FloatType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/IntType.java b/paimon-common/src/main/java/org/apache/paimon/types/IntType.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/IntType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/IntType.java
index 7ffe4848a..1bb71d205 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/IntType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/IntType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/LocalZonedTimestampType.java b/paimon-common/src/main/java/org/apache/paimon/types/LocalZonedTimestampType.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/LocalZonedTimestampType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/LocalZonedTimestampType.java
index bbe7b5697..a64e31221 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/LocalZonedTimestampType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/LocalZonedTimestampType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/MapType.java b/paimon-common/src/main/java/org/apache/paimon/types/MapType.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/MapType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/MapType.java
index 679d7d168..8eebd9685 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/MapType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/MapType.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/MultisetType.java b/paimon-common/src/main/java/org/apache/paimon/types/MultisetType.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/MultisetType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/MultisetType.java
index 9c26e6cf9..fda3cacf2 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/MultisetType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/MultisetType.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
-import org.apache.flink.table.store.utils.Preconditions;
+import org.apache.paimon.utils.Preconditions;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/ReassignFieldId.java b/paimon-common/src/main/java/org/apache/paimon/types/ReassignFieldId.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/ReassignFieldId.java
rename to paimon-common/src/main/java/org/apache/paimon/types/ReassignFieldId.java
index e14e6a512..b102fa22e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/ReassignFieldId.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/ReassignFieldId.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import java.util.concurrent.atomic.AtomicInteger;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/RowKind.java b/paimon-common/src/main/java/org/apache/paimon/types/RowKind.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/RowKind.java
rename to paimon-common/src/main/java/org/apache/paimon/types/RowKind.java
index fddef8d1d..c70704a8e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/RowKind.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/RowKind.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/RowType.java b/paimon-common/src/main/java/org/apache/paimon/types/RowType.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/RowType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/RowType.java
index a7365a1fa..b27a2aee5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/RowType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/RowType.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
-import org.apache.flink.table.store.utils.Preconditions;
-import org.apache.flink.table.store.utils.StringUtils;
+import org.apache.paimon.utils.Preconditions;
+import org.apache.paimon.utils.StringUtils;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/SmallIntType.java b/paimon-common/src/main/java/org/apache/paimon/types/SmallIntType.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/SmallIntType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/SmallIntType.java
index 347b7d82a..1f637f623 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/SmallIntType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/SmallIntType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/TimeType.java b/paimon-common/src/main/java/org/apache/paimon/types/TimeType.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/TimeType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/TimeType.java
index 397a29354..59235c729 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/TimeType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/TimeType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/TimestampType.java b/paimon-common/src/main/java/org/apache/paimon/types/TimestampType.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/TimestampType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/TimestampType.java
index 56d5999d5..3c0b2651b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/TimestampType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/TimestampType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/TinyIntType.java b/paimon-common/src/main/java/org/apache/paimon/types/TinyIntType.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/TinyIntType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/TinyIntType.java
index fd6f303c1..b42d2a25a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/TinyIntType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/TinyIntType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/VarBinaryType.java b/paimon-common/src/main/java/org/apache/paimon/types/VarBinaryType.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/VarBinaryType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/VarBinaryType.java
index 9f83a83aa..6612b24af 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/VarBinaryType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/VarBinaryType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/VarCharType.java b/paimon-common/src/main/java/org/apache/paimon/types/VarCharType.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/types/VarCharType.java
rename to paimon-common/src/main/java/org/apache/paimon/types/VarCharType.java
index ecc3c60bb..b17f7bb87 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/VarCharType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/VarCharType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.types;
+package org.apache.paimon.types;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ArrayUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/ArrayUtils.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/ArrayUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/ArrayUtils.java
index fe24037fc..d34df6ce8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ArrayUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/ArrayUtils.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 /** Utils for array. */
 public class ArrayUtils {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java b/paimon-common/src/main/java/org/apache/paimon/utils/BinaryRowDataUtil.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/BinaryRowDataUtil.java
index 27a314c1c..96da9d786 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/BinaryRowDataUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.memory.MemorySegment;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/CloseableIterator.java b/paimon-common/src/main/java/org/apache/paimon/utils/CloseableIterator.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/CloseableIterator.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/CloseableIterator.java
index 4ca11d895..36db657ef 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/CloseableIterator.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/CloseableIterator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/DateTimeUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/DateTimeUtils.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/DateTimeUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/DateTimeUtils.java
index 576b2a61a..66d509970 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/DateTimeUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/DateTimeUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.data.Timestamp;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/DecimalUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/DecimalUtils.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/DecimalUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/DecimalUtils.java
index a25cb6aa8..935f1edfc 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/DecimalUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/DecimalUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/EncodingUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/EncodingUtils.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/EncodingUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/EncodingUtils.java
index 2f8b33946..bddc9a962 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/EncodingUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/EncodingUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 /** General utilities for string-encoding. */
 public abstract class EncodingUtils {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ExceptionUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/ExceptionUtils.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/ExceptionUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/ExceptionUtils.java
index 366541426..3c178ba0d 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ExceptionUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/ExceptionUtils.java
@@ -24,7 +24,7 @@
 // ownership.
 //
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import javax.annotation.Nullable;
 
@@ -39,7 +39,7 @@ import java.util.concurrent.ExecutionException;
 import java.util.function.Function;
 import java.util.function.Predicate;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /** A collection of utility functions for dealing with exceptions and exception workflows. */
 public final class ExceptionUtils {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/FileIOUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/FileIOUtils.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/FileIOUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/FileIOUtils.java
index 7a5848cfb..5fb1f167e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/FileIOUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/FileIOUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.io.File;
 import java.io.FileNotFoundException;
@@ -31,7 +31,7 @@ import java.nio.file.Files;
 import java.nio.file.StandardOpenOption;
 import java.util.Arrays;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /**
  * This is a utility class to deal files and directories. Contains utilities for recursive deletion
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Filter.java b/paimon-common/src/main/java/org/apache/paimon/utils/Filter.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/Filter.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/Filter.java
index 733c19709..c70de3adc 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Filter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/Filter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.file.predicate.Predicate;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/FunctionWithException.java b/paimon-common/src/main/java/org/apache/paimon/utils/FunctionWithException.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/FunctionWithException.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/FunctionWithException.java
index 26f309ba6..b96cb3e3e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/FunctionWithException.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/FunctionWithException.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 /**
  * A functional interface for a {@link java.util.function.Function} that may throw exceptions.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/HadoopUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/HadoopUtils.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/HadoopUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/HadoopUtils.java
index fac383acb..2dc13cc8b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/HadoopUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/HadoopUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.options.Options;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/IOFunction.java b/paimon-common/src/main/java/org/apache/paimon/utils/IOFunction.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/IOFunction.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/IOFunction.java
index a6d761b35..80deff0c5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/IOFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/IOFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/IOUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/IOUtils.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/IOUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/IOUtils.java
index f05aeb24b..270fe8d5b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/IOUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/IOUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.io.IOException;
 import java.io.InputStream;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/InstantiationUtil.java b/paimon-common/src/main/java/org/apache/paimon/utils/InstantiationUtil.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/InstantiationUtil.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/InstantiationUtil.java
index 12dcb8649..5ca837203 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/InstantiationUtil.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/InstantiationUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/IteratorResultIterator.java b/paimon-common/src/main/java/org/apache/paimon/utils/IteratorResultIterator.java
similarity index 93%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/IteratorResultIterator.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/IteratorResultIterator.java
index 69269db93..a2bffd31d 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/IteratorResultIterator.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/IteratorResultIterator.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/KeyProjectedRow.java b/paimon-common/src/main/java/org/apache/paimon/utils/KeyProjectedRow.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/KeyProjectedRow.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/KeyProjectedRow.java
index 723b09746..62742acc8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/KeyProjectedRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/KeyProjectedRow.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/LocalFileUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/LocalFileUtils.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/LocalFileUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/LocalFileUtils.java
index a3930ea79..799d8f2bc 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/LocalFileUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/LocalFileUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.io.IOException;
 import java.nio.file.Files;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/LongCounter.java b/paimon-common/src/main/java/org/apache/paimon/utils/LongCounter.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/LongCounter.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/LongCounter.java
index 77a3d9584..bd25ce56b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/LongCounter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/LongCounter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.io.Serializable;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/MapBuilder.java b/paimon-common/src/main/java/org/apache/paimon/utils/MapBuilder.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/MapBuilder.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/MapBuilder.java
index dc92f4d97..6a068ee5e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/MapBuilder.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/MapBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.util.Collections;
 import java.util.HashMap;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/MathUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/MathUtils.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/MathUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/MathUtils.java
index 6eb7cc15d..11a5f670e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/MathUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/MathUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 /** Collection of simple mathematical routines. */
 public class MathUtils {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/MurmurHashUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/MurmurHashUtils.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/MurmurHashUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/MurmurHashUtils.java
index 52c79b88e..1af9f6358 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/MurmurHashUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/MurmurHashUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.memory.MemorySegment;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/OperatingSystem.java b/paimon-common/src/main/java/org/apache/paimon/utils/OperatingSystem.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/OperatingSystem.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/OperatingSystem.java
index 9026fefa7..9e923b3fa 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/OperatingSystem.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/OperatingSystem.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 /** An enumeration indicating the operating system that the JVM runs on. */
 public enum OperatingSystem {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/OrderedPacking.java b/paimon-common/src/main/java/org/apache/paimon/utils/OrderedPacking.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/OrderedPacking.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/OrderedPacking.java
index bd3295c6f..7e4854782 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/OrderedPacking.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/OrderedPacking.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Pair.java b/paimon-common/src/main/java/org/apache/paimon/utils/Pair.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/Pair.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/Pair.java
index d7423ab9f..3dbec2214 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Pair.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/Pair.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.io.Serializable;
 import java.util.Map;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Pool.java b/paimon-common/src/main/java/org/apache/paimon/utils/Pool.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/Pool.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/Pool.java
index 151f5e473..5a9b2acbe 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Pool.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/Pool.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Preconditions.java b/paimon-common/src/main/java/org/apache/paimon/utils/Preconditions.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/Preconditions.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/Preconditions.java
index 2468749c7..46441a23b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Preconditions.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/Preconditions.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ProjectedRow.java b/paimon-common/src/main/java/org/apache/paimon/utils/ProjectedRow.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/ProjectedRow.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/ProjectedRow.java
index 4b1ab88de..4239b4afb 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ProjectedRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/ProjectedRow.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.RowKind;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowKind;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Projection.java b/paimon-common/src/main/java/org/apache/paimon/utils/Projection.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/Projection.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/Projection.java
index 00eb295ab..553e949ff 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Projection.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/Projection.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
 
@@ -34,7 +34,7 @@ import java.util.Set;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.types.DataTypeRoot.ROW;
+import static org.apache.paimon.types.DataTypeRoot.ROW;
 
 /**
  * {@link Projection} represents a list of (possibly nested) indexes that can be used to project
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/RecyclableIterator.java b/paimon-common/src/main/java/org/apache/paimon/utils/RecyclableIterator.java
similarity index 93%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/RecyclableIterator.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/RecyclableIterator.java
index 9e0e6101d..d6e14f935 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/RecyclableIterator.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/RecyclableIterator.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
-import org.apache.flink.table.store.reader.RecordReader;
+import org.apache.paimon.reader.RecordReader;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Reference.java b/paimon-common/src/main/java/org/apache/paimon/utils/Reference.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/Reference.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/Reference.java
index 1779e6a09..2f006784f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Reference.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/Reference.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.util.Objects;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ReflectionUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/ReflectionUtils.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/ReflectionUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/ReflectionUtils.java
index c9482d72a..bf14043f3 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ReflectionUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/ReflectionUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataToObjectArrayConverter.java b/paimon-common/src/main/java/org/apache/paimon/utils/RowDataToObjectArrayConverter.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataToObjectArrayConverter.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/RowDataToObjectArrayConverter.java
index 9d913b299..a8438fe0b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataToObjectArrayConverter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/RowDataToObjectArrayConverter.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
-import org.apache.flink.table.store.types.RowType;
+import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/RowDataUtils.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/RowDataUtils.java
index 36a6b6e5c..7c3ea4b3b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/RowDataUtils.java
@@ -16,18 +16,18 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
-import org.apache.flink.table.store.types.ArrayType;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypeRoot;
-import org.apache.flink.table.store.types.DecimalType;
-import org.apache.flink.table.store.types.IntType;
-import org.apache.flink.table.store.types.LocalZonedTimestampType;
-import org.apache.flink.table.store.types.MapType;
-import org.apache.flink.table.store.types.MultisetType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.TimestampType;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeRoot;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.LocalZonedTimestampType;
+import org.apache.paimon.types.MapType;
+import org.apache.paimon.types.MultisetType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.TimestampType;
 
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryMap;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/SerializableFunction.java b/paimon-common/src/main/java/org/apache/paimon/utils/SerializableFunction.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/SerializableFunction.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/SerializableFunction.java
index f3edb145e..885591f51 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/SerializableFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/SerializableFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.io.Serializable;
 import java.util.function.Function;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java b/paimon-common/src/main/java/org/apache/paimon/utils/SortUtil.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/SortUtil.java
index b257b7dd8..1359b1c2c 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/SortUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.memory.MemorySegment;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/StringUtils.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/StringUtils.java
index 5d4baa492..099cb0107 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/StringUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.memory.MemorySegmentUtils;
 
@@ -30,8 +30,8 @@ import java.util.Objects;
 import java.util.Random;
 import java.util.concurrent.ThreadLocalRandom;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 import static org.apache.paimon.data.BinaryString.fromBytes;
 
 /**
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ThreadUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/ThreadUtils.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/ThreadUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/ThreadUtils.java
index 6f0c1da33..d70041194 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ThreadUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/ThreadUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 /** Utils for thread. */
 public class ThreadUtils {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ThrowingConsumer.java b/paimon-common/src/main/java/org/apache/paimon/utils/ThrowingConsumer.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/ThrowingConsumer.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/ThrowingConsumer.java
index deb6f828c..723ede928 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ThrowingConsumer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/ThrowingConsumer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 /**
  * This interface is basically Java's {@link java.util.function.Consumer} interface enhanced with
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/TimeUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/TimeUtils.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/TimeUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/TimeUtils.java
index 63e731705..3b8e2ec81 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/TimeUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/TimeUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.time.Duration;
 import java.time.temporal.ChronoUnit;
@@ -29,8 +29,8 @@ import java.util.Map;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
-import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
 /** Collection of utilities about time intervals. */
 public class TimeUtils {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/TypeUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/TypeUtils.java
similarity index 91%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/TypeUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/TypeUtils.java
index 040beaf33..c199734bf 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/TypeUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/TypeUtils.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
-import org.apache.flink.table.store.types.DataField;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypeRoot;
-import org.apache.flink.table.store.types.DecimalType;
-import org.apache.flink.table.store.types.LocalZonedTimestampType;
-import org.apache.flink.table.store.types.RowType;
-import org.apache.flink.table.store.types.TimestampType;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeRoot;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.LocalZonedTimestampType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.TimestampType;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
@@ -37,9 +37,9 @@ import java.util.List;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import static org.apache.flink.table.store.types.DataTypeChecks.getNestedTypes;
-import static org.apache.flink.table.store.types.DataTypeFamily.BINARY_STRING;
-import static org.apache.flink.table.store.types.DataTypeFamily.CHARACTER_STRING;
+import static org.apache.paimon.types.DataTypeChecks.getNestedTypes;
+import static org.apache.paimon.types.DataTypeFamily.BINARY_STRING;
+import static org.apache.paimon.types.DataTypeFamily.CHARACTER_STRING;
 
 /** Type related helper functions. */
 public class TypeUtils {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/VarLengthIntUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/VarLengthIntUtils.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/utils/VarLengthIntUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/utils/VarLengthIntUtils.java
index 706e95b46..f5f476d49 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/VarLengthIntUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/VarLengthIntUtils.java
@@ -12,7 +12,7 @@
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  */
 
-package org.apache.flink.table.store.utils;
+package org.apache.paimon.utils;
 
 import java.io.DataInput;
 import java.io.DataOutput;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java
index bead897fc..38f22ae56 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java
+++ b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java
@@ -19,10 +19,10 @@
 package org.apache.flink.table.store.datagen;
 
 import org.apache.paimon.options.Options;
-import org.apache.flink.table.store.types.DataType;
-import org.apache.flink.table.store.types.DataTypeDefaultVisitor;
-import org.apache.flink.table.store.types.DateType;
-import org.apache.flink.table.store.types.TimeType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeDefaultVisitor;
+import org.apache.paimon.types.DateType;
+import org.apache.paimon.types.TimeType;
 
... 4172 lines suppressed ...


[incubator-paimon] 19/32: [core] Rename paimon to move CodeGeneratorContext

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 63db4d8aea69516bacfac1b91172f8970c7cb4df
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 14:47:51 2023 +0800

    [core] Rename paimon to move CodeGeneratorContext
---
 .../apache/paimon/codegen/CodeGeneratorContext.scala  |  4 ++--
 .../org/apache/paimon/codegen/ExprCodeGenerator.scala |  5 ++---
 .../org/apache/paimon/codegen/SortCodeGenerator.scala |  4 ++--
 .../paimon/codegen/ComparatorCodeGenerator.scala      | 19 ++++++++++---------
 4 files changed, 16 insertions(+), 16 deletions(-)

diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/CodeGeneratorContext.scala
similarity index 98%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala
rename to paimon-codegen/src/main/scala/org/apache/paimon/codegen/CodeGeneratorContext.scala
index ca4eae009..f817ea4e4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala
+++ b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/CodeGeneratorContext.scala
@@ -15,14 +15,14 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package org.apache.paimon.codegen
 
+import org.apache.paimon.codegen.GenerateUtils.{newName, newNames}
 import org.apache.paimon.data.serializer.InternalSerializers
 import org.apache.paimon.types.DataType
 import org.apache.paimon.utils.InstantiationUtil
 
-import GenerateUtils.{newName, newNames}
-
 import scala.collection.mutable
 
 /**
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/ExprCodeGenerator.scala
similarity index 96%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala
rename to paimon-codegen/src/main/scala/org/apache/paimon/codegen/ExprCodeGenerator.scala
index bc64276c1..28d48d23a 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala
+++ b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/ExprCodeGenerator.scala
@@ -17,13 +17,12 @@
  */
 package org.apache.paimon.codegen
 
+import org.apache.paimon.codegen.GenerateUtils.{DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM, generateRecordStatement, rowSetField}
+import org.apache.paimon.codegen.GeneratedExpression.{NEVER_NULL, NO_CODE}
 import org.apache.paimon.data.{BinaryRow, InternalRow}
 import org.apache.paimon.types.{RowType, TimestampType}
 import org.apache.paimon.utils.TypeUtils.isInteroperable
 
-import GeneratedExpression.{NEVER_NULL, NO_CODE}
-import GenerateUtils.{generateRecordStatement, rowSetField, DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM}
-
 class ExprCodeGenerator(ctx: CodeGeneratorContext) {
 
   /**
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/SortCodeGenerator.scala
similarity index 99%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala
rename to paimon-codegen/src/main/scala/org/apache/paimon/codegen/SortCodeGenerator.scala
index 30d3639ea..f51f833e7 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala
+++ b/paimon-codegen/src/main/scala/org/apache/paimon/codegen/SortCodeGenerator.scala
@@ -17,10 +17,10 @@
  */
 package org.apache.paimon.codegen
 
-import org.apache.paimon.codegen.GenerateUtils.{newName, ROW_DATA, SEGMENT}
+import org.apache.paimon.codegen.GenerateUtils.{ROW_DATA, SEGMENT, newName}
 import org.apache.paimon.data.{BinaryRow, Decimal, Timestamp}
-import org.apache.paimon.types.{DataType, DecimalType, RowType, TimestampType}
 import org.apache.paimon.types.DataTypeRoot._
+import org.apache.paimon.types.{DataType, DecimalType, RowType, TimestampType}
 import org.apache.paimon.utils.{SortUtil, TypeUtils}
 
 import scala.collection.mutable
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
index b02875f70..25b4c7e4e 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
@@ -15,9 +15,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package org.apache.paimon.codegen
 
-import org.apache.paimon.codegen.GenerateUtils.{newName, ROW_DATA}
+import org.apache.paimon.codegen.GenerateUtils.{ROW_DATA, newName}
 import org.apache.paimon.types.RowType
 
 /** A code generator for generating [[RecordComparator]]. */
@@ -27,19 +28,19 @@ object ComparatorCodeGenerator {
    * Generates a [[RecordComparator]] that can be passed to a Java compiler.
    *
    * @param name
-   *   Class name of the function. Does not need to be unique but has to be a valid Java class
-   *   identifier.
+   * Class name of the function. Does not need to be unique but has to be a valid Java class
+   * identifier.
    * @param inputType
-   *   input type.
+   * input type.
    * @param sortSpec
-   *   sort specification.
+   * sort specification.
    * @return
-   *   A GeneratedRecordComparator
+   * A GeneratedRecordComparator
    */
   def gen(
-      name: String,
-      inputType: RowType,
-      sortSpec: SortSpec): GeneratedClass[RecordComparator] = {
+           name: String,
+           inputType: RowType,
+           sortSpec: SortSpec): GeneratedClass[RecordComparator] = {
     val className = newName(name)
     val baseClass = classOf[RecordComparator]
 


[incubator-paimon] 09/32: [core] Rename paimon codegen

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 1ac7764940e452ab1e7118f7d0bcc3df9fb5f02c
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 12:47:02 2023 +0800

    [core] Rename paimon codegen
---
 .../pom.xml                                                    |  0
 .../org/apache/flink/table/store/codegen/CodeGenLoader.java    |  0
 {flink-table-store-codegen => paimon-codegen}/pom.xml          |  0
 .../apache/flink/table/store/codegen/CodeGeneratorImpl.java    |  0
 .../java/org/apache/flink/table/store/codegen/SortSpec.java    |  0
 .../org.apache.flink.table.store.codegen.CodeGenerator         |  0
 .../apache/flink/table/store/codegen}/CodeGenException.scala   |  0
 .../flink/table/store/codegen}/CodeGeneratorContext.scala      |  3 ++-
 .../flink/table/store/codegen}/ComparatorCodeGenerator.scala   |  0
 .../apache/flink/table/store/codegen}/ExprCodeGenerator.scala  |  5 +++--
 .../org/apache/flink/table/store/codegen}/GenerateUtils.scala  |  0
 .../flink/table/store/codegen}/GeneratedExpression.scala       |  0
 .../flink/table/store/codegen}/ProjectionCodeGenerator.scala   |  3 ++-
 .../apache/flink/table/store/codegen}/SortCodeGenerator.scala  |  0
 {flink-table-store-common => paimon-common}/pom.xml            |  0
 .../src/main/antlr4/JavaLexer.g4                               |  0
 .../src/main/antlr4/JavaParser.g4                              |  0
 .../org/apache/flink/table/store/annotation/ConfigGroup.java   |  0
 .../org/apache/flink/table/store/annotation/ConfigGroups.java  |  0
 .../org/apache/flink/table/store/annotation/Documentation.java |  0
 .../org/apache/flink/table/store/annotation/Experimental.java  |  0
 .../apache/flink/table/store/annotation/VisibleForTesting.java |  0
 .../org/apache/flink/table/store/catalog/CatalogContext.java   |  0
 .../org/apache/flink/table/store/codegen/CodeGenerator.java    |  0
 .../org/apache/flink/table/store/codegen/CompileUtils.java     |  0
 .../org/apache/flink/table/store/codegen/GeneratedClass.java   |  0
 .../flink/table/store/codegen/NormalizedKeyComputer.java       |  0
 .../java/org/apache/flink/table/store/codegen/Projection.java  |  0
 .../org/apache/flink/table/store/codegen/RecordComparator.java |  0
 .../store/codegen/codesplit/AddBoolBeforeReturnRewriter.java   |  0
 .../table/store/codegen/codesplit/BlockStatementGrouper.java   |  0
 .../table/store/codegen/codesplit/BlockStatementRewriter.java  |  0
 .../table/store/codegen/codesplit/BlockStatementSplitter.java  |  0
 .../flink/table/store/codegen/codesplit/CodeRewriter.java      |  0
 .../flink/table/store/codegen/codesplit/CodeSplitUtil.java     |  0
 .../table/store/codegen/codesplit/DeclarationRewriter.java     |  0
 .../flink/table/store/codegen/codesplit/FunctionSplitter.java  |  0
 .../flink/table/store/codegen/codesplit/JavaCodeSplitter.java  |  0
 .../table/store/codegen/codesplit/MemberFieldRewriter.java     |  0
 .../table/store/codegen/codesplit/ReturnAndJumpCounter.java    |  0
 .../table/store/codegen/codesplit/ReturnValueRewriter.java     |  0
 .../apache/flink/table/store/data/AbstractBinaryWriter.java    |  0
 .../apache/flink/table/store/data/AbstractPagedInputView.java  |  0
 .../apache/flink/table/store/data/AbstractPagedOutputView.java |  0
 .../java/org/apache/flink/table/store/data/BinaryArray.java    |  0
 .../org/apache/flink/table/store/data/BinaryArrayWriter.java   |  0
 .../main/java/org/apache/flink/table/store/data/BinaryMap.java |  0
 .../main/java/org/apache/flink/table/store/data/BinaryRow.java |  0
 .../org/apache/flink/table/store/data/BinaryRowWriter.java     |  0
 .../java/org/apache/flink/table/store/data/BinarySection.java  |  0
 .../java/org/apache/flink/table/store/data/BinaryString.java   |  0
 .../java/org/apache/flink/table/store/data/BinaryWriter.java   |  0
 .../java/org/apache/flink/table/store/data/DataGetters.java    |  0
 .../java/org/apache/flink/table/store/data/DataSetters.java    |  0
 .../main/java/org/apache/flink/table/store/data/Decimal.java   |  0
 .../java/org/apache/flink/table/store/data/GenericArray.java   |  0
 .../java/org/apache/flink/table/store/data/GenericMap.java     |  0
 .../java/org/apache/flink/table/store/data/GenericRow.java     |  0
 .../java/org/apache/flink/table/store/data/InternalArray.java  |  0
 .../java/org/apache/flink/table/store/data/InternalMap.java    |  0
 .../java/org/apache/flink/table/store/data/InternalRow.java    |  0
 .../main/java/org/apache/flink/table/store/data/JoinedRow.java |  0
 .../java/org/apache/flink/table/store/data/LazyGenericRow.java |  0
 .../main/java/org/apache/flink/table/store/data/NestedRow.java |  0
 .../apache/flink/table/store/data/RandomAccessInputView.java   |  0
 .../apache/flink/table/store/data/RandomAccessOutputView.java  |  0
 .../flink/table/store/data/SimpleCollectingOutputView.java     |  0
 .../main/java/org/apache/flink/table/store/data/Timestamp.java |  0
 .../flink/table/store/data/columnar/ArrayColumnVector.java     |  0
 .../flink/table/store/data/columnar/BooleanColumnVector.java   |  0
 .../flink/table/store/data/columnar/ByteColumnVector.java      |  0
 .../flink/table/store/data/columnar/BytesColumnVector.java     |  0
 .../apache/flink/table/store/data/columnar/ColumnVector.java   |  0
 .../apache/flink/table/store/data/columnar/ColumnarArray.java  |  0
 .../apache/flink/table/store/data/columnar/ColumnarMap.java    |  0
 .../apache/flink/table/store/data/columnar/ColumnarRow.java    |  0
 .../flink/table/store/data/columnar/ColumnarRowIterator.java   |  0
 .../flink/table/store/data/columnar/DecimalColumnVector.java   |  0
 .../org/apache/flink/table/store/data/columnar/Dictionary.java |  0
 .../flink/table/store/data/columnar/DoubleColumnVector.java    |  0
 .../flink/table/store/data/columnar/FloatColumnVector.java     |  0
 .../flink/table/store/data/columnar/IntColumnVector.java       |  0
 .../flink/table/store/data/columnar/LongColumnVector.java      |  0
 .../flink/table/store/data/columnar/MapColumnVector.java       |  0
 .../flink/table/store/data/columnar/RowColumnVector.java       |  0
 .../flink/table/store/data/columnar/ShortColumnVector.java     |  0
 .../flink/table/store/data/columnar/TimestampColumnVector.java |  0
 .../flink/table/store/data/columnar/VectorizedColumnBatch.java |  0
 .../table/store/data/columnar/heap/AbstractHeapVector.java     |  0
 .../flink/table/store/data/columnar/heap/HeapArrayVector.java  |  0
 .../table/store/data/columnar/heap/HeapBooleanVector.java      |  0
 .../flink/table/store/data/columnar/heap/HeapByteVector.java   |  0
 .../flink/table/store/data/columnar/heap/HeapBytesVector.java  |  0
 .../flink/table/store/data/columnar/heap/HeapDoubleVector.java |  0
 .../flink/table/store/data/columnar/heap/HeapFloatVector.java  |  0
 .../flink/table/store/data/columnar/heap/HeapIntVector.java    |  0
 .../flink/table/store/data/columnar/heap/HeapLongVector.java   |  0
 .../flink/table/store/data/columnar/heap/HeapMapVector.java    |  0
 .../flink/table/store/data/columnar/heap/HeapRowVector.java    |  0
 .../flink/table/store/data/columnar/heap/HeapShortVector.java  |  0
 .../table/store/data/columnar/heap/HeapTimestampVector.java    |  0
 .../store/data/columnar/writable/AbstractWritableVector.java   |  0
 .../store/data/columnar/writable/WritableBooleanVector.java    |  0
 .../table/store/data/columnar/writable/WritableByteVector.java |  0
 .../store/data/columnar/writable/WritableBytesVector.java      |  0
 .../store/data/columnar/writable/WritableColumnVector.java     |  0
 .../store/data/columnar/writable/WritableDoubleVector.java     |  0
 .../store/data/columnar/writable/WritableFloatVector.java      |  0
 .../table/store/data/columnar/writable/WritableIntVector.java  |  0
 .../table/store/data/columnar/writable/WritableLongVector.java |  0
 .../store/data/columnar/writable/WritableShortVector.java      |  0
 .../store/data/columnar/writable/WritableTimestampVector.java  |  0
 .../table/store/data/serializer/AbstractRowDataSerializer.java |  0
 .../flink/table/store/data/serializer/BinaryRowSerializer.java |  0
 .../flink/table/store/data/serializer/BinarySerializer.java    |  0
 .../table/store/data/serializer/BinaryStringSerializer.java    |  0
 .../flink/table/store/data/serializer/BooleanSerializer.java   |  0
 .../flink/table/store/data/serializer/ByteSerializer.java      |  0
 .../flink/table/store/data/serializer/DecimalSerializer.java   |  0
 .../flink/table/store/data/serializer/DoubleSerializer.java    |  0
 .../flink/table/store/data/serializer/FloatSerializer.java     |  0
 .../flink/table/store/data/serializer/IntSerializer.java       |  0
 .../table/store/data/serializer/InternalArraySerializer.java   |  0
 .../table/store/data/serializer/InternalMapSerializer.java     |  0
 .../table/store/data/serializer/InternalRowSerializer.java     |  0
 .../flink/table/store/data/serializer/InternalSerializers.java |  0
 .../flink/table/store/data/serializer/ListSerializer.java      |  0
 .../flink/table/store/data/serializer/LongSerializer.java      |  0
 .../flink/table/store/data/serializer/NullableSerializer.java  |  0
 .../flink/table/store/data/serializer/PagedTypeSerializer.java |  0
 .../table/store/data/serializer/RowCompactedSerializer.java    |  0
 .../apache/flink/table/store/data/serializer/Serializer.java   |  0
 .../flink/table/store/data/serializer/SerializerSingleton.java |  0
 .../flink/table/store/data/serializer/ShortSerializer.java     |  0
 .../flink/table/store/data/serializer/TimestampSerializer.java |  0
 .../flink/table/store/data/serializer/VersionedSerializer.java |  0
 .../java/org/apache/flink/table/store/file/predicate/And.java  |  0
 .../apache/flink/table/store/file/predicate/CompareUtils.java  |  0
 .../flink/table/store/file/predicate/CompoundPredicate.java    |  0
 .../org/apache/flink/table/store/file/predicate/Equal.java     |  0
 .../org/apache/flink/table/store/file/predicate/FieldRef.java  |  0
 .../flink/table/store/file/predicate/FunctionVisitor.java      |  0
 .../flink/table/store/file/predicate/GreaterOrEqual.java       |  0
 .../apache/flink/table/store/file/predicate/GreaterThan.java   |  0
 .../java/org/apache/flink/table/store/file/predicate/In.java   |  0
 .../org/apache/flink/table/store/file/predicate/IsNotNull.java |  0
 .../org/apache/flink/table/store/file/predicate/IsNull.java    |  0
 .../apache/flink/table/store/file/predicate/LeafFunction.java  |  0
 .../apache/flink/table/store/file/predicate/LeafPredicate.java |  0
 .../flink/table/store/file/predicate/LeafUnaryFunction.java    |  0
 .../apache/flink/table/store/file/predicate/LessOrEqual.java   |  0
 .../org/apache/flink/table/store/file/predicate/LessThan.java  |  0
 .../org/apache/flink/table/store/file/predicate/NotEqual.java  |  0
 .../org/apache/flink/table/store/file/predicate/NotIn.java     |  0
 .../store/file/predicate/NullFalseLeafBinaryFunction.java      |  0
 .../java/org/apache/flink/table/store/file/predicate/Or.java   |  0
 .../org/apache/flink/table/store/file/predicate/Predicate.java |  0
 .../flink/table/store/file/predicate/PredicateBuilder.java     |  0
 .../flink/table/store/file/predicate/PredicateFilter.java      |  0
 .../table/store/file/predicate/PredicateReplaceVisitor.java    |  0
 .../flink/table/store/file/predicate/PredicateVisitor.java     |  0
 .../apache/flink/table/store/file/predicate/StartsWith.java    |  0
 .../src/main/java/org/apache/flink/table/store/fs/FileIO.java  |  0
 .../java/org/apache/flink/table/store/fs/FileIOLoader.java     |  0
 .../main/java/org/apache/flink/table/store/fs/FileStatus.java  |  0
 .../src/main/java/org/apache/flink/table/store/fs/Path.java    |  0
 .../java/org/apache/flink/table/store/fs/PluginFileIO.java     |  0
 .../org/apache/flink/table/store/fs/PositionOutputStream.java  |  0
 .../flink/table/store/fs/PositionOutputStreamWrapper.java      |  0
 .../org/apache/flink/table/store/fs/SeekableInputStream.java   |  0
 .../flink/table/store/fs/SeekableInputStreamWrapper.java       |  0
 .../flink/table/store/fs/UnsupportedSchemeException.java       |  0
 .../org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java   |  0
 .../apache/flink/table/store/fs/hadoop/HadoopFileIOLoader.java |  0
 .../org/apache/flink/table/store/fs/local/LocalFileIO.java     |  0
 .../apache/flink/table/store/fs/local/LocalFileIOLoader.java   |  0
 .../flink/table/store/hadoop/SerializableConfiguration.java    |  0
 .../org/apache/flink/table/store/io/DataInputDeserializer.java |  0
 .../java/org/apache/flink/table/store/io/DataInputView.java    |  0
 .../org/apache/flink/table/store/io/DataInputViewStream.java   |  0
 .../flink/table/store/io/DataInputViewStreamWrapper.java       |  0
 .../org/apache/flink/table/store/io/DataOutputSerializer.java  |  0
 .../java/org/apache/flink/table/store/io/DataOutputView.java   |  0
 .../org/apache/flink/table/store/io/DataOutputViewStream.java  |  0
 .../flink/table/store/io/DataOutputViewStreamWrapper.java      |  0
 .../org/apache/flink/table/store/io/SeekableDataInputView.java |  0
 .../org/apache/flink/table/store/io/cache/CacheManager.java    |  0
 .../flink/table/store/io/cache/CachedRandomInputView.java      |  0
 .../apache/flink/table/store/lookup/LookupStoreFactory.java    |  0
 .../org/apache/flink/table/store/lookup/LookupStoreReader.java |  0
 .../org/apache/flink/table/store/lookup/LookupStoreWriter.java |  0
 .../flink/table/store/lookup/hash/HashLookupStoreFactory.java  |  0
 .../flink/table/store/lookup/hash/HashLookupStoreReader.java   |  0
 .../flink/table/store/lookup/hash/HashLookupStoreWriter.java   |  0
 .../org/apache/flink/table/store/memory/MemorySegment.java     |  0
 .../apache/flink/table/store/memory/MemorySegmentSource.java   |  0
 .../apache/flink/table/store/memory/MemorySegmentUtils.java    |  0
 .../apache/flink/table/store/memory/MemorySegmentWritable.java |  0
 .../java/org/apache/flink/table/store/memory/MemoryUtils.java  |  0
 .../org/apache/flink/table/store/options/CatalogOptions.java   |  0
 .../org/apache/flink/table/store/options/ConfigOption.java     |  0
 .../org/apache/flink/table/store/options/ConfigOptions.java    |  0
 .../java/org/apache/flink/table/store/options/FallbackKey.java |  0
 .../java/org/apache/flink/table/store/options/MemorySize.java  |  0
 .../java/org/apache/flink/table/store/options/Options.java     |  0
 .../org/apache/flink/table/store/options/OptionsUtils.java     |  0
 .../flink/table/store/options/StructuredOptionsSplitter.java   |  0
 .../flink/table/store/options/description/BlockElement.java    |  0
 .../flink/table/store/options/description/DescribedEnum.java   |  0
 .../flink/table/store/options/description/Description.java     |  0
 .../table/store/options/description/DescriptionElement.java    |  0
 .../flink/table/store/options/description/Formatter.java       |  0
 .../flink/table/store/options/description/HtmlFormatter.java   |  0
 .../flink/table/store/options/description/InlineElement.java   |  0
 .../table/store/options/description/LineBreakElement.java      |  0
 .../flink/table/store/options/description/LinkElement.java     |  0
 .../flink/table/store/options/description/ListElement.java     |  0
 .../flink/table/store/options/description/TextElement.java     |  0
 .../apache/flink/table/store/plugin/ComponentClassLoader.java  |  0
 .../java/org/apache/flink/table/store/plugin/PluginLoader.java |  0
 .../java/org/apache/flink/table/store/reader/RecordReader.java |  0
 .../apache/flink/table/store/reader/RecordReaderIterator.java  |  0
 .../java/org/apache/flink/table/store/table/TableType.java     |  0
 .../java/org/apache/flink/table/store/types/ArrayType.java     |  0
 .../java/org/apache/flink/table/store/types/BigIntType.java    |  0
 .../java/org/apache/flink/table/store/types/BinaryType.java    |  0
 .../java/org/apache/flink/table/store/types/BooleanType.java   |  0
 .../main/java/org/apache/flink/table/store/types/CharType.java |  0
 .../java/org/apache/flink/table/store/types/DataField.java     |  0
 .../main/java/org/apache/flink/table/store/types/DataType.java |  0
 .../java/org/apache/flink/table/store/types/DataTypeCasts.java |  0
 .../org/apache/flink/table/store/types/DataTypeChecks.java     |  0
 .../apache/flink/table/store/types/DataTypeDefaultVisitor.java |  0
 .../org/apache/flink/table/store/types/DataTypeFamily.java     |  0
 .../org/apache/flink/table/store/types/DataTypeJsonParser.java |  0
 .../java/org/apache/flink/table/store/types/DataTypeRoot.java  |  0
 .../org/apache/flink/table/store/types/DataTypeVisitor.java    |  0
 .../java/org/apache/flink/table/store/types/DataTypes.java     |  0
 .../main/java/org/apache/flink/table/store/types/DateType.java |  0
 .../java/org/apache/flink/table/store/types/DecimalType.java   |  0
 .../java/org/apache/flink/table/store/types/DoubleType.java    |  0
 .../java/org/apache/flink/table/store/types/FloatType.java     |  0
 .../main/java/org/apache/flink/table/store/types/IntType.java  |  0
 .../flink/table/store/types/LocalZonedTimestampType.java       |  0
 .../main/java/org/apache/flink/table/store/types/MapType.java  |  0
 .../java/org/apache/flink/table/store/types/MultisetType.java  |  0
 .../org/apache/flink/table/store/types/ReassignFieldId.java    |  0
 .../main/java/org/apache/flink/table/store/types/RowKind.java  |  0
 .../main/java/org/apache/flink/table/store/types/RowType.java  |  0
 .../java/org/apache/flink/table/store/types/SmallIntType.java  |  0
 .../main/java/org/apache/flink/table/store/types/TimeType.java |  0
 .../java/org/apache/flink/table/store/types/TimestampType.java |  0
 .../java/org/apache/flink/table/store/types/TinyIntType.java   |  0
 .../java/org/apache/flink/table/store/types/VarBinaryType.java |  0
 .../java/org/apache/flink/table/store/types/VarCharType.java   |  0
 .../java/org/apache/flink/table/store/utils/ArrayUtils.java    |  0
 .../org/apache/flink/table/store/utils/BinaryRowDataUtil.java  |  0
 .../org/apache/flink/table/store/utils/CloseableIterator.java  |  0
 .../java/org/apache/flink/table/store/utils/DateTimeUtils.java |  0
 .../java/org/apache/flink/table/store/utils/DecimalUtils.java  |  0
 .../java/org/apache/flink/table/store/utils/EncodingUtils.java |  0
 .../org/apache/flink/table/store/utils/ExceptionUtils.java     |  0
 .../java/org/apache/flink/table/store/utils/FileIOUtils.java   |  0
 .../main/java/org/apache/flink/table/store/utils/Filter.java   |  0
 .../apache/flink/table/store/utils/FunctionWithException.java  |  0
 .../java/org/apache/flink/table/store/utils/HadoopUtils.java   |  0
 .../java/org/apache/flink/table/store/utils/IOFunction.java    |  0
 .../main/java/org/apache/flink/table/store/utils/IOUtils.java  |  0
 .../org/apache/flink/table/store/utils/InstantiationUtil.java  |  0
 .../apache/flink/table/store/utils/IteratorResultIterator.java |  0
 .../org/apache/flink/table/store/utils/KeyProjectedRow.java    |  0
 .../org/apache/flink/table/store/utils/LocalFileUtils.java     |  0
 .../java/org/apache/flink/table/store/utils/LongCounter.java   |  0
 .../java/org/apache/flink/table/store/utils/MapBuilder.java    |  0
 .../java/org/apache/flink/table/store/utils/MathUtils.java     |  0
 .../org/apache/flink/table/store/utils/MurmurHashUtils.java    |  0
 .../org/apache/flink/table/store/utils/OperatingSystem.java    |  0
 .../org/apache/flink/table/store/utils/OrderedPacking.java     |  0
 .../src/main/java/org/apache/flink/table/store/utils/Pair.java |  0
 .../src/main/java/org/apache/flink/table/store/utils/Pool.java |  0
 .../java/org/apache/flink/table/store/utils/Preconditions.java |  0
 .../java/org/apache/flink/table/store/utils/ProjectedRow.java  |  0
 .../java/org/apache/flink/table/store/utils/Projection.java    |  0
 .../org/apache/flink/table/store/utils/RecyclableIterator.java |  0
 .../java/org/apache/flink/table/store/utils/Reference.java     |  0
 .../org/apache/flink/table/store/utils/ReflectionUtils.java    |  0
 .../flink/table/store/utils/RowDataToObjectArrayConverter.java |  0
 .../java/org/apache/flink/table/store/utils/RowDataUtils.java  |  0
 .../apache/flink/table/store/utils/SerializableFunction.java   |  0
 .../main/java/org/apache/flink/table/store/utils/SortUtil.java |  0
 .../java/org/apache/flink/table/store/utils/StringUtils.java   |  0
 .../java/org/apache/flink/table/store/utils/ThreadUtils.java   |  0
 .../org/apache/flink/table/store/utils/ThrowingConsumer.java   |  0
 .../java/org/apache/flink/table/store/utils/TimeUtils.java     |  0
 .../java/org/apache/flink/table/store/utils/TypeUtils.java     |  0
 .../org/apache/flink/table/store/utils/VarLengthIntUtils.java  |  0
 .../src/main/java/org/apache/paimon/format/FieldStats.java     |  0
 .../java/org/apache/paimon/format/FieldStatsCollector.java     |  0
 .../src/main/java/org/apache/paimon/format/FileFormat.java     |  0
 .../main/java/org/apache/paimon/format/FileFormatFactory.java  |  0
 .../main/java/org/apache/paimon/format/FileStatsExtractor.java |  0
 .../java/org/apache/paimon/format/FormatReaderFactory.java     |  0
 .../src/main/java/org/apache/paimon/format/FormatWriter.java   |  0
 .../java/org/apache/paimon/format/FormatWriterFactory.java     |  0
 .../src/main/resources/META-INF/NOTICE                         |  0
 .../META-INF/licenses/LICENSE.antlr-java-grammar-files         |  0
 .../src/main/resources/META-INF/licenses/LICENSE.antlr-runtime |  0
 .../services/org.apache.flink.table.store.fs.FileIOLoader      |  0
 .../codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java  |  0
 .../store/codegen/codesplit/BlockStatementGrouperTest.java     |  0
 .../store/codegen/codesplit/BlockStatementRewriterTest.java    |  0
 .../store/codegen/codesplit/BlockStatementSplitterTest.java    |  0
 .../table/store/codegen/codesplit/CodeRewriterTestBase.java    |  0
 .../flink/table/store/codegen/codesplit/CodeSplitTestUtil.java |  0
 .../table/store/codegen/codesplit/DeclarationRewriterTest.java |  0
 .../table/store/codegen/codesplit/FunctionSplitterTest.java    |  0
 .../table/store/codegen/codesplit/JavaCodeSplitterTest.java    |  0
 .../flink/table/store/codegen/codesplit/JavaParserTest.java    |  0
 .../table/store/codegen/codesplit/MemberFieldRewriterTest.java |  0
 .../table/store/codegen/codesplit/ReturnValueRewriterTest.java |  0
 .../java/org/apache/flink/table/store/data/BinaryRowTest.java  |  0
 .../org/apache/flink/table/store/data/BinaryStringTest.java    |  0
 .../org/apache/flink/table/store/data/DataFormatTestUtil.java  |  0
 .../java/org/apache/flink/table/store/data/DecimalTest.java    |  0
 .../java/org/apache/flink/table/store/data/MapDataUtil.java    |  0
 .../java/org/apache/flink/table/store/data/NestedRowTest.java  |  0
 .../java/org/apache/flink/table/store/data/RowDataTest.java    |  0
 .../java/org/apache/flink/table/store/data/TimestampTest.java  |  0
 .../table/store/data/serializer/BinarySerializerTest.java      |  0
 .../store/data/serializer/BinaryStringSerializerTest.java      |  0
 .../table/store/data/serializer/BooleanSerializerTest.java     |  0
 .../flink/table/store/data/serializer/ByteSerializerTest.java  |  0
 .../table/store/data/serializer/DecimalSerializerTest.java     |  0
 .../table/store/data/serializer/DoubleSerializerTest.java      |  0
 .../flink/table/store/data/serializer/FloatSerializerTest.java |  0
 .../flink/table/store/data/serializer/IntSerializerTest.java   |  0
 .../store/data/serializer/InternalArraySerializerTest.java     |  0
 .../table/store/data/serializer/InternalMapSerializerTest.java |  0
 .../table/store/data/serializer/InternalRowSerializerTest.java |  0
 .../flink/table/store/data/serializer/ListSerializerTest.java  |  0
 .../flink/table/store/data/serializer/LongSerializerTest.java  |  0
 .../table/store/data/serializer/NullableSerializerTest.java    |  0
 .../store/data/serializer/RowCompactedSerializerTest.java      |  0
 .../flink/table/store/data/serializer/SerializerTestBase.java  |  0
 .../table/store/data/serializer/SerializerTestInstance.java    |  0
 .../flink/table/store/data/serializer/ShortSerializerTest.java |  0
 .../table/store/data/serializer/TimestampSerializerTest.java   |  0
 .../apache/flink/table/store/datagen/DataGenVisitorBase.java   |  0
 .../org/apache/flink/table/store/datagen/DataGenerator.java    |  0
 .../flink/table/store/datagen/DataGeneratorContainer.java      |  0
 .../apache/flink/table/store/datagen/DataGeneratorMapper.java  |  0
 .../org/apache/flink/table/store/datagen/RandomGenerator.java  |  0
 .../flink/table/store/datagen/RandomGeneratorVisitor.java      |  0
 .../org/apache/flink/table/store/datagen/RowDataGenerator.java |  0
 .../apache/flink/table/store/fs/FileIOBehaviorTestBase.java    |  0
 .../java/org/apache/flink/table/store/fs/FileIOFinder.java     |  0
 .../apache/flink/table/store/fs/HadoopConfigLoadingTest.java   |  0
 .../flink/table/store/fs/HadoopLocalFileIOBehaviorTest.java    |  0
 .../java/org/apache/flink/table/store/fs/HdfsBehaviorTest.java |  0
 .../apache/flink/table/store/fs/LocalFileIOBehaviorTest.java   |  0
 .../flink/table/store/io/cache/CachedRandomInputViewTest.java  |  0
 .../table/store/lookup/hash/HashLookupStoreFactoryTest.java    |  0
 .../apache/flink/table/store/memory/MemorySegmentTestBase.java |  0
 .../table/store/memory/OffHeapDirectMemorySegmentTest.java     |  0
 .../flink/table/store/memory/OnHeapMemorySegmentTest.java      |  0
 .../org/apache/flink/table/store/types/DataTypeAssert.java     |  0
 .../org/apache/flink/table/store/types/DataTypeChecksTest.java |  0
 .../java/org/apache/flink/table/store/types/DataTypesTest.java |  0
 .../org/apache/flink/table/store/utils/CommonTestUtils.java    |  0
 .../org/apache/flink/table/store/utils/LocalFileUtilsTest.java |  0
 .../org/apache/flink/table/store/utils/RowDataUtilsTest.java   |  0
 .../java/org/apache/flink/table/store/utils/TempDirUtils.java  |  0
 .../org/apache/paimon/format/FileStatsExtractorTestBase.java   |  0
 .../codesplit/add-boolean/code/TestAddBooleanBeforeReturn.java |  0
 .../resources/codesplit/add-boolean/code/TestNotRewrite.java   |  0
 .../codesplit/add-boolean/code/TestRewriteInnerClass.java      |  0
 .../add-boolean/code/TestSkipAnonymousClassAndLambda.java      |  0
 .../add-boolean/expected/TestAddBooleanBeforeReturn.java       |  0
 .../codesplit/add-boolean/expected/TestNotRewrite.java         |  0
 .../codesplit/add-boolean/expected/TestRewriteInnerClass.java  |  0
 .../add-boolean/expected/TestSkipAnonymousClassAndLambda.java  |  0
 .../codesplit/block/code/TestIfInsideWhileLoopRewrite.java     |  0
 .../block/code/TestIfMultipleSingleLineStatementRewrite.java   |  0
 .../resources/codesplit/block/code/TestIfStatementRewrite.java |  0
 .../codesplit/block/code/TestIfStatementRewrite1.java          |  0
 .../codesplit/block/code/TestIfStatementRewrite2.java          |  0
 .../codesplit/block/code/TestIfStatementRewrite3.java          |  0
 .../TestNotRewriteIfStatementInFunctionWithReturnValue.java    |  0
 .../resources/codesplit/block/code/TestRewriteInnerClass.java  |  0
 .../codesplit/block/code/TestRewriteTwoStatements.java         |  0
 .../codesplit/block/code/TestWhileLoopInsideIfRewrite.java     |  0
 .../resources/codesplit/block/code/TestWhileLoopRewrite.java   |  0
 .../codesplit/block/expected/TestIfInsideWhileLoopRewrite.java |  0
 .../expected/TestIfMultipleSingleLineStatementRewrite.java     |  0
 .../codesplit/block/expected/TestIfStatementRewrite.java       |  0
 .../codesplit/block/expected/TestIfStatementRewrite1.java      |  0
 .../codesplit/block/expected/TestIfStatementRewrite2.java      |  0
 .../codesplit/block/expected/TestIfStatementRewrite3.java      |  0
 .../TestNotRewriteIfStatementInFunctionWithReturnValue.java    |  0
 .../codesplit/block/expected/TestRewriteInnerClass.java        |  0
 .../codesplit/block/expected/TestRewriteTwoStatements.java     |  0
 .../codesplit/block/expected/TestWhileLoopInsideIfRewrite.java |  0
 .../codesplit/block/expected/TestWhileLoopRewrite.java         |  0
 .../code/TestLocalVariableAndMemberVariableWithSameName.java   |  0
 .../declaration/code/TestLocalVariableWithSameName.java        |  0
 .../TestNotRewriteLocalVariableInFunctionWithReturnValue.java  |  0
 .../codesplit/declaration/code/TestRewriteInnerClass.java      |  0
 .../codesplit/declaration/code/TestRewriteLocalVariable.java   |  0
 .../declaration/code/TestRewriteLocalVariableInForLoop1.java   |  0
 .../declaration/code/TestRewriteLocalVariableInForLoop2.java   |  0
 .../TestLocalVariableAndMemberVariableWithSameName.java        |  0
 .../declaration/expected/TestLocalVariableWithSameName.java    |  0
 .../TestNotRewriteLocalVariableInFunctionWithReturnValue.java  |  0
 .../codesplit/declaration/expected/TestRewriteInnerClass.java  |  0
 .../declaration/expected/TestRewriteLocalVariable.java         |  0
 .../expected/TestRewriteLocalVariableInForLoop1.java           |  0
 .../expected/TestRewriteLocalVariableInForLoop2.java           |  0
 .../code/TestNotSplitFunctionWithOnlyOneStatement.java         |  0
 .../function/code/TestNotSplitFunctionWithReturnValue.java     |  0
 .../codesplit/function/code/TestRewriteInnerClass.java         |  0
 .../resources/codesplit/function/code/TestSplitFunction.java   |  0
 .../expected/TestNotSplitFunctionWithOnlyOneStatement.java     |  0
 .../function/expected/TestNotSplitFunctionWithReturnValue.java |  0
 .../codesplit/function/expected/TestRewriteInnerClass.java     |  0
 .../codesplit/function/expected/TestSplitFunction.java         |  0
 .../src/test/resources/codesplit/groups/code/IfInWhile.txt     |  0
 .../src/test/resources/codesplit/groups/code/WhileInIf.txt     |  0
 .../src/test/resources/codesplit/groups/expected/IfInWhile.txt |  0
 .../src/test/resources/codesplit/groups/expected/WhileInIf.txt |  0
 .../codesplit/member/code/TestNotRewriteFunctionParameter.java |  0
 .../codesplit/member/code/TestNotRewriteLocalVariable.java     |  0
 .../resources/codesplit/member/code/TestNotRewriteMember.java  |  0
 .../codesplit/member/code/TestRewriteGenericType.java          |  0
 .../resources/codesplit/member/code/TestRewriteInnerClass.java |  0
 .../codesplit/member/code/TestRewriteMemberField.java          |  0
 .../member/expected/TestNotRewriteFunctionParameter.java       |  0
 .../codesplit/member/expected/TestNotRewriteLocalVariable.java |  0
 .../codesplit/member/expected/TestNotRewriteMember.java        |  0
 .../codesplit/member/expected/TestRewriteGenericType.java      |  0
 .../codesplit/member/expected/TestRewriteInnerClass.java       |  0
 .../codesplit/member/expected/TestRewriteMemberField.java      |  0
 .../test/resources/codesplit/return/code/TestNotRewrite.java   |  0
 .../resources/codesplit/return/code/TestRewriteInnerClass.java |  0
 .../codesplit/return/code/TestRewriteReturnValue.java          |  0
 .../codesplit/return/code/TestSkipAnonymousClassAndLambda.java |  0
 .../resources/codesplit/return/expected/TestNotRewrite.java    |  0
 .../codesplit/return/expected/TestRewriteInnerClass.java       |  0
 .../codesplit/return/expected/TestRewriteReturnValue.java      |  0
 .../return/expected/TestSkipAnonymousClassAndLambda.java       |  0
 .../codesplit/splitter/code/TestNotSplitJavaCode.java          |  0
 .../resources/codesplit/splitter/code/TestSplitJavaCode.java   |  0
 .../codesplit/splitter/expected/TestNotSplitJavaCode.java      |  0
 .../codesplit/splitter/expected/TestSplitJavaCode.java         |  0
 .../src/test/resources/core-site.xml                           |  0
 .../src/test/resources/log4j2-test.properties                  |  0
 pom.xml                                                        | 10 +++++-----
 tools/maven/suppressions.xml                                   |  2 +-
 457 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/flink-table-store-codegen-loader/pom.xml b/paimon-codegen-loader/pom.xml
similarity index 100%
rename from flink-table-store-codegen-loader/pom.xml
rename to paimon-codegen-loader/pom.xml
diff --git a/flink-table-store-codegen-loader/src/main/java/org/apache/flink/table/store/codegen/CodeGenLoader.java b/paimon-codegen-loader/src/main/java/org/apache/flink/table/store/codegen/CodeGenLoader.java
similarity index 100%
rename from flink-table-store-codegen-loader/src/main/java/org/apache/flink/table/store/codegen/CodeGenLoader.java
rename to paimon-codegen-loader/src/main/java/org/apache/flink/table/store/codegen/CodeGenLoader.java
diff --git a/flink-table-store-codegen/pom.xml b/paimon-codegen/pom.xml
similarity index 100%
rename from flink-table-store-codegen/pom.xml
rename to paimon-codegen/pom.xml
diff --git a/flink-table-store-codegen/src/main/java/org/apache/flink/table/store/codegen/CodeGeneratorImpl.java b/paimon-codegen/src/main/java/org/apache/flink/table/store/codegen/CodeGeneratorImpl.java
similarity index 100%
rename from flink-table-store-codegen/src/main/java/org/apache/flink/table/store/codegen/CodeGeneratorImpl.java
rename to paimon-codegen/src/main/java/org/apache/flink/table/store/codegen/CodeGeneratorImpl.java
diff --git a/flink-table-store-codegen/src/main/java/org/apache/flink/table/store/codegen/SortSpec.java b/paimon-codegen/src/main/java/org/apache/flink/table/store/codegen/SortSpec.java
similarity index 100%
rename from flink-table-store-codegen/src/main/java/org/apache/flink/table/store/codegen/SortSpec.java
rename to paimon-codegen/src/main/java/org/apache/flink/table/store/codegen/SortSpec.java
diff --git a/flink-table-store-codegen/src/main/resources/META-INF/services/org.apache.flink.table.store.codegen.CodeGenerator b/paimon-codegen/src/main/resources/META-INF/services/org.apache.flink.table.store.codegen.CodeGenerator
similarity index 100%
rename from flink-table-store-codegen/src/main/resources/META-INF/services/org.apache.flink.table.store.codegen.CodeGenerator
rename to paimon-codegen/src/main/resources/META-INF/services/org.apache.flink.table.store.codegen.CodeGenerator
diff --git a/flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/CodeGenException.scala b/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/CodeGenException.scala
similarity index 100%
rename from flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/CodeGenException.scala
rename to paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/CodeGenException.scala
diff --git a/flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/CodeGeneratorContext.scala b/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/CodeGeneratorContext.scala
similarity index 98%
rename from flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/CodeGeneratorContext.scala
rename to paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/CodeGeneratorContext.scala
index 743d54cc1..0819ceefe 100644
--- a/flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/CodeGeneratorContext.scala
+++ b/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/CodeGeneratorContext.scala
@@ -17,11 +17,12 @@
  */
 package org.apache.flink.table.store.codegen
 
-import org.apache.flink.table.store.codegen.GenerateUtils.{newName, newNames}
 import org.apache.flink.table.store.data.serializer.InternalSerializers
 import org.apache.flink.table.store.types.DataType
 import org.apache.flink.table.store.utils.InstantiationUtil
 
+import GenerateUtils.{newName, newNames}
+
 import scala.collection.mutable
 
 /**
diff --git a/flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/ComparatorCodeGenerator.scala b/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ComparatorCodeGenerator.scala
similarity index 100%
rename from flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/ComparatorCodeGenerator.scala
rename to paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ComparatorCodeGenerator.scala
diff --git a/flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/ExprCodeGenerator.scala b/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ExprCodeGenerator.scala
similarity index 96%
rename from flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/ExprCodeGenerator.scala
rename to paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ExprCodeGenerator.scala
index 048f1f93f..9d41244ad 100644
--- a/flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/ExprCodeGenerator.scala
+++ b/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ExprCodeGenerator.scala
@@ -17,12 +17,13 @@
  */
 package org.apache.flink.table.store.codegen
 
-import org.apache.flink.table.store.codegen.GeneratedExpression.{NEVER_NULL, NO_CODE}
-import org.apache.flink.table.store.codegen.GenerateUtils.{generateRecordStatement, rowSetField, DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM}
 import org.apache.flink.table.store.data.{BinaryRow, InternalRow}
 import org.apache.flink.table.store.types.{RowType, TimestampType}
 import org.apache.flink.table.store.utils.TypeUtils.isInteroperable
 
+import GeneratedExpression.{NEVER_NULL, NO_CODE}
+import GenerateUtils.{generateRecordStatement, rowSetField, DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM}
+
 class ExprCodeGenerator(ctx: CodeGeneratorContext) {
 
   /**
diff --git a/flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/GenerateUtils.scala b/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/GenerateUtils.scala
similarity index 100%
rename from flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/GenerateUtils.scala
rename to paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/GenerateUtils.scala
diff --git a/flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/GeneratedExpression.scala b/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/GeneratedExpression.scala
similarity index 100%
rename from flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/GeneratedExpression.scala
rename to paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/GeneratedExpression.scala
diff --git a/flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/ProjectionCodeGenerator.scala b/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ProjectionCodeGenerator.scala
similarity index 98%
rename from flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/ProjectionCodeGenerator.scala
rename to paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ProjectionCodeGenerator.scala
index 05d33b871..328007a27 100644
--- a/flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/ProjectionCodeGenerator.scala
+++ b/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ProjectionCodeGenerator.scala
@@ -17,11 +17,12 @@
  */
 package org.apache.flink.table.store.codegen
 
-import org.apache.flink.table.store.codegen.GeneratedExpression.{NEVER_NULL, NO_CODE}
 import org.apache.flink.table.store.codegen.GenerateUtils.{generateRecordStatement, newName, DEFAULT_INPUT1_TERM, DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM, ROW_DATA}
 import org.apache.flink.table.store.data.{BinaryRow, InternalRow}
 import org.apache.flink.table.store.types.RowType
 
+import GeneratedExpression.{NEVER_NULL, NO_CODE}
+
 /**
  * CodeGenerator for projection, Take out some fields of [[InternalRow]] to generate a new
  * [[InternalRow]].
diff --git a/flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/SortCodeGenerator.scala b/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/SortCodeGenerator.scala
similarity index 100%
rename from flink-table-store-codegen/src/main/scala/org.apache.flink.table.store.codegen/SortCodeGenerator.scala
rename to paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/SortCodeGenerator.scala
diff --git a/flink-table-store-common/pom.xml b/paimon-common/pom.xml
similarity index 100%
rename from flink-table-store-common/pom.xml
rename to paimon-common/pom.xml
diff --git a/flink-table-store-common/src/main/antlr4/JavaLexer.g4 b/paimon-common/src/main/antlr4/JavaLexer.g4
similarity index 100%
rename from flink-table-store-common/src/main/antlr4/JavaLexer.g4
rename to paimon-common/src/main/antlr4/JavaLexer.g4
diff --git a/flink-table-store-common/src/main/antlr4/JavaParser.g4 b/paimon-common/src/main/antlr4/JavaParser.g4
similarity index 100%
rename from flink-table-store-common/src/main/antlr4/JavaParser.g4
rename to paimon-common/src/main/antlr4/JavaParser.g4
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroup.java b/paimon-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroup.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroup.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroup.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroups.java b/paimon-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroups.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroups.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroups.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/Documentation.java b/paimon-common/src/main/java/org/apache/flink/table/store/annotation/Documentation.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/Documentation.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/annotation/Documentation.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/Experimental.java b/paimon-common/src/main/java/org/apache/flink/table/store/annotation/Experimental.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/Experimental.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/annotation/Experimental.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/VisibleForTesting.java b/paimon-common/src/main/java/org/apache/flink/table/store/annotation/VisibleForTesting.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/annotation/VisibleForTesting.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/annotation/VisibleForTesting.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/catalog/CatalogContext.java b/paimon-common/src/main/java/org/apache/flink/table/store/catalog/CatalogContext.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/catalog/CatalogContext.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/catalog/CatalogContext.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/CodeGenerator.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/CodeGenerator.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/CodeGenerator.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/CodeGenerator.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/CompileUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/CompileUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/CompileUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/CompileUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/GeneratedClass.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/GeneratedClass.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/GeneratedClass.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/GeneratedClass.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/NormalizedKeyComputer.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/NormalizedKeyComputer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/NormalizedKeyComputer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/NormalizedKeyComputer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/Projection.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/Projection.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/Projection.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/Projection.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/RecordComparator.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/RecordComparator.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/RecordComparator.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/RecordComparator.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/AddBoolBeforeReturnRewriter.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/AddBoolBeforeReturnRewriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/AddBoolBeforeReturnRewriter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/AddBoolBeforeReturnRewriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouper.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouper.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouper.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouper.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriter.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitter.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriter.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitUtil.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitUtil.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitUtil.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitUtil.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriter.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitter.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitter.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriter.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnAndJumpCounter.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnAndJumpCounter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnAndJumpCounter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnAndJumpCounter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriter.java b/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/AbstractBinaryWriter.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractBinaryWriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/AbstractBinaryWriter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractBinaryWriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedInputView.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedInputView.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedInputView.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedInputView.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedOutputView.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedOutputView.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedOutputView.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedOutputView.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryArray.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryArray.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryArray.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryArray.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryArrayWriter.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryArrayWriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryArrayWriter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryArrayWriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryMap.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryMap.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryMap.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryMap.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryRow.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryRow.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryRow.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryRow.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryRowWriter.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryRowWriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryRowWriter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryRowWriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinarySection.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/BinarySection.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinarySection.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/BinarySection.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryString.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryString.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryString.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryString.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryWriter.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryWriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/BinaryWriter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryWriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/DataGetters.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/DataGetters.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/DataGetters.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/DataGetters.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/DataSetters.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/DataSetters.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/DataSetters.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/DataSetters.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/Decimal.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/Decimal.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/Decimal.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/Decimal.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/GenericArray.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/GenericArray.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/GenericArray.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/GenericArray.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/GenericMap.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/GenericMap.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/GenericMap.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/GenericMap.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/GenericRow.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/GenericRow.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/GenericRow.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/GenericRow.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/InternalArray.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/InternalArray.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/InternalArray.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/InternalArray.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/InternalMap.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/InternalMap.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/InternalMap.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/InternalMap.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/InternalRow.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/InternalRow.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/InternalRow.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/InternalRow.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/JoinedRow.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/JoinedRow.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/JoinedRow.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/JoinedRow.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/LazyGenericRow.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/LazyGenericRow.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/LazyGenericRow.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/LazyGenericRow.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/NestedRow.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/NestedRow.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/NestedRow.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/NestedRow.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/RandomAccessInputView.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/RandomAccessInputView.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/RandomAccessInputView.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/RandomAccessInputView.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/RandomAccessOutputView.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/RandomAccessOutputView.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/RandomAccessOutputView.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/RandomAccessOutputView.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/SimpleCollectingOutputView.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/SimpleCollectingOutputView.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/SimpleCollectingOutputView.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/SimpleCollectingOutputView.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/Timestamp.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/Timestamp.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/Timestamp.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/Timestamp.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ArrayColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ArrayColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ArrayColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ArrayColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/BooleanColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/BooleanColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/BooleanColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/BooleanColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ByteColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ByteColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ByteColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ByteColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/BytesColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/BytesColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/BytesColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/BytesColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarArray.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarArray.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarArray.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarArray.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarMap.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarMap.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarMap.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarMap.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRow.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRow.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRow.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRow.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRowIterator.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRowIterator.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRowIterator.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRowIterator.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/DecimalColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/DecimalColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/DecimalColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/DecimalColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/Dictionary.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/Dictionary.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/Dictionary.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/Dictionary.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/DoubleColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/DoubleColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/DoubleColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/DoubleColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/FloatColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/FloatColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/FloatColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/FloatColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/IntColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/IntColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/IntColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/IntColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/LongColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/LongColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/LongColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/LongColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/MapColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/MapColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/MapColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/MapColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/RowColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/RowColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/RowColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/RowColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ShortColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ShortColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/ShortColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ShortColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/TimestampColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/TimestampColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/TimestampColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/TimestampColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/VectorizedColumnBatch.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/VectorizedColumnBatch.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/VectorizedColumnBatch.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/VectorizedColumnBatch.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/AbstractHeapVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/AbstractHeapVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/AbstractHeapVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/AbstractHeapVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapArrayVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapArrayVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapArrayVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapArrayVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBooleanVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBooleanVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBooleanVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBooleanVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapByteVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapByteVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapByteVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapByteVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBytesVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBytesVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBytesVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBytesVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapDoubleVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapDoubleVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapDoubleVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapDoubleVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapFloatVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapFloatVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapFloatVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapFloatVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapIntVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapIntVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapIntVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapIntVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapLongVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapLongVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapLongVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapLongVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapMapVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapMapVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapMapVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapMapVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapRowVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapRowVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapRowVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapRowVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapShortVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapShortVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapShortVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapShortVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapTimestampVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapTimestampVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapTimestampVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapTimestampVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/AbstractWritableVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/AbstractWritableVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/AbstractWritableVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/AbstractWritableVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBooleanVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBooleanVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBooleanVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBooleanVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableByteVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableByteVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableByteVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableByteVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBytesVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBytesVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBytesVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBytesVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableColumnVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableColumnVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableColumnVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableColumnVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableDoubleVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableDoubleVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableDoubleVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableDoubleVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableFloatVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableFloatVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableFloatVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableFloatVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableIntVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableIntVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableIntVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableIntVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableLongVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableLongVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableLongVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableLongVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableShortVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableShortVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableShortVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableShortVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableTimestampVector.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableTimestampVector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableTimestampVector.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableTimestampVector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/AbstractRowDataSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/AbstractRowDataSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/AbstractRowDataSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/AbstractRowDataSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryRowSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryRowSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryRowSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryRowSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/BinarySerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinarySerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/BinarySerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinarySerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/BooleanSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BooleanSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/BooleanSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BooleanSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/ByteSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ByteSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/ByteSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ByteSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/DecimalSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/DecimalSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/DecimalSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/DecimalSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/DoubleSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/DoubleSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/DoubleSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/DoubleSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/FloatSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/FloatSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/FloatSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/FloatSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/IntSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/IntSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/IntSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/IntSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalArraySerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalArraySerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalArraySerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalArraySerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalMapSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalMapSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalMapSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalMapSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalRowSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalRowSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalRowSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalRowSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalSerializers.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalSerializers.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalSerializers.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalSerializers.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/ListSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ListSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/ListSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ListSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/LongSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/LongSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/LongSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/LongSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/NullableSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/NullableSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/NullableSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/NullableSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/PagedTypeSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/PagedTypeSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/PagedTypeSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/PagedTypeSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/Serializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/Serializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/Serializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/Serializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/SerializerSingleton.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/SerializerSingleton.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/SerializerSingleton.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/SerializerSingleton.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/ShortSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ShortSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/ShortSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ShortSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/TimestampSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/TimestampSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/TimestampSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/TimestampSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/VersionedSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/VersionedSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/data/serializer/VersionedSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/VersionedSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/And.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/And.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/And.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/And.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/CompareUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/CompareUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/CompareUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/CompareUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/CompoundPredicate.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/CompoundPredicate.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/CompoundPredicate.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/CompoundPredicate.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Equal.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Equal.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Equal.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Equal.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/FieldRef.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/FieldRef.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/FieldRef.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/FieldRef.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/FunctionVisitor.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/FunctionVisitor.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/FunctionVisitor.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/FunctionVisitor.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterOrEqual.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterOrEqual.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterOrEqual.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterOrEqual.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterThan.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterThan.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterThan.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterThan.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/In.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/In.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/In.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/In.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNotNull.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNotNull.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNotNull.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNotNull.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNull.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNull.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNull.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNull.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafFunction.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafFunction.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafFunction.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafFunction.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafUnaryFunction.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafUnaryFunction.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafUnaryFunction.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafUnaryFunction.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessOrEqual.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LessOrEqual.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessOrEqual.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LessOrEqual.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessThan.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LessThan.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/LessThan.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LessThan.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotEqual.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NotEqual.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotEqual.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NotEqual.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotIn.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NotIn.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NotIn.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NotIn.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NullFalseLeafBinaryFunction.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NullFalseLeafBinaryFunction.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/NullFalseLeafBinaryFunction.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NullFalseLeafBinaryFunction.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Or.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Or.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Or.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Or.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateBuilder.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateBuilder.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateBuilder.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateBuilder.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateFilter.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateFilter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateFilter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateFilter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateReplaceVisitor.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateReplaceVisitor.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateReplaceVisitor.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateReplaceVisitor.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateVisitor.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateVisitor.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateVisitor.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateVisitor.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/FileIO.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIO.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/FileIO.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIO.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/FileIOLoader.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIOLoader.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/FileIOLoader.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIOLoader.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/FileStatus.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileStatus.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/FileStatus.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/FileStatus.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/Path.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/Path.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/Path.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/Path.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/PluginFileIO.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/PluginFileIO.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/PluginFileIO.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/PluginFileIO.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStream.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStream.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStream.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStream.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStreamWrapper.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStreamWrapper.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStreamWrapper.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStreamWrapper.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStream.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStream.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStream.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStream.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStreamWrapper.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStreamWrapper.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStreamWrapper.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStreamWrapper.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/UnsupportedSchemeException.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/UnsupportedSchemeException.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/UnsupportedSchemeException.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/UnsupportedSchemeException.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIOLoader.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIOLoader.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIOLoader.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIOLoader.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIO.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIO.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIO.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIO.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIOLoader.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIOLoader.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIOLoader.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIOLoader.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/hadoop/SerializableConfiguration.java b/paimon-common/src/main/java/org/apache/flink/table/store/hadoop/SerializableConfiguration.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/hadoop/SerializableConfiguration.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/hadoop/SerializableConfiguration.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataInputDeserializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputDeserializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataInputDeserializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputDeserializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataInputView.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputView.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataInputView.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputView.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStream.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStream.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStream.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStream.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStreamWrapper.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStreamWrapper.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStreamWrapper.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStreamWrapper.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataOutputSerializer.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputSerializer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataOutputSerializer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputSerializer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataOutputView.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputView.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataOutputView.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputView.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStream.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStream.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStream.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStream.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStreamWrapper.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStreamWrapper.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStreamWrapper.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStreamWrapper.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/io/SeekableDataInputView.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/SeekableDataInputView.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/io/SeekableDataInputView.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/io/SeekableDataInputView.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/io/cache/CacheManager.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CacheManager.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/io/cache/CacheManager.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CacheManager.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/io/cache/CachedRandomInputView.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CachedRandomInputView.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/io/cache/CachedRandomInputView.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CachedRandomInputView.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreFactory.java b/paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreFactory.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreFactory.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreFactory.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreReader.java b/paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreReader.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreReader.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreReader.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreWriter.java b/paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreWriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreWriter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreWriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactory.java b/paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactory.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactory.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactory.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreReader.java b/paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreReader.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreReader.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreReader.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreWriter.java b/paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreWriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreWriter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreWriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemorySegment.java b/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegment.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemorySegment.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegment.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentSource.java b/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentSource.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentSource.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentSource.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentWritable.java b/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentWritable.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentWritable.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentWritable.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemoryUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemoryUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/memory/MemoryUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/memory/MemoryUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/CatalogOptions.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/CatalogOptions.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/CatalogOptions.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/CatalogOptions.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/ConfigOption.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOption.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/ConfigOption.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOption.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/ConfigOptions.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOptions.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/ConfigOptions.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOptions.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/FallbackKey.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/FallbackKey.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/FallbackKey.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/FallbackKey.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/MemorySize.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/MemorySize.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/MemorySize.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/MemorySize.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/Options.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/Options.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/Options.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/Options.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/OptionsUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/OptionsUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/OptionsUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/OptionsUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/StructuredOptionsSplitter.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/StructuredOptionsSplitter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/StructuredOptionsSplitter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/StructuredOptionsSplitter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/BlockElement.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/BlockElement.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/BlockElement.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/description/BlockElement.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/DescribedEnum.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/DescribedEnum.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/DescribedEnum.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/description/DescribedEnum.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/Description.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/Description.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/Description.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/description/Description.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/DescriptionElement.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/DescriptionElement.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/DescriptionElement.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/description/DescriptionElement.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/Formatter.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/Formatter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/Formatter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/description/Formatter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/HtmlFormatter.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/HtmlFormatter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/HtmlFormatter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/description/HtmlFormatter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/InlineElement.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/InlineElement.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/InlineElement.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/description/InlineElement.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/LineBreakElement.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/LineBreakElement.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/LineBreakElement.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/description/LineBreakElement.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/LinkElement.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/LinkElement.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/LinkElement.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/description/LinkElement.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/ListElement.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/ListElement.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/ListElement.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/description/ListElement.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/TextElement.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/TextElement.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/options/description/TextElement.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/options/description/TextElement.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/plugin/ComponentClassLoader.java b/paimon-common/src/main/java/org/apache/flink/table/store/plugin/ComponentClassLoader.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/plugin/ComponentClassLoader.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/plugin/ComponentClassLoader.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/plugin/PluginLoader.java b/paimon-common/src/main/java/org/apache/flink/table/store/plugin/PluginLoader.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/plugin/PluginLoader.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/plugin/PluginLoader.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/reader/RecordReader.java b/paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReader.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/reader/RecordReader.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReader.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/reader/RecordReaderIterator.java b/paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReaderIterator.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/reader/RecordReaderIterator.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReaderIterator.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/table/TableType.java b/paimon-common/src/main/java/org/apache/flink/table/store/table/TableType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/table/TableType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/table/TableType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/ArrayType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/ArrayType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/ArrayType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/ArrayType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/BigIntType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/BigIntType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/BigIntType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/BigIntType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/BinaryType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/BinaryType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/BinaryType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/BinaryType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/BooleanType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/BooleanType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/BooleanType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/BooleanType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/CharType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/CharType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/CharType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/CharType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataField.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataField.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataField.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DataField.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DataType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeCasts.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeCasts.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeCasts.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeCasts.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeChecks.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeChecks.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeChecks.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeChecks.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeDefaultVisitor.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeDefaultVisitor.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeDefaultVisitor.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeDefaultVisitor.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeFamily.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeFamily.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeFamily.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeFamily.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeJsonParser.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeJsonParser.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeJsonParser.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeJsonParser.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeRoot.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeRoot.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeRoot.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeRoot.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeVisitor.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeVisitor.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypeVisitor.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeVisitor.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypes.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypes.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DataTypes.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypes.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DateType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DateType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DateType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DateType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DecimalType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DecimalType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DecimalType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DecimalType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DoubleType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DoubleType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/DoubleType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/DoubleType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/FloatType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/FloatType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/FloatType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/FloatType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/IntType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/IntType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/IntType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/IntType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/LocalZonedTimestampType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/LocalZonedTimestampType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/LocalZonedTimestampType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/LocalZonedTimestampType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/MapType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/MapType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/MapType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/MapType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/MultisetType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/MultisetType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/MultisetType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/MultisetType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/ReassignFieldId.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/ReassignFieldId.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/ReassignFieldId.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/ReassignFieldId.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/RowKind.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/RowKind.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/RowKind.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/RowKind.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/RowType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/RowType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/RowType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/RowType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/SmallIntType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/SmallIntType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/SmallIntType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/SmallIntType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/TimeType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/TimeType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/TimeType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/TimeType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/TimestampType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/TimestampType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/TimestampType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/TimestampType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/TinyIntType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/TinyIntType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/TinyIntType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/TinyIntType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/VarBinaryType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/VarBinaryType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/VarBinaryType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/VarBinaryType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/types/VarCharType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/VarCharType.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/types/VarCharType.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/types/VarCharType.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ArrayUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/ArrayUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ArrayUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/ArrayUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/CloseableIterator.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/CloseableIterator.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/CloseableIterator.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/CloseableIterator.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/DateTimeUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/DateTimeUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/DateTimeUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/DateTimeUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/DecimalUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/DecimalUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/DecimalUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/DecimalUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/EncodingUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/EncodingUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/EncodingUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/EncodingUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ExceptionUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/ExceptionUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ExceptionUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/ExceptionUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/FileIOUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/FileIOUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/FileIOUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/FileIOUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Filter.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/Filter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Filter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/Filter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/FunctionWithException.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/FunctionWithException.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/FunctionWithException.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/FunctionWithException.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/HadoopUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/HadoopUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/HadoopUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/HadoopUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/IOFunction.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/IOFunction.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/IOFunction.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/IOFunction.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/IOUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/IOUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/IOUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/IOUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/InstantiationUtil.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/InstantiationUtil.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/InstantiationUtil.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/InstantiationUtil.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/IteratorResultIterator.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/IteratorResultIterator.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/IteratorResultIterator.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/IteratorResultIterator.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/KeyProjectedRow.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/KeyProjectedRow.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/KeyProjectedRow.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/KeyProjectedRow.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/LocalFileUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/LocalFileUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/LocalFileUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/LocalFileUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/LongCounter.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/LongCounter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/LongCounter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/LongCounter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/MapBuilder.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/MapBuilder.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/MapBuilder.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/MapBuilder.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/MathUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/MathUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/MathUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/MathUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/MurmurHashUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/MurmurHashUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/MurmurHashUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/MurmurHashUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/OperatingSystem.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/OperatingSystem.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/OperatingSystem.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/OperatingSystem.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/OrderedPacking.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/OrderedPacking.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/OrderedPacking.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/OrderedPacking.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Pair.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/Pair.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Pair.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/Pair.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Pool.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/Pool.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Pool.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/Pool.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Preconditions.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/Preconditions.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Preconditions.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/Preconditions.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ProjectedRow.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/ProjectedRow.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ProjectedRow.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/ProjectedRow.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Projection.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/Projection.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Projection.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/Projection.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/RecyclableIterator.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/RecyclableIterator.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/RecyclableIterator.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/RecyclableIterator.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Reference.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/Reference.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/Reference.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/Reference.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ReflectionUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/ReflectionUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ReflectionUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/ReflectionUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/RowDataToObjectArrayConverter.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataToObjectArrayConverter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/RowDataToObjectArrayConverter.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataToObjectArrayConverter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/RowDataUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/RowDataUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/SerializableFunction.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/SerializableFunction.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/SerializableFunction.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/SerializableFunction.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ThreadUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/ThreadUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ThreadUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/ThreadUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ThrowingConsumer.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/ThrowingConsumer.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/ThrowingConsumer.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/ThrowingConsumer.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/TimeUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/TimeUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/TimeUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/TimeUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/TypeUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/TypeUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/TypeUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/TypeUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/VarLengthIntUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/VarLengthIntUtils.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/flink/table/store/utils/VarLengthIntUtils.java
rename to paimon-common/src/main/java/org/apache/flink/table/store/utils/VarLengthIntUtils.java
diff --git a/flink-table-store-common/src/main/java/org/apache/paimon/format/FieldStats.java b/paimon-common/src/main/java/org/apache/paimon/format/FieldStats.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/paimon/format/FieldStats.java
rename to paimon-common/src/main/java/org/apache/paimon/format/FieldStats.java
diff --git a/flink-table-store-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java b/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
rename to paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
diff --git a/flink-table-store-common/src/main/java/org/apache/paimon/format/FileFormat.java b/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/paimon/format/FileFormat.java
rename to paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
diff --git a/flink-table-store-common/src/main/java/org/apache/paimon/format/FileFormatFactory.java b/paimon-common/src/main/java/org/apache/paimon/format/FileFormatFactory.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/paimon/format/FileFormatFactory.java
rename to paimon-common/src/main/java/org/apache/paimon/format/FileFormatFactory.java
diff --git a/flink-table-store-common/src/main/java/org/apache/paimon/format/FileStatsExtractor.java b/paimon-common/src/main/java/org/apache/paimon/format/FileStatsExtractor.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/paimon/format/FileStatsExtractor.java
rename to paimon-common/src/main/java/org/apache/paimon/format/FileStatsExtractor.java
diff --git a/flink-table-store-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java b/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
rename to paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
diff --git a/flink-table-store-common/src/main/java/org/apache/paimon/format/FormatWriter.java b/paimon-common/src/main/java/org/apache/paimon/format/FormatWriter.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/paimon/format/FormatWriter.java
rename to paimon-common/src/main/java/org/apache/paimon/format/FormatWriter.java
diff --git a/flink-table-store-common/src/main/java/org/apache/paimon/format/FormatWriterFactory.java b/paimon-common/src/main/java/org/apache/paimon/format/FormatWriterFactory.java
similarity index 100%
rename from flink-table-store-common/src/main/java/org/apache/paimon/format/FormatWriterFactory.java
rename to paimon-common/src/main/java/org/apache/paimon/format/FormatWriterFactory.java
diff --git a/flink-table-store-common/src/main/resources/META-INF/NOTICE b/paimon-common/src/main/resources/META-INF/NOTICE
similarity index 100%
rename from flink-table-store-common/src/main/resources/META-INF/NOTICE
rename to paimon-common/src/main/resources/META-INF/NOTICE
diff --git a/flink-table-store-common/src/main/resources/META-INF/licenses/LICENSE.antlr-java-grammar-files b/paimon-common/src/main/resources/META-INF/licenses/LICENSE.antlr-java-grammar-files
similarity index 100%
rename from flink-table-store-common/src/main/resources/META-INF/licenses/LICENSE.antlr-java-grammar-files
rename to paimon-common/src/main/resources/META-INF/licenses/LICENSE.antlr-java-grammar-files
diff --git a/flink-table-store-common/src/main/resources/META-INF/licenses/LICENSE.antlr-runtime b/paimon-common/src/main/resources/META-INF/licenses/LICENSE.antlr-runtime
similarity index 100%
rename from flink-table-store-common/src/main/resources/META-INF/licenses/LICENSE.antlr-runtime
rename to paimon-common/src/main/resources/META-INF/licenses/LICENSE.antlr-runtime
diff --git a/flink-table-store-common/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader b/paimon-common/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
similarity index 100%
rename from flink-table-store-common/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
rename to paimon-common/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouperTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouperTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouperTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouperTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriterTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriterTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriterTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriterTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitterTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitterTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitterTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitterTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriterTestBase.java b/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriterTestBase.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriterTestBase.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriterTestBase.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitTestUtil.java b/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitTestUtil.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitTestUtil.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitTestUtil.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriterTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriterTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriterTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriterTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitterTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitterTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitterTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitterTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitterTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitterTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitterTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitterTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaParserTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaParserTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaParserTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaParserTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriterTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriterTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriterTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriterTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriterTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriterTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriterTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriterTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/BinaryRowTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/BinaryRowTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/BinaryRowTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/BinaryRowTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/BinaryStringTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/BinaryStringTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/BinaryStringTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/BinaryStringTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/DataFormatTestUtil.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/DataFormatTestUtil.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/DataFormatTestUtil.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/DataFormatTestUtil.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/DecimalTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/DecimalTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/DecimalTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/DecimalTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/MapDataUtil.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/MapDataUtil.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/MapDataUtil.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/MapDataUtil.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/NestedRowTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/NestedRowTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/NestedRowTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/NestedRowTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/RowDataTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/RowDataTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/RowDataTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/RowDataTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/TimestampTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/TimestampTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/TimestampTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/TimestampTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/BinarySerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BinarySerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/BinarySerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BinarySerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/BooleanSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BooleanSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/BooleanSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BooleanSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/ByteSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ByteSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/ByteSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ByteSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/DecimalSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/DecimalSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/DecimalSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/DecimalSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/DoubleSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/DoubleSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/DoubleSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/DoubleSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/FloatSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/FloatSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/FloatSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/FloatSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/IntSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/IntSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/IntSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/IntSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalArraySerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalArraySerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalArraySerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalArraySerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalMapSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalMapSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalMapSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalMapSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalRowSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalRowSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalRowSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalRowSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/ListSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ListSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/ListSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ListSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/LongSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/LongSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/LongSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/LongSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/NullableSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/NullableSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/NullableSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/NullableSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestBase.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestBase.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestBase.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestBase.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestInstance.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestInstance.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestInstance.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestInstance.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/ShortSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ShortSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/ShortSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ShortSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/TimestampSerializerTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/TimestampSerializerTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/data/serializer/TimestampSerializerTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/TimestampSerializerTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/DataGenerator.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenerator.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/DataGenerator.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenerator.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorContainer.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorContainer.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorContainer.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorContainer.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorMapper.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorMapper.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorMapper.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorMapper.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/RandomGenerator.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGenerator.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/RandomGenerator.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGenerator.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/RowDataGenerator.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RowDataGenerator.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/datagen/RowDataGenerator.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/datagen/RowDataGenerator.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/FileIOBehaviorTestBase.java b/paimon-common/src/test/java/org/apache/flink/table/store/fs/FileIOBehaviorTestBase.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/FileIOBehaviorTestBase.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/fs/FileIOBehaviorTestBase.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/FileIOFinder.java b/paimon-common/src/test/java/org/apache/flink/table/store/fs/FileIOFinder.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/FileIOFinder.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/fs/FileIOFinder.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/HadoopConfigLoadingTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/fs/HadoopConfigLoadingTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/HadoopConfigLoadingTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/fs/HadoopConfigLoadingTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/HadoopLocalFileIOBehaviorTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/fs/HadoopLocalFileIOBehaviorTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/HadoopLocalFileIOBehaviorTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/fs/HadoopLocalFileIOBehaviorTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/HdfsBehaviorTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/fs/HdfsBehaviorTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/HdfsBehaviorTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/fs/HdfsBehaviorTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/LocalFileIOBehaviorTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/fs/LocalFileIOBehaviorTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/fs/LocalFileIOBehaviorTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/fs/LocalFileIOBehaviorTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/io/cache/CachedRandomInputViewTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/io/cache/CachedRandomInputViewTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/io/cache/CachedRandomInputViewTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/io/cache/CachedRandomInputViewTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactoryTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactoryTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactoryTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactoryTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/MemorySegmentTestBase.java b/paimon-common/src/test/java/org/apache/flink/table/store/memory/MemorySegmentTestBase.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/MemorySegmentTestBase.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/memory/MemorySegmentTestBase.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OffHeapDirectMemorySegmentTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/memory/OffHeapDirectMemorySegmentTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OffHeapDirectMemorySegmentTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/memory/OffHeapDirectMemorySegmentTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/types/DataTypeAssert.java b/paimon-common/src/test/java/org/apache/flink/table/store/types/DataTypeAssert.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/types/DataTypeAssert.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/types/DataTypeAssert.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/types/DataTypeChecksTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/types/DataTypeChecksTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/types/DataTypeChecksTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/types/DataTypeChecksTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/types/DataTypesTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/types/DataTypesTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/types/DataTypesTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/types/DataTypesTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/utils/CommonTestUtils.java b/paimon-common/src/test/java/org/apache/flink/table/store/utils/CommonTestUtils.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/utils/CommonTestUtils.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/utils/CommonTestUtils.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/utils/LocalFileUtilsTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/utils/LocalFileUtilsTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/utils/LocalFileUtilsTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/utils/LocalFileUtilsTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/utils/TempDirUtils.java b/paimon-common/src/test/java/org/apache/flink/table/store/utils/TempDirUtils.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/flink/table/store/utils/TempDirUtils.java
rename to paimon-common/src/test/java/org/apache/flink/table/store/utils/TempDirUtils.java
diff --git a/flink-table-store-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java b/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
similarity index 100%
rename from flink-table-store-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
rename to paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/add-boolean/code/TestAddBooleanBeforeReturn.java b/paimon-common/src/test/resources/codesplit/add-boolean/code/TestAddBooleanBeforeReturn.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/add-boolean/code/TestAddBooleanBeforeReturn.java
rename to paimon-common/src/test/resources/codesplit/add-boolean/code/TestAddBooleanBeforeReturn.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/add-boolean/code/TestNotRewrite.java b/paimon-common/src/test/resources/codesplit/add-boolean/code/TestNotRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/add-boolean/code/TestNotRewrite.java
rename to paimon-common/src/test/resources/codesplit/add-boolean/code/TestNotRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/add-boolean/code/TestRewriteInnerClass.java b/paimon-common/src/test/resources/codesplit/add-boolean/code/TestRewriteInnerClass.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/add-boolean/code/TestRewriteInnerClass.java
rename to paimon-common/src/test/resources/codesplit/add-boolean/code/TestRewriteInnerClass.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/add-boolean/code/TestSkipAnonymousClassAndLambda.java b/paimon-common/src/test/resources/codesplit/add-boolean/code/TestSkipAnonymousClassAndLambda.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/add-boolean/code/TestSkipAnonymousClassAndLambda.java
rename to paimon-common/src/test/resources/codesplit/add-boolean/code/TestSkipAnonymousClassAndLambda.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/add-boolean/expected/TestAddBooleanBeforeReturn.java b/paimon-common/src/test/resources/codesplit/add-boolean/expected/TestAddBooleanBeforeReturn.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/add-boolean/expected/TestAddBooleanBeforeReturn.java
rename to paimon-common/src/test/resources/codesplit/add-boolean/expected/TestAddBooleanBeforeReturn.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/add-boolean/expected/TestNotRewrite.java b/paimon-common/src/test/resources/codesplit/add-boolean/expected/TestNotRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/add-boolean/expected/TestNotRewrite.java
rename to paimon-common/src/test/resources/codesplit/add-boolean/expected/TestNotRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/add-boolean/expected/TestRewriteInnerClass.java b/paimon-common/src/test/resources/codesplit/add-boolean/expected/TestRewriteInnerClass.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/add-boolean/expected/TestRewriteInnerClass.java
rename to paimon-common/src/test/resources/codesplit/add-boolean/expected/TestRewriteInnerClass.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/add-boolean/expected/TestSkipAnonymousClassAndLambda.java b/paimon-common/src/test/resources/codesplit/add-boolean/expected/TestSkipAnonymousClassAndLambda.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/add-boolean/expected/TestSkipAnonymousClassAndLambda.java
rename to paimon-common/src/test/resources/codesplit/add-boolean/expected/TestSkipAnonymousClassAndLambda.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/code/TestIfInsideWhileLoopRewrite.java b/paimon-common/src/test/resources/codesplit/block/code/TestIfInsideWhileLoopRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/code/TestIfInsideWhileLoopRewrite.java
rename to paimon-common/src/test/resources/codesplit/block/code/TestIfInsideWhileLoopRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/code/TestIfMultipleSingleLineStatementRewrite.java b/paimon-common/src/test/resources/codesplit/block/code/TestIfMultipleSingleLineStatementRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/code/TestIfMultipleSingleLineStatementRewrite.java
rename to paimon-common/src/test/resources/codesplit/block/code/TestIfMultipleSingleLineStatementRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite.java b/paimon-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite.java
rename to paimon-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite1.java b/paimon-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite1.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite1.java
rename to paimon-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite1.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite2.java b/paimon-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite2.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite2.java
rename to paimon-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite2.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite3.java b/paimon-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite3.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite3.java
rename to paimon-common/src/test/resources/codesplit/block/code/TestIfStatementRewrite3.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/code/TestNotRewriteIfStatementInFunctionWithReturnValue.java b/paimon-common/src/test/resources/codesplit/block/code/TestNotRewriteIfStatementInFunctionWithReturnValue.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/code/TestNotRewriteIfStatementInFunctionWithReturnValue.java
rename to paimon-common/src/test/resources/codesplit/block/code/TestNotRewriteIfStatementInFunctionWithReturnValue.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/code/TestRewriteInnerClass.java b/paimon-common/src/test/resources/codesplit/block/code/TestRewriteInnerClass.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/code/TestRewriteInnerClass.java
rename to paimon-common/src/test/resources/codesplit/block/code/TestRewriteInnerClass.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/code/TestRewriteTwoStatements.java b/paimon-common/src/test/resources/codesplit/block/code/TestRewriteTwoStatements.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/code/TestRewriteTwoStatements.java
rename to paimon-common/src/test/resources/codesplit/block/code/TestRewriteTwoStatements.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/code/TestWhileLoopInsideIfRewrite.java b/paimon-common/src/test/resources/codesplit/block/code/TestWhileLoopInsideIfRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/code/TestWhileLoopInsideIfRewrite.java
rename to paimon-common/src/test/resources/codesplit/block/code/TestWhileLoopInsideIfRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/code/TestWhileLoopRewrite.java b/paimon-common/src/test/resources/codesplit/block/code/TestWhileLoopRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/code/TestWhileLoopRewrite.java
rename to paimon-common/src/test/resources/codesplit/block/code/TestWhileLoopRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/expected/TestIfInsideWhileLoopRewrite.java b/paimon-common/src/test/resources/codesplit/block/expected/TestIfInsideWhileLoopRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/expected/TestIfInsideWhileLoopRewrite.java
rename to paimon-common/src/test/resources/codesplit/block/expected/TestIfInsideWhileLoopRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/expected/TestIfMultipleSingleLineStatementRewrite.java b/paimon-common/src/test/resources/codesplit/block/expected/TestIfMultipleSingleLineStatementRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/expected/TestIfMultipleSingleLineStatementRewrite.java
rename to paimon-common/src/test/resources/codesplit/block/expected/TestIfMultipleSingleLineStatementRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite.java b/paimon-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite.java
rename to paimon-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite1.java b/paimon-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite1.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite1.java
rename to paimon-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite1.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite2.java b/paimon-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite2.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite2.java
rename to paimon-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite2.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite3.java b/paimon-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite3.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite3.java
rename to paimon-common/src/test/resources/codesplit/block/expected/TestIfStatementRewrite3.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/expected/TestNotRewriteIfStatementInFunctionWithReturnValue.java b/paimon-common/src/test/resources/codesplit/block/expected/TestNotRewriteIfStatementInFunctionWithReturnValue.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/expected/TestNotRewriteIfStatementInFunctionWithReturnValue.java
rename to paimon-common/src/test/resources/codesplit/block/expected/TestNotRewriteIfStatementInFunctionWithReturnValue.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/expected/TestRewriteInnerClass.java b/paimon-common/src/test/resources/codesplit/block/expected/TestRewriteInnerClass.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/expected/TestRewriteInnerClass.java
rename to paimon-common/src/test/resources/codesplit/block/expected/TestRewriteInnerClass.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/expected/TestRewriteTwoStatements.java b/paimon-common/src/test/resources/codesplit/block/expected/TestRewriteTwoStatements.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/expected/TestRewriteTwoStatements.java
rename to paimon-common/src/test/resources/codesplit/block/expected/TestRewriteTwoStatements.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/expected/TestWhileLoopInsideIfRewrite.java b/paimon-common/src/test/resources/codesplit/block/expected/TestWhileLoopInsideIfRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/expected/TestWhileLoopInsideIfRewrite.java
rename to paimon-common/src/test/resources/codesplit/block/expected/TestWhileLoopInsideIfRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/block/expected/TestWhileLoopRewrite.java b/paimon-common/src/test/resources/codesplit/block/expected/TestWhileLoopRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/block/expected/TestWhileLoopRewrite.java
rename to paimon-common/src/test/resources/codesplit/block/expected/TestWhileLoopRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/code/TestLocalVariableAndMemberVariableWithSameName.java b/paimon-common/src/test/resources/codesplit/declaration/code/TestLocalVariableAndMemberVariableWithSameName.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/code/TestLocalVariableAndMemberVariableWithSameName.java
rename to paimon-common/src/test/resources/codesplit/declaration/code/TestLocalVariableAndMemberVariableWithSameName.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/code/TestLocalVariableWithSameName.java b/paimon-common/src/test/resources/codesplit/declaration/code/TestLocalVariableWithSameName.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/code/TestLocalVariableWithSameName.java
rename to paimon-common/src/test/resources/codesplit/declaration/code/TestLocalVariableWithSameName.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/code/TestNotRewriteLocalVariableInFunctionWithReturnValue.java b/paimon-common/src/test/resources/codesplit/declaration/code/TestNotRewriteLocalVariableInFunctionWithReturnValue.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/code/TestNotRewriteLocalVariableInFunctionWithReturnValue.java
rename to paimon-common/src/test/resources/codesplit/declaration/code/TestNotRewriteLocalVariableInFunctionWithReturnValue.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/code/TestRewriteInnerClass.java b/paimon-common/src/test/resources/codesplit/declaration/code/TestRewriteInnerClass.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/code/TestRewriteInnerClass.java
rename to paimon-common/src/test/resources/codesplit/declaration/code/TestRewriteInnerClass.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariable.java b/paimon-common/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariable.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariable.java
rename to paimon-common/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariable.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariableInForLoop1.java b/paimon-common/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariableInForLoop1.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariableInForLoop1.java
rename to paimon-common/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariableInForLoop1.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariableInForLoop2.java b/paimon-common/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariableInForLoop2.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariableInForLoop2.java
rename to paimon-common/src/test/resources/codesplit/declaration/code/TestRewriteLocalVariableInForLoop2.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestLocalVariableAndMemberVariableWithSameName.java b/paimon-common/src/test/resources/codesplit/declaration/expected/TestLocalVariableAndMemberVariableWithSameName.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestLocalVariableAndMemberVariableWithSameName.java
rename to paimon-common/src/test/resources/codesplit/declaration/expected/TestLocalVariableAndMemberVariableWithSameName.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestLocalVariableWithSameName.java b/paimon-common/src/test/resources/codesplit/declaration/expected/TestLocalVariableWithSameName.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestLocalVariableWithSameName.java
rename to paimon-common/src/test/resources/codesplit/declaration/expected/TestLocalVariableWithSameName.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestNotRewriteLocalVariableInFunctionWithReturnValue.java b/paimon-common/src/test/resources/codesplit/declaration/expected/TestNotRewriteLocalVariableInFunctionWithReturnValue.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestNotRewriteLocalVariableInFunctionWithReturnValue.java
rename to paimon-common/src/test/resources/codesplit/declaration/expected/TestNotRewriteLocalVariableInFunctionWithReturnValue.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestRewriteInnerClass.java b/paimon-common/src/test/resources/codesplit/declaration/expected/TestRewriteInnerClass.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestRewriteInnerClass.java
rename to paimon-common/src/test/resources/codesplit/declaration/expected/TestRewriteInnerClass.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariable.java b/paimon-common/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariable.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariable.java
rename to paimon-common/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariable.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariableInForLoop1.java b/paimon-common/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariableInForLoop1.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariableInForLoop1.java
rename to paimon-common/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariableInForLoop1.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariableInForLoop2.java b/paimon-common/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariableInForLoop2.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariableInForLoop2.java
rename to paimon-common/src/test/resources/codesplit/declaration/expected/TestRewriteLocalVariableInForLoop2.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/function/code/TestNotSplitFunctionWithOnlyOneStatement.java b/paimon-common/src/test/resources/codesplit/function/code/TestNotSplitFunctionWithOnlyOneStatement.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/function/code/TestNotSplitFunctionWithOnlyOneStatement.java
rename to paimon-common/src/test/resources/codesplit/function/code/TestNotSplitFunctionWithOnlyOneStatement.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/function/code/TestNotSplitFunctionWithReturnValue.java b/paimon-common/src/test/resources/codesplit/function/code/TestNotSplitFunctionWithReturnValue.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/function/code/TestNotSplitFunctionWithReturnValue.java
rename to paimon-common/src/test/resources/codesplit/function/code/TestNotSplitFunctionWithReturnValue.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/function/code/TestRewriteInnerClass.java b/paimon-common/src/test/resources/codesplit/function/code/TestRewriteInnerClass.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/function/code/TestRewriteInnerClass.java
rename to paimon-common/src/test/resources/codesplit/function/code/TestRewriteInnerClass.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/function/code/TestSplitFunction.java b/paimon-common/src/test/resources/codesplit/function/code/TestSplitFunction.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/function/code/TestSplitFunction.java
rename to paimon-common/src/test/resources/codesplit/function/code/TestSplitFunction.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/function/expected/TestNotSplitFunctionWithOnlyOneStatement.java b/paimon-common/src/test/resources/codesplit/function/expected/TestNotSplitFunctionWithOnlyOneStatement.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/function/expected/TestNotSplitFunctionWithOnlyOneStatement.java
rename to paimon-common/src/test/resources/codesplit/function/expected/TestNotSplitFunctionWithOnlyOneStatement.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/function/expected/TestNotSplitFunctionWithReturnValue.java b/paimon-common/src/test/resources/codesplit/function/expected/TestNotSplitFunctionWithReturnValue.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/function/expected/TestNotSplitFunctionWithReturnValue.java
rename to paimon-common/src/test/resources/codesplit/function/expected/TestNotSplitFunctionWithReturnValue.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/function/expected/TestRewriteInnerClass.java b/paimon-common/src/test/resources/codesplit/function/expected/TestRewriteInnerClass.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/function/expected/TestRewriteInnerClass.java
rename to paimon-common/src/test/resources/codesplit/function/expected/TestRewriteInnerClass.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/function/expected/TestSplitFunction.java b/paimon-common/src/test/resources/codesplit/function/expected/TestSplitFunction.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/function/expected/TestSplitFunction.java
rename to paimon-common/src/test/resources/codesplit/function/expected/TestSplitFunction.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/groups/code/IfInWhile.txt b/paimon-common/src/test/resources/codesplit/groups/code/IfInWhile.txt
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/groups/code/IfInWhile.txt
rename to paimon-common/src/test/resources/codesplit/groups/code/IfInWhile.txt
diff --git a/flink-table-store-common/src/test/resources/codesplit/groups/code/WhileInIf.txt b/paimon-common/src/test/resources/codesplit/groups/code/WhileInIf.txt
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/groups/code/WhileInIf.txt
rename to paimon-common/src/test/resources/codesplit/groups/code/WhileInIf.txt
diff --git a/flink-table-store-common/src/test/resources/codesplit/groups/expected/IfInWhile.txt b/paimon-common/src/test/resources/codesplit/groups/expected/IfInWhile.txt
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/groups/expected/IfInWhile.txt
rename to paimon-common/src/test/resources/codesplit/groups/expected/IfInWhile.txt
diff --git a/flink-table-store-common/src/test/resources/codesplit/groups/expected/WhileInIf.txt b/paimon-common/src/test/resources/codesplit/groups/expected/WhileInIf.txt
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/groups/expected/WhileInIf.txt
rename to paimon-common/src/test/resources/codesplit/groups/expected/WhileInIf.txt
diff --git a/flink-table-store-common/src/test/resources/codesplit/member/code/TestNotRewriteFunctionParameter.java b/paimon-common/src/test/resources/codesplit/member/code/TestNotRewriteFunctionParameter.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/member/code/TestNotRewriteFunctionParameter.java
rename to paimon-common/src/test/resources/codesplit/member/code/TestNotRewriteFunctionParameter.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/member/code/TestNotRewriteLocalVariable.java b/paimon-common/src/test/resources/codesplit/member/code/TestNotRewriteLocalVariable.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/member/code/TestNotRewriteLocalVariable.java
rename to paimon-common/src/test/resources/codesplit/member/code/TestNotRewriteLocalVariable.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/member/code/TestNotRewriteMember.java b/paimon-common/src/test/resources/codesplit/member/code/TestNotRewriteMember.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/member/code/TestNotRewriteMember.java
rename to paimon-common/src/test/resources/codesplit/member/code/TestNotRewriteMember.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/member/code/TestRewriteGenericType.java b/paimon-common/src/test/resources/codesplit/member/code/TestRewriteGenericType.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/member/code/TestRewriteGenericType.java
rename to paimon-common/src/test/resources/codesplit/member/code/TestRewriteGenericType.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/member/code/TestRewriteInnerClass.java b/paimon-common/src/test/resources/codesplit/member/code/TestRewriteInnerClass.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/member/code/TestRewriteInnerClass.java
rename to paimon-common/src/test/resources/codesplit/member/code/TestRewriteInnerClass.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/member/code/TestRewriteMemberField.java b/paimon-common/src/test/resources/codesplit/member/code/TestRewriteMemberField.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/member/code/TestRewriteMemberField.java
rename to paimon-common/src/test/resources/codesplit/member/code/TestRewriteMemberField.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/member/expected/TestNotRewriteFunctionParameter.java b/paimon-common/src/test/resources/codesplit/member/expected/TestNotRewriteFunctionParameter.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/member/expected/TestNotRewriteFunctionParameter.java
rename to paimon-common/src/test/resources/codesplit/member/expected/TestNotRewriteFunctionParameter.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/member/expected/TestNotRewriteLocalVariable.java b/paimon-common/src/test/resources/codesplit/member/expected/TestNotRewriteLocalVariable.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/member/expected/TestNotRewriteLocalVariable.java
rename to paimon-common/src/test/resources/codesplit/member/expected/TestNotRewriteLocalVariable.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/member/expected/TestNotRewriteMember.java b/paimon-common/src/test/resources/codesplit/member/expected/TestNotRewriteMember.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/member/expected/TestNotRewriteMember.java
rename to paimon-common/src/test/resources/codesplit/member/expected/TestNotRewriteMember.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/member/expected/TestRewriteGenericType.java b/paimon-common/src/test/resources/codesplit/member/expected/TestRewriteGenericType.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/member/expected/TestRewriteGenericType.java
rename to paimon-common/src/test/resources/codesplit/member/expected/TestRewriteGenericType.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/member/expected/TestRewriteInnerClass.java b/paimon-common/src/test/resources/codesplit/member/expected/TestRewriteInnerClass.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/member/expected/TestRewriteInnerClass.java
rename to paimon-common/src/test/resources/codesplit/member/expected/TestRewriteInnerClass.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/member/expected/TestRewriteMemberField.java b/paimon-common/src/test/resources/codesplit/member/expected/TestRewriteMemberField.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/member/expected/TestRewriteMemberField.java
rename to paimon-common/src/test/resources/codesplit/member/expected/TestRewriteMemberField.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/return/code/TestNotRewrite.java b/paimon-common/src/test/resources/codesplit/return/code/TestNotRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/return/code/TestNotRewrite.java
rename to paimon-common/src/test/resources/codesplit/return/code/TestNotRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/return/code/TestRewriteInnerClass.java b/paimon-common/src/test/resources/codesplit/return/code/TestRewriteInnerClass.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/return/code/TestRewriteInnerClass.java
rename to paimon-common/src/test/resources/codesplit/return/code/TestRewriteInnerClass.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/return/code/TestRewriteReturnValue.java b/paimon-common/src/test/resources/codesplit/return/code/TestRewriteReturnValue.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/return/code/TestRewriteReturnValue.java
rename to paimon-common/src/test/resources/codesplit/return/code/TestRewriteReturnValue.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/return/code/TestSkipAnonymousClassAndLambda.java b/paimon-common/src/test/resources/codesplit/return/code/TestSkipAnonymousClassAndLambda.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/return/code/TestSkipAnonymousClassAndLambda.java
rename to paimon-common/src/test/resources/codesplit/return/code/TestSkipAnonymousClassAndLambda.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/return/expected/TestNotRewrite.java b/paimon-common/src/test/resources/codesplit/return/expected/TestNotRewrite.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/return/expected/TestNotRewrite.java
rename to paimon-common/src/test/resources/codesplit/return/expected/TestNotRewrite.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/return/expected/TestRewriteInnerClass.java b/paimon-common/src/test/resources/codesplit/return/expected/TestRewriteInnerClass.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/return/expected/TestRewriteInnerClass.java
rename to paimon-common/src/test/resources/codesplit/return/expected/TestRewriteInnerClass.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/return/expected/TestRewriteReturnValue.java b/paimon-common/src/test/resources/codesplit/return/expected/TestRewriteReturnValue.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/return/expected/TestRewriteReturnValue.java
rename to paimon-common/src/test/resources/codesplit/return/expected/TestRewriteReturnValue.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/return/expected/TestSkipAnonymousClassAndLambda.java b/paimon-common/src/test/resources/codesplit/return/expected/TestSkipAnonymousClassAndLambda.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/return/expected/TestSkipAnonymousClassAndLambda.java
rename to paimon-common/src/test/resources/codesplit/return/expected/TestSkipAnonymousClassAndLambda.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/splitter/code/TestNotSplitJavaCode.java b/paimon-common/src/test/resources/codesplit/splitter/code/TestNotSplitJavaCode.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/splitter/code/TestNotSplitJavaCode.java
rename to paimon-common/src/test/resources/codesplit/splitter/code/TestNotSplitJavaCode.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/splitter/code/TestSplitJavaCode.java b/paimon-common/src/test/resources/codesplit/splitter/code/TestSplitJavaCode.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/splitter/code/TestSplitJavaCode.java
rename to paimon-common/src/test/resources/codesplit/splitter/code/TestSplitJavaCode.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/splitter/expected/TestNotSplitJavaCode.java b/paimon-common/src/test/resources/codesplit/splitter/expected/TestNotSplitJavaCode.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/splitter/expected/TestNotSplitJavaCode.java
rename to paimon-common/src/test/resources/codesplit/splitter/expected/TestNotSplitJavaCode.java
diff --git a/flink-table-store-common/src/test/resources/codesplit/splitter/expected/TestSplitJavaCode.java b/paimon-common/src/test/resources/codesplit/splitter/expected/TestSplitJavaCode.java
similarity index 100%
rename from flink-table-store-common/src/test/resources/codesplit/splitter/expected/TestSplitJavaCode.java
rename to paimon-common/src/test/resources/codesplit/splitter/expected/TestSplitJavaCode.java
diff --git a/flink-table-store-common/src/test/resources/core-site.xml b/paimon-common/src/test/resources/core-site.xml
similarity index 100%
rename from flink-table-store-common/src/test/resources/core-site.xml
rename to paimon-common/src/test/resources/core-site.xml
diff --git a/flink-table-store-common/src/test/resources/log4j2-test.properties b/paimon-common/src/test/resources/log4j2-test.properties
similarity index 100%
rename from flink-table-store-common/src/test/resources/log4j2-test.properties
rename to paimon-common/src/test/resources/log4j2-test.properties
diff --git a/pom.xml b/pom.xml
index 85de94884..30e4f1a40 100644
--- a/pom.xml
+++ b/pom.xml
@@ -53,9 +53,9 @@ under the License.
 
     <modules>
         <module>paimon-benchmark</module>
-        <module>flink-table-store-codegen</module>
-        <module>flink-table-store-codegen-loader</module>
-        <module>flink-table-store-common</module>
+        <module>paimon-codegen</module>
+        <module>paimon-codegen-loader</module>
+        <module>paimon-common</module>
         <module>flink-table-store-core</module>
         <module>paimon-flink</module>
         <module>paimon-docs</module>
@@ -396,9 +396,9 @@ under the License.
                         <!-- artifacts created during release process -->
                         <exclude>release/**</exclude>
                         <!-- antlr grammar files -->
-                        <exclude>flink-table-store-common/src/main/antlr4/**</exclude>
+                        <exclude>paimon-common/src/main/antlr4/**</exclude>
                         <!-- Test files -->
-                        <exclude>flink-table-store-common/src/test/resources/codesplit/**</exclude>
+                        <exclude>paimon-common/src/test/resources/codesplit/**</exclude>
                     </excludes>
                 </configuration>
             </plugin>
diff --git a/tools/maven/suppressions.xml b/tools/maven/suppressions.xml
index da39f0e8b..42525cd46 100644
--- a/tools/maven/suppressions.xml
+++ b/tools/maven/suppressions.xml
@@ -31,7 +31,7 @@ under the License.
 			checks=".*"/>
 		<!-- Benchmark CPU metrics collector based on YARN  -->
 		<suppress
-			files="org[\\/]apache[\\/]flink[\\/]table[\\/]store[\\/]benchmark[\\/]metric[\\/]cpu[\\/].*"
+			files="org[\\/]apache[\\/]paimon[\\/]benchmark[\\/]metric[\\/]cpu[\\/].*"
 			checks=".*"/>
 		<!-- Classes copied from AWS -->
 		<suppress


[incubator-paimon] 16/32: [core] Rename paimon core

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit f53ec094735e9984b88f476a8a5fa04026864caf
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 14:20:06 2023 +0800

    [core] Rename paimon core
---
 {flink-table-store-core => paimon-core}/pom.xml             |   0
 .../src/main/java/org/apache/paimon/CoreOptions.java        |   0
 .../main/java/org/apache/paimon/file/AbstractFileStore.java |   0
 .../java/org/apache/paimon/file/AppendOnlyFileStore.java    |   0
 .../src/main/java/org/apache/paimon/file/FileStore.java     |   0
 .../src/main/java/org/apache/paimon/file/KeyValue.java      |   0
 .../main/java/org/apache/paimon/file/KeyValueFileStore.java |   0
 .../java/org/apache/paimon/file/KeyValueSerializer.java     |   0
 .../src/main/java/org/apache/paimon/file/Snapshot.java      |   0
 .../src/main/java/org/apache/paimon/file/WriteMode.java     |   0
 .../apache/paimon/file/append/AppendOnlyCompactManager.java |   0
 .../org/apache/paimon/file/append/AppendOnlyWriter.java     |   0
 .../java/org/apache/paimon/file/casting/CastExecutor.java   |   0
 .../java/org/apache/paimon/file/casting/CastExecutors.java  |   0
 .../org/apache/paimon/file/casting/CastFieldGetter.java     |   0
 .../main/java/org/apache/paimon/file/casting/CastedRow.java |   0
 .../org/apache/paimon/file/catalog/AbstractCatalog.java     |   0
 .../main/java/org/apache/paimon/file/catalog/Catalog.java   |   0
 .../java/org/apache/paimon/file/catalog/CatalogFactory.java |   0
 .../java/org/apache/paimon/file/catalog/CatalogLock.java    |   0
 .../java/org/apache/paimon/file/catalog/CatalogUtils.java   |   0
 .../org/apache/paimon/file/catalog/FileSystemCatalog.java   |   0
 .../paimon/file/catalog/FileSystemCatalogFactory.java       |   0
 .../java/org/apache/paimon/file/catalog/Identifier.java     |   0
 .../apache/paimon/file/compact/CompactFutureManager.java    |   0
 .../java/org/apache/paimon/file/compact/CompactManager.java |   0
 .../java/org/apache/paimon/file/compact/CompactResult.java  |   0
 .../java/org/apache/paimon/file/compact/CompactTask.java    |   0
 .../java/org/apache/paimon/file/compact/CompactUnit.java    |   0
 .../org/apache/paimon/file/compact/NoopCompactManager.java  |   0
 .../paimon/file/compression/BlockCompressionFactory.java    |   0
 .../org/apache/paimon/file/compression/BlockCompressor.java |   0
 .../apache/paimon/file/compression/BlockDecompressor.java   |   0
 .../paimon/file/compression/BufferCompressionException.java |   0
 .../file/compression/BufferDecompressionException.java      |   0
 .../org/apache/paimon/file/compression/CompressorUtils.java |   0
 .../paimon/file/compression/Lz4BlockCompressionFactory.java |   0
 .../apache/paimon/file/compression/Lz4BlockCompressor.java  |   0
 .../paimon/file/compression/Lz4BlockDecompressor.java       |   0
 .../org/apache/paimon/file/disk/AbstractFileIOChannel.java  |   0
 .../apache/paimon/file/disk/BufferFileChannelReader.java    |   0
 .../java/org/apache/paimon/file/disk/BufferFileReader.java  |   0
 .../org/apache/paimon/file/disk/BufferFileReaderImpl.java   |   0
 .../java/org/apache/paimon/file/disk/BufferFileWriter.java  |   0
 .../org/apache/paimon/file/disk/BufferFileWriterImpl.java   |   0
 .../org/apache/paimon/file/disk/ChannelReaderInputView.java |   0
 .../paimon/file/disk/ChannelReaderInputViewIterator.java    |   0
 .../java/org/apache/paimon/file/disk/ChannelWithMeta.java   |   0
 .../apache/paimon/file/disk/ChannelWriterOutputView.java    |   0
 .../org/apache/paimon/file/disk/FileChannelManager.java     |   0
 .../org/apache/paimon/file/disk/FileChannelManagerImpl.java |   0
 .../java/org/apache/paimon/file/disk/FileChannelUtil.java   |   0
 .../java/org/apache/paimon/file/disk/FileIOChannel.java     |   0
 .../main/java/org/apache/paimon/file/disk/IOManager.java    |   0
 .../java/org/apache/paimon/file/disk/IOManagerImpl.java     |   0
 .../apache/paimon/file/io/AbstractFileRecordIterator.java   |   0
 .../java/org/apache/paimon/file/io/CompactIncrement.java    |   0
 .../main/java/org/apache/paimon/file/io/DataFileMeta.java   |   0
 .../org/apache/paimon/file/io/DataFileMetaSerializer.java   |   0
 .../java/org/apache/paimon/file/io/DataFilePathFactory.java |   0
 .../src/main/java/org/apache/paimon/file/io/FileWriter.java |   0
 .../apache/paimon/file/io/KeyValueDataFileRecordReader.java |   0
 .../org/apache/paimon/file/io/KeyValueDataFileWriter.java   |   0
 .../apache/paimon/file/io/KeyValueFileReaderFactory.java    |   0
 .../apache/paimon/file/io/KeyValueFileWriterFactory.java    |   0
 .../java/org/apache/paimon/file/io/NewFilesIncrement.java   |   0
 .../java/org/apache/paimon/file/io/RollingFileWriter.java   |   0
 .../org/apache/paimon/file/io/RowDataFileRecordReader.java  |   0
 .../java/org/apache/paimon/file/io/RowDataFileWriter.java   |   0
 .../org/apache/paimon/file/io/RowDataRollingFileWriter.java |   0
 .../java/org/apache/paimon/file/io/SingleFileWriter.java    |   0
 .../paimon/file/io/StatsCollectingSingleFileWriter.java     |   0
 .../main/java/org/apache/paimon/file/manifest/FileKind.java |   0
 .../apache/paimon/file/manifest/ManifestCommittable.java    |   0
 .../paimon/file/manifest/ManifestCommittableSerializer.java |   0
 .../java/org/apache/paimon/file/manifest/ManifestEntry.java |   0
 .../paimon/file/manifest/ManifestEntrySerializer.java       |   0
 .../java/org/apache/paimon/file/manifest/ManifestFile.java  |   0
 .../org/apache/paimon/file/manifest/ManifestFileMeta.java   |   0
 .../paimon/file/manifest/ManifestFileMetaSerializer.java    |   0
 .../java/org/apache/paimon/file/manifest/ManifestList.java  |   0
 .../src/main/java/org/apache/paimon/file/memory/Buffer.java |   0
 .../apache/paimon/file/memory/HeapMemorySegmentPool.java    |   0
 .../java/org/apache/paimon/file/memory/MemoryOwner.java     |   0
 .../org/apache/paimon/file/memory/MemoryPoolFactory.java    |   0
 .../org/apache/paimon/file/memory/MemorySegmentPool.java    |   0
 .../org/apache/paimon/file/mergetree/DataFileReader.java    |   0
 .../org/apache/paimon/file/mergetree/DropDeleteReader.java  |   0
 .../org/apache/paimon/file/mergetree/LevelSortedRun.java    |   0
 .../main/java/org/apache/paimon/file/mergetree/Levels.java  |   0
 .../java/org/apache/paimon/file/mergetree/LookupLevels.java |   0
 .../org/apache/paimon/file/mergetree/MergeTreeReaders.java  |   0
 .../org/apache/paimon/file/mergetree/MergeTreeWriter.java   |   0
 .../apache/paimon/file/mergetree/SortBufferWriteBuffer.java |   0
 .../java/org/apache/paimon/file/mergetree/SortedRun.java    |   0
 .../java/org/apache/paimon/file/mergetree/WriteBuffer.java  |   0
 .../file/mergetree/compact/AbstractCompactRewriter.java     |   0
 .../file/mergetree/compact/ChangelogMergeTreeRewriter.java  |   0
 .../paimon/file/mergetree/compact/ChangelogResult.java      |   0
 .../paimon/file/mergetree/compact/CompactRewriter.java      |   0
 .../paimon/file/mergetree/compact/CompactStrategy.java      |   0
 .../paimon/file/mergetree/compact/ConcatRecordReader.java   |   0
 .../file/mergetree/compact/DeduplicateMergeFunction.java    |   0
 .../file/mergetree/compact/ForceUpLevel0Compaction.java     |   0
 .../compact/FullChangelogMergeFunctionWrapper.java          |   0
 .../compact/FullChangelogMergeTreeCompactRewriter.java      |   0
 .../paimon/file/mergetree/compact/IntervalPartition.java    |   0
 .../compact/LookupChangelogMergeFunctionWrapper.java        |   0
 .../paimon/file/mergetree/compact/LookupCompaction.java     |   0
 .../paimon/file/mergetree/compact/LookupMergeFunction.java  |   0
 .../mergetree/compact/LookupMergeTreeCompactRewriter.java   |   0
 .../apache/paimon/file/mergetree/compact/MergeFunction.java |   0
 .../paimon/file/mergetree/compact/MergeFunctionFactory.java |   0
 .../paimon/file/mergetree/compact/MergeFunctionWrapper.java |   0
 .../file/mergetree/compact/MergeTreeCompactManager.java     |   0
 .../file/mergetree/compact/MergeTreeCompactRewriter.java    |   0
 .../paimon/file/mergetree/compact/MergeTreeCompactTask.java |   0
 .../file/mergetree/compact/PartialUpdateMergeFunction.java  |   0
 .../file/mergetree/compact/ReducerMergeFunctionWrapper.java |   0
 .../paimon/file/mergetree/compact/SortMergeReader.java      |   0
 .../paimon/file/mergetree/compact/UniversalCompaction.java  |   0
 .../file/mergetree/compact/ValueCountMergeFunction.java     |   0
 .../mergetree/compact/aggregate/AggregateMergeFunction.java |   0
 .../file/mergetree/compact/aggregate/FieldAggregator.java   |   0
 .../file/mergetree/compact/aggregate/FieldBoolAndAgg.java   |   0
 .../file/mergetree/compact/aggregate/FieldBoolOrAgg.java    |   0
 .../mergetree/compact/aggregate/FieldIgnoreRetractAgg.java  |   0
 .../compact/aggregate/FieldLastNonNullValueAgg.java         |   0
 .../file/mergetree/compact/aggregate/FieldLastValueAgg.java |   0
 .../file/mergetree/compact/aggregate/FieldListaggAgg.java   |   0
 .../file/mergetree/compact/aggregate/FieldMaxAgg.java       |   0
 .../file/mergetree/compact/aggregate/FieldMinAgg.java       |   0
 .../mergetree/compact/aggregate/FieldPrimaryKeyAgg.java     |   0
 .../file/mergetree/compact/aggregate/FieldSumAgg.java       |   0
 .../apache/paimon/file/operation/AbstractFileStoreScan.java |   0
 .../paimon/file/operation/AbstractFileStoreWrite.java       |   0
 .../paimon/file/operation/AppendOnlyFileStoreRead.java      |   0
 .../paimon/file/operation/AppendOnlyFileStoreScan.java      |   0
 .../paimon/file/operation/AppendOnlyFileStoreWrite.java     |   0
 .../org/apache/paimon/file/operation/FileStoreCommit.java   |   0
 .../apache/paimon/file/operation/FileStoreCommitImpl.java   |   0
 .../org/apache/paimon/file/operation/FileStoreExpire.java   |   0
 .../apache/paimon/file/operation/FileStoreExpireImpl.java   |   0
 .../org/apache/paimon/file/operation/FileStoreRead.java     |   0
 .../org/apache/paimon/file/operation/FileStoreScan.java     |   0
 .../org/apache/paimon/file/operation/FileStoreWrite.java    |   0
 .../apache/paimon/file/operation/KeyValueFileStoreRead.java |   0
 .../apache/paimon/file/operation/KeyValueFileStoreScan.java |   0
 .../paimon/file/operation/KeyValueFileStoreWrite.java       |   0
 .../main/java/org/apache/paimon/file/operation/Lock.java    |   0
 .../apache/paimon/file/operation/MemoryFileStoreWrite.java  |   0
 .../org/apache/paimon/file/operation/PartitionExpire.java   |   0
 .../org/apache/paimon/file/operation/ReverseReader.java     |   0
 .../java/org/apache/paimon/file/operation/ScanKind.java     |   0
 .../paimon/file/partition/PartitionTimeExtractor.java       |   0
 .../org/apache/paimon/file/predicate/BucketSelector.java    |   0
 .../org/apache/paimon/file/schema/IndexCastMapping.java     |   0
 .../apache/paimon/file/schema/KeyValueFieldsExtractor.java  |   0
 .../src/main/java/org/apache/paimon/file/schema/Schema.java |   0
 .../java/org/apache/paimon/file/schema/SchemaChange.java    |   0
 .../org/apache/paimon/file/schema/SchemaEvolutionUtil.java  |   0
 .../java/org/apache/paimon/file/schema/SchemaManager.java   |   0
 .../org/apache/paimon/file/schema/SchemaSerializer.java     |   0
 .../org/apache/paimon/file/schema/SchemaValidation.java     |   0
 .../java/org/apache/paimon/file/schema/SystemColumns.java   |   0
 .../java/org/apache/paimon/file/schema/TableSchema.java     |   0
 .../paimon/file/sort/AbstractBinaryExternalMerger.java      |   0
 .../org/apache/paimon/file/sort/BinaryExternalMerger.java   |   0
 .../apache/paimon/file/sort/BinaryExternalSortBuffer.java   |   0
 .../apache/paimon/file/sort/BinaryInMemorySortBuffer.java   |   0
 .../org/apache/paimon/file/sort/BinaryIndexedSortable.java  |   0
 .../org/apache/paimon/file/sort/BinaryMergeIterator.java    |   0
 .../src/main/java/org/apache/paimon/file/sort/HeapSort.java |   0
 .../java/org/apache/paimon/file/sort/IndexedSortable.java   |   0
 .../java/org/apache/paimon/file/sort/IndexedSorter.java     |   0
 .../apache/paimon/file/sort/PartialOrderPriorityQueue.java  |   0
 .../main/java/org/apache/paimon/file/sort/QuickSort.java    |   0
 .../main/java/org/apache/paimon/file/sort/SortBuffer.java   |   0
 .../org/apache/paimon/file/sort/SpillChannelManager.java    |   0
 .../java/org/apache/paimon/file/stats/BinaryTableStats.java |   0
 .../apache/paimon/file/stats/FieldStatsArraySerializer.java |   0
 .../org/apache/paimon/file/stats/FieldStatsConverters.java  |   0
 .../org/apache/paimon/file/utils/BulkFormatMapping.java     |   0
 .../java/org/apache/paimon/file/utils/CommitIncrement.java  |   0
 .../org/apache/paimon/file/utils/ExecutorThreadFactory.java |   0
 .../apache/paimon/file/utils/FatalExitExceptionHandler.java |   0
 .../org/apache/paimon/file/utils/FileStorePathFactory.java  |   0
 .../main/java/org/apache/paimon/file/utils/FileUtils.java   |   0
 .../org/apache/paimon/file/utils/IteratorRecordReader.java  |   0
 .../java/org/apache/paimon/file/utils/JsonDeserializer.java |   0
 .../java/org/apache/paimon/file/utils/JsonSerdeUtil.java    |   0
 .../java/org/apache/paimon/file/utils/JsonSerializer.java   |   0
 .../org/apache/paimon/file/utils/KeyComparatorSupplier.java |   0
 .../org/apache/paimon/file/utils/MutableObjectIterator.java |   0
 .../java/org/apache/paimon/file/utils/ObjectSerializer.java |   0
 .../main/java/org/apache/paimon/file/utils/OffsetRow.java   |   0
 .../org/apache/paimon/file/utils/PartitionPathUtils.java    |   0
 .../java/org/apache/paimon/file/utils/RecordWriter.java     |   0
 .../main/java/org/apache/paimon/file/utils/Restorable.java  |   0
 .../apache/paimon/file/utils/RowDataPartitionComputer.java  |   0
 .../org/apache/paimon/file/utils/SerializableSupplier.java  |   0
 .../org/apache/paimon/file/utils/SerializationUtils.java    |   0
 .../java/org/apache/paimon/file/utils/SnapshotManager.java  |   0
 .../main/java/org/apache/paimon/file/utils/ThreadUtils.java |   0
 .../apache/paimon/file/utils/VersionedObjectSerializer.java |   0
 .../java/org/apache/paimon/format/FileFormatDiscover.java   |   0
 .../src/main/java/org/apache/paimon/format/FormatKey.java   |   0
 .../org/apache/paimon/table/AbstractFileStoreTable.java     |   0
 .../org/apache/paimon/table/AppendOnlyFileStoreTable.java   |   0
 .../paimon/table/ChangelogValueCountFileStoreTable.java     |   0
 .../apache/paimon/table/ChangelogWithKeyFileStoreTable.java |   0
 .../src/main/java/org/apache/paimon/table/DataTable.java    |   0
 .../main/java/org/apache/paimon/table/FileStoreTable.java   |   0
 .../java/org/apache/paimon/table/FileStoreTableFactory.java |   0
 .../src/main/java/org/apache/paimon/table/InnerTable.java   |   0
 .../main/java/org/apache/paimon/table/ReadonlyTable.java    |   0
 .../java/org/apache/paimon/table/SupportsPartition.java     |   0
 .../src/main/java/org/apache/paimon/table/Table.java        |   0
 .../src/main/java/org/apache/paimon/table/TableUtils.java   |   0
 .../java/org/apache/paimon/table/sink/BatchTableCommit.java |   0
 .../java/org/apache/paimon/table/sink/BatchTableWrite.java  |   0
 .../org/apache/paimon/table/sink/BatchWriteBuilder.java     |   0
 .../org/apache/paimon/table/sink/BatchWriteBuilderImpl.java |   0
 .../java/org/apache/paimon/table/sink/BucketComputer.java   |   0
 .../java/org/apache/paimon/table/sink/CommitMessage.java    |   0
 .../org/apache/paimon/table/sink/CommitMessageImpl.java     |   0
 .../apache/paimon/table/sink/CommitMessageSerializer.java   |   0
 .../java/org/apache/paimon/table/sink/InnerTableCommit.java |   0
 .../java/org/apache/paimon/table/sink/InnerTableWrite.java  |   0
 .../org/apache/paimon/table/sink/PartitionComputer.java     |   0
 .../org/apache/paimon/table/sink/SequenceGenerator.java     |   0
 .../main/java/org/apache/paimon/table/sink/SinkRecord.java  |   0
 .../org/apache/paimon/table/sink/SinkRecordConverter.java   |   0
 .../org/apache/paimon/table/sink/StreamTableCommit.java     |   0
 .../java/org/apache/paimon/table/sink/StreamTableWrite.java |   0
 .../org/apache/paimon/table/sink/StreamWriteBuilder.java    |   0
 .../apache/paimon/table/sink/StreamWriteBuilderImpl.java    |   0
 .../main/java/org/apache/paimon/table/sink/TableCommit.java |   0
 .../java/org/apache/paimon/table/sink/TableCommitImpl.java  |   0
 .../main/java/org/apache/paimon/table/sink/TableWrite.java  |   0
 .../java/org/apache/paimon/table/sink/TableWriteImpl.java   |   0
 .../java/org/apache/paimon/table/sink/WriteBuilder.java     |   0
 .../apache/paimon/table/source/AbstractDataTableScan.java   |   0
 .../paimon/table/source/AppendOnlySplitGenerator.java       |   0
 .../org/apache/paimon/table/source/BatchDataTableScan.java  |   0
 .../apache/paimon/table/source/BatchDataTableScanImpl.java  |   0
 .../main/java/org/apache/paimon/table/source/DataSplit.java |   0
 .../java/org/apache/paimon/table/source/DataTableScan.java  |   0
 .../org/apache/paimon/table/source/EndOfScanException.java  |   0
 .../apache/paimon/table/source/InnerStreamTableScan.java    |   0
 .../java/org/apache/paimon/table/source/InnerTableRead.java |   0
 .../java/org/apache/paimon/table/source/InnerTableScan.java |   0
 .../org/apache/paimon/table/source/KeyValueTableRead.java   |   0
 .../apache/paimon/table/source/MergeTreeSplitGenerator.java |   0
 .../java/org/apache/paimon/table/source/ReadBuilder.java    |   0
 .../org/apache/paimon/table/source/ReadBuilderImpl.java     |   0
 .../org/apache/paimon/table/source/ReadOnceTableScan.java   |   0
 .../paimon/table/source/ResetRowKindRecordIterator.java     |   0
 .../src/main/java/org/apache/paimon/table/source/Split.java |   0
 .../java/org/apache/paimon/table/source/SplitGenerator.java |   0
 .../org/apache/paimon/table/source/StreamDataTableScan.java |   0
 .../apache/paimon/table/source/StreamDataTableScanImpl.java |   0
 .../org/apache/paimon/table/source/StreamTableScan.java     |   0
 .../main/java/org/apache/paimon/table/source/TableRead.java |   0
 .../main/java/org/apache/paimon/table/source/TableScan.java |   0
 .../apache/paimon/table/source/TableStreamingReader.java    |   0
 .../table/source/ValueContentRowDataRecordIterator.java     |   0
 .../table/source/ValueCountRowDataRecordIterator.java       |   0
 .../source/snapshot/BoundedWatermarkFollowUpScanner.java    |   0
 .../table/source/snapshot/CompactedStartingScanner.java     |   0
 .../source/snapshot/CompactionChangelogFollowUpScanner.java |   0
 .../source/snapshot/ContinuousCompactorFollowUpScanner.java |   0
 .../source/snapshot/ContinuousCompactorStartingScanner.java |   0
 .../snapshot/ContinuousFromSnapshotStartingScanner.java     |   0
 .../snapshot/ContinuousFromTimestampStartingScanner.java    |   0
 .../source/snapshot/ContinuousLatestStartingScanner.java    |   0
 .../paimon/table/source/snapshot/DeltaFollowUpScanner.java  |   0
 .../paimon/table/source/snapshot/FollowUpScanner.java       |   0
 .../paimon/table/source/snapshot/FullStartingScanner.java   |   0
 .../source/snapshot/InputChangelogFollowUpScanner.java      |   0
 .../paimon/table/source/snapshot/SnapshotSplitReader.java   |   0
 .../table/source/snapshot/SnapshotSplitReaderImpl.java      |   0
 .../paimon/table/source/snapshot/StartingScanner.java       |   0
 .../source/snapshot/StaticFromSnapshotStartingScanner.java  |   0
 .../source/snapshot/StaticFromTimestampStartingScanner.java |   0
 .../java/org/apache/paimon/table/system/AuditLogTable.java  |   0
 .../java/org/apache/paimon/table/system/BucketsTable.java   |   0
 .../java/org/apache/paimon/table/system/FilesTable.java     |   0
 .../java/org/apache/paimon/table/system/OptionsTable.java   |   0
 .../java/org/apache/paimon/table/system/SchemasTable.java   |   0
 .../java/org/apache/paimon/table/system/SnapshotsTable.java |   0
 .../org/apache/paimon/table/system/SystemTableLoader.java   |   0
 ...able.store.org.apache.paimon.file.catalog.CatalogFactory |   0
 .../src/test/java/org/apache/paimon/CoreOptionsTest.java    |   0
 .../test/java/org/apache/paimon/file/FileFormatTest.java    |   0
 .../java/org/apache/paimon/file/KeyValueSerializerTest.java |   0
 .../src/test/java/org/apache/paimon/file/TestFileStore.java |   0
 .../java/org/apache/paimon/file/TestKeyValueGenerator.java  |   0
 .../paimon/file/append/AppendOnlyCompactManagerTest.java    |   0
 .../org/apache/paimon/file/append/AppendOnlyWriterTest.java |   0
 .../apache/paimon/file/append/IterativeCompactTaskTest.java |   0
 .../org/apache/paimon/file/casting/CastExecutorTest.java    |   0
 .../org/apache/paimon/file/catalog/CatalogFactoryTest.java  |   0
 .../apache/paimon/file/disk/BufferFileWriterReaderTest.java |   0
 .../java/org/apache/paimon/file/disk/IOManagerTest.java     |   0
 .../org/apache/paimon/file/format/FileFormatSuffixTest.java |   0
 .../paimon/file/format/FileStatsExtractingAvroFormat.java   |   0
 .../file/format/FileStatsExtractingAvroFormatFactory.java   |   0
 .../org/apache/paimon/file/format/FlushingFileFormat.java   |   0
 .../apache/paimon/file/io/DataFileMetaSerializerTest.java   |   0
 .../org/apache/paimon/file/io/DataFilePathFactoryTest.java  |   0
 .../apache/paimon/file/io/DataFileTestDataGenerator.java    |   0
 .../java/org/apache/paimon/file/io/DataFileTestUtils.java   |   0
 .../apache/paimon/file/io/KeyValueFileReadWriteTest.java    |   0
 .../org/apache/paimon/file/io/RollingFileWriterTest.java    |   0
 .../file/manifest/ManifestCommittableSerializerTest.java    |   0
 .../paimon/file/manifest/ManifestEntrySerializerTest.java   |   0
 .../file/manifest/ManifestFileMetaSerializerTest.java       |   0
 .../apache/paimon/file/manifest/ManifestFileMetaTest.java   |   0
 .../org/apache/paimon/file/manifest/ManifestFileTest.java   |   0
 .../org/apache/paimon/file/manifest/ManifestListTest.java   |   0
 .../paimon/file/manifest/ManifestTestDataGenerator.java     |   0
 .../apache/paimon/file/memory/MemoryPoolFactoryTest.java    |   0
 .../java/org/apache/paimon/file/mergetree/LevelsTest.java   |   0
 .../org/apache/paimon/file/mergetree/LookupLevelsTest.java  |   0
 .../org/apache/paimon/file/mergetree/MergeTreeTest.java     |   0
 .../file/mergetree/SortBufferWriteBufferTestBase.java       |   0
 .../mergetree/compact/CombiningRecordReaderTestBase.java    |   0
 .../file/mergetree/compact/ConcatRecordReaderTest.java      |   0
 .../file/mergetree/compact/ForceUpLevel0CompactionTest.java |   0
 .../compact/FullChangelogMergeFunctionWrapperTestBase.java  |   0
 .../file/mergetree/compact/IntervalPartitionTest.java       |   0
 .../compact/LookupChangelogMergeFunctionWrapperTest.java    |   0
 .../file/mergetree/compact/MergeFunctionTestUtils.java      |   0
 .../file/mergetree/compact/MergeTreeCompactManagerTest.java |   0
 .../compact/ReducerMergeFunctionWrapperTestBase.java        |   0
 .../file/mergetree/compact/SortMergeReaderTestBase.java     |   0
 .../file/mergetree/compact/UniversalCompactionTest.java     |   0
 .../mergetree/compact/aggregate/FieldAggregatorTest.java    |   0
 .../paimon/file/operation/CleanedFileStoreExpireTest.java   |   0
 .../apache/paimon/file/operation/FileStoreCommitTest.java   |   0
 .../paimon/file/operation/FileStoreExpireTestBase.java      |   0
 .../paimon/file/operation/KeyValueFileStoreReadTest.java    |   0
 .../paimon/file/operation/KeyValueFileStoreScanTest.java    |   0
 .../apache/paimon/file/operation/PartitionExpireTest.java   |   0
 .../org/apache/paimon/file/operation/TestCommitThread.java  |   0
 .../paimon/file/operation/UncleanedFileStoreExpireTest.java |   0
 .../paimon/file/partition/PartitionTimeExtractorTest.java   |   0
 .../apache/paimon/file/predicate/BucketSelectorTest.java    |   0
 .../apache/paimon/file/predicate/PredicateBuilderTest.java  |   0
 .../org/apache/paimon/file/predicate/PredicateTest.java     |   0
 .../apache/paimon/file/schema/DataTypeJsonParserTest.java   |   0
 .../apache/paimon/file/schema/SchemaEvolutionUtilTest.java  |   0
 .../org/apache/paimon/file/schema/SchemaManagerTest.java    |   0
 .../java/org/apache/paimon/file/schema/SchemaUtils.java     |   0
 .../paimon/file/schema/TableSchemaSerializationTest.java    |   0
 .../java/org/apache/paimon/file/schema/TableSchemaTest.java |   0
 .../paimon/file/sort/BinaryExternalSortBufferTest.java      |   0
 .../apache/paimon/file/sort/IntNormalizedKeyComputer.java   |   0
 .../org/apache/paimon/file/sort/IntRecordComparator.java    |   0
 .../org/apache/paimon/file/stats/BinaryTableStatsTest.java  |   0
 .../paimon/file/stats/FieldStatsArraySerializerTest.java    |   0
 .../apache/paimon/file/stats/FieldStatsCollectorTest.java   |   0
 .../java/org/apache/paimon/file/stats/StatsTestUtils.java   |   0
 .../apache/paimon/file/stats/TestFileStatsExtractor.java    |   0
 .../java/org/apache/paimon/file/utils/BlockingIterator.java |   0
 .../java/org/apache/paimon/file/utils/FailingFileIO.java    |   0
 .../apache/paimon/file/utils/FileStorePathFactoryTest.java  |   0
 .../apache/paimon/file/utils/ObjectSerializerTestBase.java  |   0
 .../java/org/apache/paimon/file/utils/OffsetRowTest.java    |   0
 .../java/org/apache/paimon/file/utils/ReusingKeyValue.java  |   0
 .../java/org/apache/paimon/file/utils/ReusingTestData.java  |   0
 .../org/apache/paimon/file/utils/SnapshotManagerTest.java   |   0
 .../apache/paimon/file/utils/TestReusingRecordReader.java   |   0
 .../java/org/apache/paimon/file/utils/TraceableFileIO.java  |   0
 .../apache/paimon/table/AppendOnlyFileDataTableTest.java    |   0
 .../apache/paimon/table/AppendOnlyFileStoreTableTest.java   |   0
 .../paimon/table/AppendOnlyTableColumnTypeFileDataTest.java |   0
 .../paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java |   0
 .../paimon/table/AppendOnlyTableFileMetaFilterTest.java     |   0
 .../table/ChangelogValueCountColumnTypeFileDataTest.java    |   0
 .../table/ChangelogValueCountColumnTypeFileMetaTest.java    |   0
 .../paimon/table/ChangelogValueCountFileDataTableTest.java  |   0
 .../paimon/table/ChangelogValueCountFileMetaFilterTest.java |   0
 .../paimon/table/ChangelogValueCountFileStoreTableTest.java |   0
 .../table/ChangelogWithKeyColumnTypeFileDataTest.java       |   0
 .../paimon/table/ChangelogWithKeyFileDataTableTest.java     |   0
 .../paimon/table/ChangelogWithKeyFileMetaFilterTest.java    |   0
 .../paimon/table/ChangelogWithKeyFileStoreTableTest.java    |   0
 .../table/ChangelogWithKeyTableColumnTypeFileMetaTest.java  |   0
 .../org/apache/paimon/table/ColumnTypeFileDataTestBase.java |   0
 .../org/apache/paimon/table/ColumnTypeFileMetaTestBase.java |   0
 .../org/apache/paimon/table/FileDataFilterTestBase.java     |   0
 .../org/apache/paimon/table/FileMetaFilterTestBase.java     |   0
 .../org/apache/paimon/table/FileStoreTableTestBase.java     |   0
 .../apache/paimon/table/SchemaEvolutionTableTestBase.java   |   0
 .../java/org/apache/paimon/table/SchemaEvolutionTest.java   |   0
 .../org/apache/paimon/table/WritePreemptMemoryTest.java     |   0
 .../paimon/table/sink/CommitMessageSerializerTest.java      |   0
 .../apache/paimon/table/sink/SinkRecordConverterTest.java   |   0
 .../java/org/apache/paimon/table/sink/TableWriteTest.java   |   0
 .../apache/paimon/table/source/BatchDataTableScanTest.java  |   0
 .../paimon/table/source/RowDataRecordIteratorTestBase.java  |   0
 .../org/apache/paimon/table/source/SplitGeneratorTest.java  |   0
 .../test/java/org/apache/paimon/table/source/SplitTest.java |   0
 .../apache/paimon/table/source/StreamDataTableScanTest.java |   0
 .../table/source/ValueContentRowDataRecordIteratorTest.java |   0
 .../table/source/ValueCountRowDataRecordIteratorTest.java   |   0
 .../snapshot/BoundedWatermarkFollowUpScannerTest.java       |   0
 .../table/source/snapshot/CompactedStartingScannerTest.java |   0
 .../snapshot/CompactionChangelogFollowUpScannerTest.java    |   0
 .../snapshot/ContinuousCompactorFollowUpScannerTest.java    |   0
 .../snapshot/ContinuousCompactorStartingScannerTest.java    |   0
 .../ContinuousFromTimestampStartingScannerTest.java         |   0
 .../snapshot/ContinuousLatestStartingScannerTest.java       |   0
 .../table/source/snapshot/DeltaFollowUpScannerTest.java     |   0
 .../table/source/snapshot/FullStartingScannerTest.java      |   0
 .../source/snapshot/InputChangelogFollowUpScannerTest.java  |   0
 .../paimon/table/source/snapshot/ScannerTestBase.java       |   0
 .../org/apache/paimon/utils/CompatibilityTestUtils.java     |   0
 ...k.table.store.org.apache.paimon.format.FileFormatFactory |   0
 ...ache.flink.table.store.org.apache.paimon.fs.FileIOLoader |   0
 .../test/resources/compatibility/table-changelog-0.2.zip    | Bin
 .../src/test/resources/log4j2-test.properties               |   0
 pom.xml                                                     |   2 +-
 425 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/flink-table-store-core/pom.xml b/paimon-core/pom.xml
similarity index 100%
rename from flink-table-store-core/pom.xml
rename to paimon-core/pom.xml
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/CoreOptions.java b/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/CoreOptions.java
rename to paimon-core/src/main/java/org/apache/paimon/CoreOptions.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java b/paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
rename to paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java b/paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
rename to paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/FileStore.java b/paimon-core/src/main/java/org/apache/paimon/file/FileStore.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/FileStore.java
rename to paimon-core/src/main/java/org/apache/paimon/file/FileStore.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValue.java b/paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValue.java
rename to paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java b/paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
rename to paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/Snapshot.java b/paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/Snapshot.java
rename to paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/WriteMode.java b/paimon-core/src/main/java/org/apache/paimon/file/WriteMode.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/WriteMode.java
rename to paimon-core/src/main/java/org/apache/paimon/file/WriteMode.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java b/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java
rename to paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastExecutor.java b/paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutor.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastExecutor.java
rename to paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutor.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java b/paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java
rename to paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastFieldGetter.java b/paimon-core/src/main/java/org/apache/paimon/file/casting/CastFieldGetter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastFieldGetter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/casting/CastFieldGetter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java b/paimon-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java
rename to paimon-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java
rename to paimon-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java
rename to paimon-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogLock.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogLock.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogLock.java
rename to paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogLock.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogUtils.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogUtils.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/CatalogUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogUtils.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalog.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalog.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalog.java
rename to paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalog.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java
rename to paimon-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactFutureManager.java b/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactFutureManager.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactFutureManager.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compact/CompactFutureManager.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactManager.java b/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactManager.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactManager.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compact/CompactManager.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactResult.java b/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactResult.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactResult.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compact/CompactResult.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java b/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactUnit.java b/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactUnit.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compact/CompactUnit.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compact/CompactUnit.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java b/paimon-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockCompressionFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/compression/BlockCompressionFactory.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockCompressionFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compression/BlockCompressionFactory.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockCompressor.java b/paimon-core/src/main/java/org/apache/paimon/file/compression/BlockCompressor.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockCompressor.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compression/BlockCompressor.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockDecompressor.java b/paimon-core/src/main/java/org/apache/paimon/file/compression/BlockDecompressor.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BlockDecompressor.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compression/BlockDecompressor.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BufferCompressionException.java b/paimon-core/src/main/java/org/apache/paimon/file/compression/BufferCompressionException.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BufferCompressionException.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compression/BufferCompressionException.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BufferDecompressionException.java b/paimon-core/src/main/java/org/apache/paimon/file/compression/BufferDecompressionException.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compression/BufferDecompressionException.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compression/BufferDecompressionException.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/CompressorUtils.java b/paimon-core/src/main/java/org/apache/paimon/file/compression/CompressorUtils.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compression/CompressorUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compression/CompressorUtils.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressionFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressionFactory.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressionFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressionFactory.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressor.java b/paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressor.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressor.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockCompressor.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockDecompressor.java b/paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockDecompressor.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockDecompressor.java
rename to paimon-core/src/main/java/org/apache/paimon/file/compression/Lz4BlockDecompressor.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileChannelReader.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileChannelReader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileChannelReader.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileChannelReader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileReaderImpl.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReaderImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileReaderImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReaderImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriterImpl.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriterImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriterImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriterImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelWithMeta.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWithMeta.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelWithMeta.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWithMeta.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelManager.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManager.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelManager.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManager.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelUtil.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelUtil.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileChannelUtil.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelUtil.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/IOManager.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManager.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/IOManager.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/IOManager.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/CompactIncrement.java b/paimon-core/src/main/java/org/apache/paimon/file/io/CompactIncrement.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/CompactIncrement.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/CompactIncrement.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java b/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/FileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/FileWriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/FileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/FileWriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java b/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/NewFilesIncrement.java b/paimon-core/src/main/java/org/apache/paimon/file/io/NewFilesIncrement.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/NewFilesIncrement.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/NewFilesIncrement.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java b/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/FileKind.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/FileKind.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/FileKind.java
rename to paimon-core/src/main/java/org/apache/paimon/file/manifest/FileKind.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittable.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittable.java
rename to paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java
rename to paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java
rename to paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMeta.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMeta.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMeta.java
rename to paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMeta.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java
rename to paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/Buffer.java b/paimon-core/src/main/java/org/apache/paimon/file/memory/Buffer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/memory/Buffer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/memory/Buffer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/HeapMemorySegmentPool.java b/paimon-core/src/main/java/org/apache/paimon/file/memory/HeapMemorySegmentPool.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/memory/HeapMemorySegmentPool.java
rename to paimon-core/src/main/java/org/apache/paimon/file/memory/HeapMemorySegmentPool.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemoryOwner.java b/paimon-core/src/main/java/org/apache/paimon/file/memory/MemoryOwner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemoryOwner.java
rename to paimon-core/src/main/java/org/apache/paimon/file/memory/MemoryOwner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemoryPoolFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/memory/MemoryPoolFactory.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemoryPoolFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/file/memory/MemoryPoolFactory.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java b/paimon-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java
rename to paimon-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/DataFileReader.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/DataFileReader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/DataFileReader.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/DataFileReader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/DropDeleteReader.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/DropDeleteReader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/DropDeleteReader.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/DropDeleteReader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/LevelSortedRun.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/LevelSortedRun.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/LevelSortedRun.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/LevelSortedRun.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/AbstractCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/AbstractCompactRewriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/AbstractCompactRewriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/AbstractCompactRewriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogResult.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogResult.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogResult.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogResult.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactRewriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactRewriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactRewriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactStrategy.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactStrategy.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactStrategy.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/CompactStrategy.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReader.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReader.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/DeduplicateMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/DeduplicateMergeFunction.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/DeduplicateMergeFunction.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/DeduplicateMergeFunction.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0Compaction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0Compaction.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0Compaction.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0Compaction.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapper.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupCompaction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupCompaction.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupCompaction.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupCompaction.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeFunction.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeFunction.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeFunction.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunction.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunction.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunction.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionFactory.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionFactory.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionWrapper.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionWrapper.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeFunctionWrapper.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapper.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapper.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapper.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregator.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregator.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregator.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregator.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolAndAgg.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolAndAgg.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolOrAgg.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldBoolOrAgg.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldIgnoreRetractAgg.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastNonNullValueAgg.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastValueAgg.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastValueAgg.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastValueAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldLastValueAgg.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMaxAgg.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMaxAgg.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMaxAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMaxAgg.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMinAgg.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMinAgg.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMinAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldMinAgg.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldPrimaryKeyAgg.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java
rename to paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreScan.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommit.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommit.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommit.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommit.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpire.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpire.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpire.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpire.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreRead.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreRead.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreRead.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreRead.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreScan.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/Lock.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/Lock.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/Lock.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/Lock.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/ReverseReader.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/ReverseReader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/ReverseReader.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/ReverseReader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/ScanKind.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/ScanKind.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/operation/ScanKind.java
rename to paimon-core/src/main/java/org/apache/paimon/file/operation/ScanKind.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/partition/PartitionTimeExtractor.java b/paimon-core/src/main/java/org/apache/paimon/file/partition/PartitionTimeExtractor.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/partition/PartitionTimeExtractor.java
rename to paimon-core/src/main/java/org/apache/paimon/file/partition/PartitionTimeExtractor.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java b/paimon-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
rename to paimon-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/IndexCastMapping.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/IndexCastMapping.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/schema/IndexCastMapping.java
rename to paimon-core/src/main/java/org/apache/paimon/file/schema/IndexCastMapping.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/KeyValueFieldsExtractor.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/KeyValueFieldsExtractor.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/schema/KeyValueFieldsExtractor.java
rename to paimon-core/src/main/java/org/apache/paimon/file/schema/KeyValueFieldsExtractor.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/Schema.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/Schema.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/schema/Schema.java
rename to paimon-core/src/main/java/org/apache/paimon/file/schema/Schema.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java
rename to paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java
rename to paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
rename to paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java
rename to paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SystemColumns.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/SystemColumns.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SystemColumns.java
rename to paimon-core/src/main/java/org/apache/paimon/file/schema/SystemColumns.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java
rename to paimon-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryMergeIterator.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryMergeIterator.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/BinaryMergeIterator.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryMergeIterator.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/HeapSort.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/HeapSort.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/HeapSort.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/HeapSort.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/IndexedSortable.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/IndexedSortable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/IndexedSortable.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/IndexedSortable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/IndexedSorter.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/IndexedSorter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/IndexedSorter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/IndexedSorter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/PartialOrderPriorityQueue.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/PartialOrderPriorityQueue.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/PartialOrderPriorityQueue.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/PartialOrderPriorityQueue.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/QuickSort.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/QuickSort.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/QuickSort.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/QuickSort.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java
rename to paimon-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/stats/BinaryTableStats.java b/paimon-core/src/main/java/org/apache/paimon/file/stats/BinaryTableStats.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/stats/BinaryTableStats.java
rename to paimon-core/src/main/java/org/apache/paimon/file/stats/BinaryTableStats.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java b/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java
rename to paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ExecutorThreadFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/ExecutorThreadFactory.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ExecutorThreadFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/ExecutorThreadFactory.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FatalExitExceptionHandler.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/FatalExitExceptionHandler.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FatalExitExceptionHandler.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/FatalExitExceptionHandler.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/IteratorRecordReader.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/IteratorRecordReader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/IteratorRecordReader.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/IteratorRecordReader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonDeserializer.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonDeserializer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonDeserializer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/JsonDeserializer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerializer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/JsonSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerializer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/MutableObjectIterator.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/MutableObjectIterator.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/MutableObjectIterator.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/MutableObjectIterator.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/PartitionPathUtils.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/PartitionPathUtils.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/PartitionPathUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/PartitionPathUtils.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/Restorable.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/Restorable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/Restorable.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/Restorable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SerializableSupplier.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/SerializableSupplier.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SerializableSupplier.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/SerializableSupplier.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SnapshotManager.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/SnapshotManager.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/SnapshotManager.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/SnapshotManager.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ThreadUtils.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/ThreadUtils.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/ThreadUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/ThreadUtils.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/format/FileFormatDiscover.java b/paimon-core/src/main/java/org/apache/paimon/format/FileFormatDiscover.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/format/FileFormatDiscover.java
rename to paimon-core/src/main/java/org/apache/paimon/format/FileFormatDiscover.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/format/FormatKey.java b/paimon-core/src/main/java/org/apache/paimon/format/FormatKey.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/format/FormatKey.java
rename to paimon-core/src/main/java/org/apache/paimon/format/FormatKey.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java b/paimon-core/src/main/java/org/apache/paimon/table/DataTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/DataTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/InnerTable.java b/paimon-core/src/main/java/org/apache/paimon/table/InnerTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/InnerTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/InnerTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/ReadonlyTable.java b/paimon-core/src/main/java/org/apache/paimon/table/ReadonlyTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/ReadonlyTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/ReadonlyTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/SupportsPartition.java b/paimon-core/src/main/java/org/apache/paimon/table/SupportsPartition.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/SupportsPartition.java
rename to paimon-core/src/main/java/org/apache/paimon/table/SupportsPartition.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/Table.java b/paimon-core/src/main/java/org/apache/paimon/table/Table.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/Table.java
rename to paimon-core/src/main/java/org/apache/paimon/table/Table.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/TableUtils.java b/paimon-core/src/main/java/org/apache/paimon/table/TableUtils.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/TableUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/table/TableUtils.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchTableCommit.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/BatchTableCommit.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchTableCommit.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/BatchTableCommit.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchTableWrite.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/BatchTableWrite.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchTableWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/BatchTableWrite.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilder.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilder.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilder.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilder.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilderImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilderImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilderImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/BatchWriteBuilderImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessage.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessage.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessage.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessage.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/InnerTableCommit.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableWrite.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/InnerTableWrite.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/InnerTableWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/InnerTableWrite.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SequenceGenerator.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/SequenceGenerator.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SequenceGenerator.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/SequenceGenerator.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecord.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecord.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecord.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecord.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamTableCommit.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/StreamTableCommit.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamTableCommit.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/StreamTableCommit.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamTableWrite.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/StreamTableWrite.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamTableWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/StreamTableWrite.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilder.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilder.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilder.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilder.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilderImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilderImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilderImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/StreamWriteBuilderImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommit.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommit.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommit.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommit.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommitImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/WriteBuilder.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/WriteBuilder.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/sink/WriteBuilder.java
rename to paimon-core/src/main/java/org/apache/paimon/table/sink/WriteBuilder.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/AppendOnlySplitGenerator.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScan.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataSplit.java b/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/EndOfScanException.java b/paimon-core/src/main/java/org/apache/paimon/table/source/EndOfScanException.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/EndOfScanException.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/EndOfScanException.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerStreamTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/InnerStreamTableScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerStreamTableScan.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/InnerStreamTableScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerTableRead.java b/paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableRead.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerTableRead.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableRead.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/InnerTableScan.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/InnerTableScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java b/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadBuilderImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilderImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadBuilderImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilderImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadOnceTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ReadOnceTableScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/ReadOnceTableScan.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/ReadOnceTableScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/Split.java b/paimon-core/src/main/java/org/apache/paimon/table/source/Split.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/Split.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/Split.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/SplitGenerator.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableRead.java b/paimon-core/src/main/java/org/apache/paimon/table/source/TableRead.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableRead.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/TableRead.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/TableScan.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableScan.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/TableScan.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java b/paimon-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
rename to paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/FilesTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
rename to paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/SystemTableLoader.java b/paimon-core/src/main/java/org/apache/paimon/table/system/SystemTableLoader.java
similarity index 100%
rename from flink-table-store-core/src/main/java/org/apache/paimon/table/system/SystemTableLoader.java
rename to paimon-core/src/main/java/org/apache/paimon/table/system/SystemTableLoader.java
diff --git a/flink-table-store-core/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.file.catalog.CatalogFactory b/paimon-core/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.file.catalog.CatalogFactory
similarity index 100%
rename from flink-table-store-core/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.file.catalog.CatalogFactory
rename to paimon-core/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.file.catalog.CatalogFactory
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/CoreOptionsTest.java b/paimon-core/src/test/java/org/apache/paimon/CoreOptionsTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/CoreOptionsTest.java
rename to paimon-core/src/test/java/org/apache/paimon/CoreOptionsTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/FileFormatTest.java b/paimon-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/TestFileStore.java b/paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/TestFileStore.java
rename to paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java b/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
rename to paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java b/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java b/paimon-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java b/paimon-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java b/paimon-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/disk/IOManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/disk/IOManagerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/disk/IOManagerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/disk/IOManagerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java b/paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java b/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
rename to paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java b/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java
rename to paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java b/paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
rename to paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileMetaSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileMetaSerializerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileMetaSerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/io/DataFileMetaSerializerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java b/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java
rename to paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java b/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java
rename to paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java b/paimon-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java b/paimon-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestEntrySerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestEntrySerializerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestEntrySerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestEntrySerializerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java
rename to paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/memory/MemoryPoolFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/file/memory/MemoryPoolFactoryTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/memory/MemoryPoolFactoryTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/memory/MemoryPoolFactoryTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeFunctionTestUtils.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeFunctionTestUtils.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeFunctionTestUtils.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeFunctionTestUtils.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java
rename to paimon-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/partition/PartitionTimeExtractorTest.java b/paimon-core/src/test/java/org/apache/paimon/file/partition/PartitionTimeExtractorTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/partition/PartitionTimeExtractorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/partition/PartitionTimeExtractorTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java b/paimon-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java b/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java b/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java b/paimon-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java b/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java b/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java
rename to paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java b/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java b/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java b/paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java b/paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
rename to paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java b/paimon-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java
rename to paimon-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java b/paimon-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java b/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java b/paimon-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java
rename to paimon-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java b/paimon-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java
rename to paimon-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/BlockingIterator.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/BlockingIterator.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/utils/BlockingIterator.java
rename to paimon-core/src/test/java/org/apache/paimon/file/utils/BlockingIterator.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FailingFileIO.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/FailingFileIO.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FailingFileIO.java
rename to paimon-core/src/test/java/org/apache/paimon/file/utils/FailingFileIO.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java
rename to paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ReusingTestData.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingTestData.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/utils/ReusingTestData.java
rename to paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingTestData.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/TestReusingRecordReader.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/TestReusingRecordReader.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/utils/TestReusingRecordReader.java
rename to paimon-core/src/test/java/org/apache/paimon/file/utils/TestReusingRecordReader.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java
rename to paimon-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java b/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java b/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/utils/CompatibilityTestUtils.java b/paimon-core/src/test/java/org/apache/paimon/utils/CompatibilityTestUtils.java
similarity index 100%
rename from flink-table-store-core/src/test/java/org/apache/paimon/utils/CompatibilityTestUtils.java
rename to paimon-core/src/test/java/org/apache/paimon/utils/CompatibilityTestUtils.java
diff --git a/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory b/paimon-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
similarity index 100%
rename from flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
rename to paimon-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.format.FileFormatFactory
diff --git a/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader b/paimon-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
similarity index 100%
rename from flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
rename to paimon-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
diff --git a/flink-table-store-core/src/test/resources/compatibility/table-changelog-0.2.zip b/paimon-core/src/test/resources/compatibility/table-changelog-0.2.zip
similarity index 100%
rename from flink-table-store-core/src/test/resources/compatibility/table-changelog-0.2.zip
rename to paimon-core/src/test/resources/compatibility/table-changelog-0.2.zip
diff --git a/flink-table-store-core/src/test/resources/log4j2-test.properties b/paimon-core/src/test/resources/log4j2-test.properties
similarity index 100%
rename from flink-table-store-core/src/test/resources/log4j2-test.properties
rename to paimon-core/src/test/resources/log4j2-test.properties
diff --git a/pom.xml b/pom.xml
index 30e4f1a40..d0876bed6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -56,7 +56,7 @@ under the License.
         <module>paimon-codegen</module>
         <module>paimon-codegen-loader</module>
         <module>paimon-common</module>
-        <module>flink-table-store-core</module>
+        <module>paimon-core</module>
         <module>paimon-flink</module>
         <module>paimon-docs</module>
         <module>paimon-e2e-tests</module>


[incubator-paimon] 10/32: [core] Rename paimon data, annotation and data

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 698cc35388497bcf67db32eb004e74965d957758
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 14:10:54 2023 +0800

    [core] Rename paimon data, annotation and data
---
 .../org/apache/flink/table/store/CoreOptions.java  |  4 +--
 .../flink/table/store/file/AbstractFileStore.java  |  5 ++--
 .../table/store/file/AppendOnlyFileStore.java      |  2 +-
 .../apache/flink/table/store/file/KeyValue.java    |  7 +++---
 .../flink/table/store/file/KeyValueFileStore.java  |  2 +-
 .../flink/table/store/file/KeyValueSerializer.java |  7 +++---
 .../file/append/AppendOnlyCompactManager.java      |  3 ++-
 .../table/store/file/append/AppendOnlyWriter.java  |  2 +-
 .../table/store/file/casting/CastExecutors.java    |  7 +++---
 .../table/store/file/casting/CastFieldGetter.java  |  2 +-
 .../flink/table/store/file/casting/CastedRow.java  | 13 +++++-----
 .../table/store/file/catalog/AbstractCatalog.java  |  3 ++-
 .../flink/table/store/file/catalog/Catalog.java    |  3 ++-
 .../table/store/file/catalog/CatalogFactory.java   |  3 ++-
 .../table/store/file/catalog/CatalogLock.java      |  2 +-
 .../flink/table/store/file/catalog/Identifier.java |  3 ++-
 .../table/store/file/disk/BufferFileReader.java    |  3 ++-
 .../table/store/file/disk/BufferFileWriter.java    |  3 ++-
 .../store/file/disk/ChannelReaderInputView.java    |  3 ++-
 .../file/disk/ChannelReaderInputViewIterator.java  |  5 ++--
 .../store/file/disk/ChannelWriterOutputView.java   |  3 ++-
 .../flink/table/store/file/disk/FileIOChannel.java |  3 ++-
 .../flink/table/store/file/disk/IOManager.java     |  3 ++-
 .../store/file/io/AbstractFileRecordIterator.java  |  3 ++-
 .../flink/table/store/file/io/DataFileMeta.java    |  7 +++---
 .../store/file/io/DataFileMetaSerializer.java      |  7 +++---
 .../table/store/file/io/DataFilePathFactory.java   |  3 ++-
 .../file/io/KeyValueDataFileRecordReader.java      |  2 +-
 .../store/file/io/KeyValueDataFileWriter.java      |  6 ++---
 .../store/file/io/KeyValueFileReaderFactory.java   |  2 +-
 .../store/file/io/KeyValueFileWriterFactory.java   |  4 +--
 .../table/store/file/io/RollingFileWriter.java     |  2 +-
 .../store/file/io/RowDataFileRecordReader.java     |  2 +-
 .../table/store/file/io/RowDataFileWriter.java     |  2 +-
 .../store/file/io/RowDataRollingFileWriter.java    |  2 +-
 .../table/store/file/io/SingleFileWriter.java      |  2 +-
 .../file/io/StatsCollectingSingleFileWriter.java   |  2 +-
 .../manifest/ManifestCommittableSerializer.java    |  3 ++-
 .../table/store/file/manifest/ManifestEntry.java   |  3 ++-
 .../file/manifest/ManifestEntrySerializer.java     |  5 ++--
 .../table/store/file/manifest/ManifestFile.java    |  2 +-
 .../file/manifest/ManifestFileMetaSerializer.java  |  7 +++---
 .../flink/table/store/file/memory/Buffer.java      |  3 ++-
 .../table/store/file/memory/MemorySegmentPool.java |  3 ++-
 .../flink/table/store/file/mergetree/Levels.java   |  3 ++-
 .../table/store/file/mergetree/LookupLevels.java   |  9 +++----
 .../store/file/mergetree/MergeTreeReaders.java     |  3 ++-
 .../store/file/mergetree/MergeTreeWriter.java      |  5 ++--
 .../file/mergetree/SortBufferWriteBuffer.java      | 13 +++++-----
 .../table/store/file/mergetree/SortedRun.java      |  5 ++--
 .../table/store/file/mergetree/WriteBuffer.java    |  3 ++-
 .../compact/ChangelogMergeTreeRewriter.java        |  3 ++-
 .../FullChangelogMergeTreeCompactRewriter.java     |  3 ++-
 .../file/mergetree/compact/IntervalPartition.java  |  5 ++--
 .../LookupChangelogMergeFunctionWrapper.java       |  3 ++-
 .../compact/LookupMergeTreeCompactRewriter.java    |  3 ++-
 .../mergetree/compact/MergeTreeCompactManager.java |  4 +--
 .../compact/MergeTreeCompactRewriter.java          |  3 ++-
 .../mergetree/compact/MergeTreeCompactTask.java    |  3 ++-
 .../compact/PartialUpdateMergeFunction.java        |  5 ++--
 .../file/mergetree/compact/SortMergeReader.java    |  3 ++-
 .../mergetree/compact/UniversalCompaction.java     |  2 +-
 .../mergetree/compact/ValueCountMergeFunction.java |  5 ++--
 .../compact/aggregate/AggregateMergeFunction.java  |  5 ++--
 .../compact/aggregate/FieldListaggAgg.java         |  3 ++-
 .../mergetree/compact/aggregate/FieldSumAgg.java   |  3 ++-
 .../file/operation/AbstractFileStoreScan.java      |  3 ++-
 .../file/operation/AbstractFileStoreWrite.java     |  4 +--
 .../file/operation/AppendOnlyFileStoreRead.java    |  2 +-
 .../file/operation/AppendOnlyFileStoreWrite.java   |  4 +--
 .../store/file/operation/FileStoreCommitImpl.java  |  4 +--
 .../store/file/operation/FileStoreExpireImpl.java  |  2 +-
 .../table/store/file/operation/FileStoreScan.java  |  3 ++-
 .../table/store/file/operation/FileStoreWrite.java |  3 ++-
 .../file/operation/KeyValueFileStoreRead.java      |  2 +-
 .../file/operation/KeyValueFileStoreWrite.java     |  4 +--
 .../flink/table/store/file/operation/Lock.java     |  3 ++-
 .../store/file/operation/PartitionExpire.java      |  5 ++--
 .../table/store/file/predicate/BucketSelector.java |  9 ++++---
 .../flink/table/store/file/schema/Schema.java      |  3 ++-
 .../table/store/file/schema/SchemaChange.java      |  3 ++-
 .../store/file/schema/SchemaEvolutionUtil.java     |  3 ++-
 .../table/store/file/schema/SchemaManager.java     |  3 ++-
 .../file/sort/AbstractBinaryExternalMerger.java    |  2 +-
 .../store/file/sort/BinaryExternalMerger.java      |  7 +++---
 .../store/file/sort/BinaryExternalSortBuffer.java  |  9 ++++---
 .../store/file/sort/BinaryInMemorySortBuffer.java  | 11 ++++----
 .../store/file/sort/BinaryIndexedSortable.java     | 11 ++++----
 .../flink/table/store/file/sort/SortBuffer.java    |  5 ++--
 .../table/store/file/stats/BinaryTableStats.java   | 11 ++++----
 .../file/stats/FieldStatsArraySerializer.java      |  6 ++---
 .../store/file/utils/FileStorePathFactory.java     |  5 ++--
 .../flink/table/store/file/utils/FileUtils.java    |  2 +-
 .../store/file/utils/KeyComparatorSupplier.java    |  3 ++-
 .../table/store/file/utils/ObjectSerializer.java   |  7 +++---
 .../flink/table/store/file/utils/OffsetRow.java    | 13 +++++-----
 .../store/file/utils/RowDataPartitionComputer.java |  3 ++-
 .../table/store/file/utils/SerializationUtils.java |  3 ++-
 .../file/utils/VersionedObjectSerializer.java      |  7 +++---
 .../table/store/table/AbstractFileStoreTable.java  |  3 ++-
 .../store/table/AppendOnlyFileStoreTable.java      |  3 ++-
 .../table/ChangelogValueCountFileStoreTable.java   |  5 ++--
 .../table/ChangelogWithKeyFileStoreTable.java      |  3 ++-
 .../flink/table/store/table/FileStoreTable.java    |  3 ++-
 .../org/apache/flink/table/store/table/Table.java  |  3 ++-
 .../apache/flink/table/store/table/TableUtils.java |  3 ++-
 .../table/store/table/sink/BatchTableCommit.java   |  2 +-
 .../table/store/table/sink/BatchTableWrite.java    |  2 +-
 .../table/store/table/sink/BatchWriteBuilder.java  |  4 +--
 .../table/store/table/sink/BucketComputer.java     |  5 ++--
 .../table/store/table/sink/CommitMessage.java      |  4 +--
 .../table/store/table/sink/CommitMessageImpl.java  |  3 ++-
 .../store/table/sink/CommitMessageSerializer.java  |  3 ++-
 .../table/store/table/sink/PartitionComputer.java  |  5 ++--
 .../table/store/table/sink/SequenceGenerator.java  |  3 ++-
 .../flink/table/store/table/sink/SinkRecord.java   |  5 ++--
 .../store/table/sink/SinkRecordConverter.java      |  5 ++--
 .../table/store/table/sink/StreamTableCommit.java  |  2 +-
 .../table/store/table/sink/StreamTableWrite.java   |  2 +-
 .../table/store/table/sink/StreamWriteBuilder.java |  4 +--
 .../flink/table/store/table/sink/TableCommit.java  |  3 ++-
 .../flink/table/store/table/sink/TableWrite.java   |  7 +++---
 .../table/store/table/sink/TableWriteImpl.java     |  5 ++--
 .../flink/table/store/table/sink/WriteBuilder.java |  5 ++--
 .../store/table/source/AbstractDataTableScan.java  |  3 ++-
 .../flink/table/store/table/source/DataSplit.java  |  3 ++-
 .../table/store/table/source/DataTableScan.java    |  3 ++-
 .../store/table/source/EndOfScanException.java     |  2 +-
 .../store/table/source/KeyValueTableRead.java      |  3 ++-
 .../table/source/MergeTreeSplitGenerator.java      |  3 ++-
 .../table/store/table/source/ReadBuilder.java      |  5 ++--
 .../table/source/ResetRowKindRecordIterator.java   |  3 ++-
 .../flink/table/store/table/source/Split.java      |  2 +-
 .../table/store/table/source/StreamTableScan.java  |  3 ++-
 .../flink/table/store/table/source/TableRead.java  |  5 ++--
 .../flink/table/store/table/source/TableScan.java  |  3 ++-
 .../store/table/source/TableStreamingReader.java   |  3 ++-
 .../source/ValueContentRowDataRecordIterator.java  |  3 ++-
 .../source/ValueCountRowDataRecordIterator.java    |  3 ++-
 .../table/source/snapshot/SnapshotSplitReader.java |  3 ++-
 .../source/snapshot/SnapshotSplitReaderImpl.java   |  3 ++-
 .../table/store/table/system/AuditLogTable.java    |  5 ++--
 .../table/store/table/system/BucketsTable.java     |  7 +++---
 .../flink/table/store/table/system/FilesTable.java |  6 ++---
 .../table/store/table/system/OptionsTable.java     |  7 +++---
 .../table/store/table/system/SchemasTable.java     |  7 +++---
 .../table/store/table/system/SnapshotsTable.java   |  9 ++++---
 .../flink/table/store/file/FileFormatTest.java     |  4 +--
 .../table/store/file/KeyValueSerializerTest.java   |  3 ++-
 .../flink/table/store/file/TestFileStore.java      |  4 +--
 .../table/store/file/TestKeyValueGenerator.java    | 13 +++++-----
 .../store/file/append/AppendOnlyWriterTest.java    |  8 +++---
 .../table/store/file/casting/CastExecutorTest.java |  4 +--
 .../store/file/format/FileFormatSuffixTest.java    |  4 +--
 .../store/file/format/FlushingFileFormat.java      |  2 +-
 .../store/file/io/DataFileTestDataGenerator.java   |  2 +-
 .../table/store/file/io/DataFileTestUtils.java     |  7 +++---
 .../store/file/io/KeyValueFileReadWriteTest.java   |  6 ++---
 .../table/store/file/io/RollingFileWriterTest.java |  4 +--
 .../ManifestCommittableSerializerTest.java         |  2 +-
 .../store/file/manifest/ManifestFileMetaTest.java  |  6 ++---
 .../file/manifest/ManifestTestDataGenerator.java   |  2 +-
 .../table/store/file/mergetree/LevelsTest.java     |  2 +-
 .../store/file/mergetree/LookupLevelsTest.java     |  6 ++---
 .../table/store/file/mergetree/MergeTreeTest.java  |  6 ++---
 .../mergetree/compact/IntervalPartitionTest.java   |  6 ++---
 .../LookupChangelogMergeFunctionWrapperTest.java   |  4 +--
 .../compact/MergeTreeCompactManagerTest.java       |  4 +--
 .../ReducerMergeFunctionWrapperTestBase.java       |  2 +-
 .../compact/aggregate/FieldAggregatorTest.java     |  4 +--
 .../file/operation/CleanedFileStoreExpireTest.java |  6 ++---
 .../store/file/operation/FileStoreCommitTest.java  |  2 +-
 .../file/operation/FileStoreExpireTestBase.java    |  2 +-
 .../file/operation/KeyValueFileStoreReadTest.java  |  6 ++---
 .../file/operation/KeyValueFileStoreScanTest.java  |  2 +-
 .../store/file/operation/PartitionExpireTest.java  |  4 +--
 .../store/file/operation/TestCommitThread.java     |  2 +-
 .../store/file/schema/SchemaEvolutionUtilTest.java |  4 +--
 .../file/sort/BinaryExternalSortBufferTest.java    | 10 ++++----
 .../store/file/sort/IntNormalizedKeyComputer.java  |  3 ++-
 .../table/store/file/sort/IntRecordComparator.java |  3 ++-
 .../store/file/stats/BinaryTableStatsTest.java     |  6 ++---
 .../file/stats/FieldStatsArraySerializerTest.java  |  2 +-
 .../store/file/stats/FieldStatsCollectorTest.java  |  6 ++---
 .../store/file/stats/TestFileStatsExtractor.java   |  2 +-
 .../store/file/utils/FileStorePathFactoryTest.java |  6 ++---
 .../table/store/file/utils/OffsetRowTest.java      | 22 ++++++++--------
 .../table/store/file/utils/ReusingKeyValue.java    |  5 ++--
 .../store/table/AppendOnlyFileStoreTableTest.java  |  6 ++---
 .../ChangelogWithKeyColumnTypeFileDataTest.java    |  2 +-
 .../table/ChangelogWithKeyFileStoreTableTest.java  |  8 +++---
 ...hangelogWithKeyTableColumnTypeFileMetaTest.java |  2 +-
 .../store/table/ColumnTypeFileDataTestBase.java    |  2 +-
 .../store/table/ColumnTypeFileMetaTestBase.java    |  4 +--
 .../table/store/table/FileDataFilterTestBase.java  |  2 +-
 .../table/store/table/FileStoreTableTestBase.java  | 14 +++++------
 .../store/table/SchemaEvolutionTableTestBase.java  | 10 ++++----
 .../table/store/table/SchemaEvolutionTest.java     |  6 ++---
 .../table/store/table/WritePreemptMemoryTest.java  |  2 +-
 .../store/table/sink/SinkRecordConverterTest.java  |  4 +--
 .../table/store/table/sink/TableWriteTest.java     |  4 +--
 .../source/RowDataRecordIteratorTestBase.java      |  3 ++-
 .../store/table/source/SplitGeneratorTest.java     |  2 +-
 .../ContinuousCompactorFollowUpScannerTest.java    |  2 +-
 .../table/source/snapshot/ScannerTestBase.java     |  8 +++---
 .../apache/paimon/benchmark/TableBenchmark.java    |  6 ++---
 .../table/store/file/predicate/LeafPredicate.java  |  6 ++---
 .../table/store/file/predicate/Predicate.java      |  3 +--
 .../store/file/predicate/PredicateBuilder.java     |  9 ++++---
 .../store/file/predicate/PredicateFilter.java      |  3 ++-
 .../table/store/file/predicate/StartsWith.java     |  2 +-
 .../org/apache/flink/table/store/fs/FileIO.java    |  2 +-
 .../apache/flink/table/store/fs/FileIOLoader.java  |  2 +-
 .../apache/flink/table/store/fs/FileStatus.java    |  2 +-
 .../java/org/apache/flink/table/store/fs/Path.java |  3 ++-
 .../flink/table/store/fs/PositionOutputStream.java |  2 +-
 .../flink/table/store/fs/SeekableInputStream.java  |  2 +-
 .../table/store/fs/UnsupportedSchemeException.java |  2 +-
 .../flink/table/store/fs/hadoop/HadoopFileIO.java  |  2 +-
 .../flink/table/store/io/cache/CacheManager.java   |  3 ++-
 .../store/io/cache/CachedRandomInputView.java      |  3 ++-
 .../flink/table/store/memory/MemorySegment.java    |  2 +-
 .../table/store/memory/MemorySegmentSource.java    |  2 +-
 .../table/store/memory/MemorySegmentUtils.java     | 25 ++++++++++---------
 .../flink/table/store/options/ConfigOption.java    |  3 ++-
 .../flink/table/store/options/ConfigOptions.java   |  3 ++-
 .../flink/table/store/options/MemorySize.java      |  2 +-
 .../apache/flink/table/store/options/Options.java  |  2 +-
 .../store/options/description/Description.java     |  2 +-
 .../table/store/plugin/ComponentClassLoader.java   |  3 ++-
 .../flink/table/store/reader/RecordReader.java     |  3 ++-
 .../apache/flink/table/store/types/ArrayType.java  |  3 ++-
 .../apache/flink/table/store/types/BigIntType.java |  2 +-
 .../apache/flink/table/store/types/BinaryType.java |  2 +-
 .../flink/table/store/types/BooleanType.java       |  2 +-
 .../apache/flink/table/store/types/CharType.java   |  2 +-
 .../apache/flink/table/store/types/DataField.java  |  4 +--
 .../apache/flink/table/store/types/DataType.java   |  3 ++-
 .../table/store/types/DataTypeDefaultVisitor.java  |  2 +-
 .../flink/table/store/types/DataTypeFamily.java    |  2 +-
 .../flink/table/store/types/DataTypeRoot.java      |  2 +-
 .../flink/table/store/types/DataTypeVisitor.java   |  2 +-
 .../apache/flink/table/store/types/DataTypes.java  |  2 +-
 .../apache/flink/table/store/types/DateType.java   |  2 +-
 .../flink/table/store/types/DecimalType.java       |  2 +-
 .../apache/flink/table/store/types/DoubleType.java |  2 +-
 .../apache/flink/table/store/types/FloatType.java  |  2 +-
 .../apache/flink/table/store/types/IntType.java    |  2 +-
 .../table/store/types/LocalZonedTimestampType.java |  2 +-
 .../apache/flink/table/store/types/MapType.java    |  3 ++-
 .../flink/table/store/types/MultisetType.java      |  3 ++-
 .../apache/flink/table/store/types/RowKind.java    |  2 +-
 .../apache/flink/table/store/types/RowType.java    |  3 ++-
 .../flink/table/store/types/SmallIntType.java      |  2 +-
 .../apache/flink/table/store/types/TimeType.java   |  2 +-
 .../flink/table/store/types/TimestampType.java     |  2 +-
 .../flink/table/store/types/TinyIntType.java       |  2 +-
 .../flink/table/store/types/VarBinaryType.java     |  2 +-
 .../flink/table/store/types/VarCharType.java       |  2 +-
 .../flink/table/store/utils/BinaryRowDataUtil.java |  3 ++-
 .../flink/table/store/utils/CloseableIterator.java |  2 +-
 .../flink/table/store/utils/DateTimeUtils.java     |  2 +-
 .../flink/table/store/utils/DecimalUtils.java      |  8 +++---
 .../flink/table/store/utils/KeyProjectedRow.java   | 13 +++++-----
 .../flink/table/store/utils/ProjectedRow.java      | 13 +++++-----
 .../apache/flink/table/store/utils/Projection.java |  3 ++-
 .../store/utils/RowDataToObjectArrayConverter.java |  3 ++-
 .../flink/table/store/utils/RowDataUtils.java      | 27 ++++++++++----------
 .../apache/flink/table/store/utils/SortUtil.java   |  7 +++---
 .../flink/table/store/utils/StringUtils.java       |  5 ++--
 .../apache/flink/table/store/utils/TypeUtils.java  |  7 +++---
 .../store => paimon}/annotation/ConfigGroup.java   |  2 +-
 .../store => paimon}/annotation/ConfigGroups.java  |  2 +-
 .../store => paimon}/annotation/Documentation.java |  2 +-
 .../store => paimon}/annotation/Experimental.java  |  2 +-
 .../annotation/VisibleForTesting.java              |  2 +-
 .../store => paimon}/catalog/CatalogContext.java   |  2 +-
 .../apache/paimon}/codegen/CodeGenException.scala  |  0
 .../org/apache/paimon}/codegen/CodeGenLoader.java  |  0
 .../org/apache/paimon}/codegen/CodeGenUtils.java   |  3 ++-
 .../store => paimon}/codegen/CodeGenerator.java    |  0
 .../paimon}/codegen/CodeGeneratorContext.scala     |  2 +-
 .../apache/paimon}/codegen/CodeGeneratorImpl.java  |  0
 .../paimon}/codegen/ComparatorCodeGenerator.scala  |  0
 .../store => paimon}/codegen/CompileUtils.java     |  0
 .../apache/paimon}/codegen/ExprCodeGenerator.scala |  2 +-
 .../org/apache/paimon}/codegen/GenerateUtils.scala |  2 +-
 .../store => paimon}/codegen/GeneratedClass.java   |  0
 .../paimon}/codegen/GeneratedExpression.scala      |  0
 .../codegen/NormalizedKeyComputer.java             |  3 ++-
 .../table/store => paimon}/codegen/Projection.java |  4 +--
 .../paimon}/codegen/ProjectionCodeGenerator.scala  |  2 +-
 .../store => paimon}/codegen/RecordComparator.java |  2 +-
 .../apache/paimon}/codegen/SortCodeGenerator.scala |  2 +-
 .../java/org/apache/paimon}/codegen/SortSpec.java  |  0
 .../codesplit/AddBoolBeforeReturnRewriter.java     |  0
 .../AddBooleanBeforeReturnRewriterTest.java        |  0
 .../codegen/codesplit/BlockStatementGrouper.java   |  0
 .../codesplit/BlockStatementGrouperTest.java       |  0
 .../codegen/codesplit/BlockStatementRewriter.java  |  0
 .../codesplit/BlockStatementRewriterTest.java      |  0
 .../codegen/codesplit/BlockStatementSplitter.java  |  0
 .../codesplit/BlockStatementSplitterTest.java      |  0
 .../codegen/codesplit/CodeRewriter.java            |  0
 .../codegen/codesplit/CodeRewriterTestBase.java    |  0
 .../codegen/codesplit/CodeSplitTestUtil.java       |  0
 .../codegen/codesplit/CodeSplitUtil.java           |  0
 .../codegen/codesplit/DeclarationRewriter.java     |  0
 .../codegen/codesplit/DeclarationRewriterTest.java |  0
 .../codegen/codesplit/FunctionSplitter.java        |  0
 .../codegen/codesplit/FunctionSplitterTest.java    |  0
 .../codegen/codesplit/JavaCodeSplitter.java        |  0
 .../codegen/codesplit/JavaCodeSplitterTest.java    |  0
 .../paimon}/codegen/codesplit/JavaParserTest.java  |  0
 .../codegen/codesplit/MemberFieldRewriter.java     |  0
 .../codegen/codesplit/MemberFieldRewriterTest.java |  0
 .../codegen/codesplit/ReturnAndJumpCounter.java    |  0
 .../codegen/codesplit/ReturnValueRewriter.java     |  0
 .../codegen/codesplit/ReturnValueRewriterTest.java |  0
 .../data/AbstractBinaryWriter.java                 | 11 ++++----
 .../data/AbstractPagedInputView.java               |  2 +-
 .../data/AbstractPagedOutputView.java              |  2 +-
 .../table/store => paimon}/data/BinaryArray.java   |  5 ++--
 .../store => paimon}/data/BinaryArrayWriter.java   |  2 +-
 .../table/store => paimon}/data/BinaryMap.java     |  5 ++--
 .../table/store => paimon}/data/BinaryRow.java     |  5 ++--
 .../store => paimon}/data/BinaryRowWriter.java     |  2 +-
 .../table/store => paimon}/data/BinarySection.java |  2 +-
 .../table/store => paimon}/data/BinaryString.java  |  5 ++--
 .../table/store => paimon}/data/BinaryWriter.java  | 13 +++++-----
 .../table/store => paimon}/data/DataGetters.java   |  4 +--
 .../table/store => paimon}/data/DataSetters.java   |  2 +-
 .../table/store => paimon}/data/Decimal.java       |  5 ++--
 .../table/store => paimon}/data/GenericArray.java  |  5 ++--
 .../table/store => paimon}/data/GenericMap.java    |  5 ++--
 .../table/store => paimon}/data/GenericRow.java    |  5 ++--
 .../table/store => paimon}/data/InternalArray.java |  5 ++--
 .../table/store => paimon}/data/InternalMap.java   |  5 ++--
 .../table/store => paimon}/data/InternalRow.java   |  5 ++--
 .../table/store => paimon}/data/JoinedRow.java     |  5 ++--
 .../store => paimon}/data/LazyGenericRow.java      |  2 +-
 .../table/store => paimon}/data/NestedRow.java     |  4 +--
 .../data/RandomAccessInputView.java                |  2 +-
 .../data/RandomAccessOutputView.java               |  2 +-
 .../data/SimpleCollectingOutputView.java           |  2 +-
 .../table/store => paimon}/data/Timestamp.java     |  5 ++--
 .../data/columnar/ArrayColumnVector.java           |  4 +--
 .../data/columnar/BooleanColumnVector.java         |  2 +-
 .../data/columnar/ByteColumnVector.java            |  2 +-
 .../data/columnar/BytesColumnVector.java           |  2 +-
 .../data/columnar/ColumnVector.java                |  2 +-
 .../data/columnar/ColumnarArray.java               | 18 +++++++-------
 .../data/columnar/ColumnarMap.java                 |  6 ++---
 .../data/columnar/ColumnarRow.java                 | 21 ++++++++--------
 .../data/columnar/ColumnarRowIterator.java         |  5 ++--
 .../data/columnar/DecimalColumnVector.java         |  4 +--
 .../store => paimon}/data/columnar/Dictionary.java |  4 +--
 .../data/columnar/DoubleColumnVector.java          |  2 +-
 .../data/columnar/FloatColumnVector.java           |  2 +-
 .../data/columnar/IntColumnVector.java             |  2 +-
 .../data/columnar/LongColumnVector.java            |  2 +-
 .../data/columnar/MapColumnVector.java             |  4 +--
 .../data/columnar/RowColumnVector.java             |  2 +-
 .../data/columnar/ShortColumnVector.java           |  2 +-
 .../data/columnar/TimestampColumnVector.java       |  4 +--
 .../data/columnar/VectorizedColumnBatch.java       | 16 ++++++------
 .../data/columnar/heap/AbstractHeapVector.java     |  5 ++--
 .../data/columnar/heap/HeapArrayVector.java        | 12 ++++-----
 .../data/columnar/heap/HeapBooleanVector.java      |  4 +--
 .../data/columnar/heap/HeapByteVector.java         |  4 +--
 .../data/columnar/heap/HeapBytesVector.java        |  4 +--
 .../data/columnar/heap/HeapDoubleVector.java       |  4 +--
 .../data/columnar/heap/HeapFloatVector.java        |  4 +--
 .../data/columnar/heap/HeapIntVector.java          |  4 +--
 .../data/columnar/heap/HeapLongVector.java         |  4 +--
 .../data/columnar/heap/HeapMapVector.java          | 12 ++++-----
 .../data/columnar/heap/HeapRowVector.java          | 10 ++++----
 .../data/columnar/heap/HeapShortVector.java        |  4 +--
 .../data/columnar/heap/HeapTimestampVector.java    |  6 ++---
 .../columnar/writable/AbstractWritableVector.java  |  6 ++---
 .../columnar/writable/WritableBooleanVector.java   |  4 +--
 .../data/columnar/writable/WritableByteVector.java |  4 +--
 .../columnar/writable/WritableBytesVector.java     |  4 +--
 .../columnar/writable/WritableColumnVector.java    |  6 ++---
 .../columnar/writable/WritableDoubleVector.java    |  4 +--
 .../columnar/writable/WritableFloatVector.java     |  4 +--
 .../data/columnar/writable/WritableIntVector.java  |  4 +--
 .../data/columnar/writable/WritableLongVector.java |  4 +--
 .../columnar/writable/WritableShortVector.java     |  4 +--
 .../columnar/writable/WritableTimestampVector.java |  6 ++---
 .../data/serializer/AbstractRowDataSerializer.java |  6 ++---
 .../data/serializer/BinaryRowSerializer.java       |  9 ++++---
 .../data/serializer/BinarySerializer.java          |  2 +-
 .../data/serializer/BinaryStringSerializer.java    |  5 ++--
 .../data/serializer/BooleanSerializer.java         |  2 +-
 .../data/serializer/ByteSerializer.java            |  2 +-
 .../data/serializer/DecimalSerializer.java         |  5 ++--
 .../data/serializer/DoubleSerializer.java          |  2 +-
 .../data/serializer/FloatSerializer.java           |  2 +-
 .../data/serializer/IntSerializer.java             |  2 +-
 .../data/serializer/InternalArraySerializer.java   | 17 +++++++------
 .../data/serializer/InternalMapSerializer.java     | 17 +++++++------
 .../data/serializer/InternalRowSerializer.java     | 21 ++++++++--------
 .../data/serializer/InternalSerializers.java       |  2 +-
 .../data/serializer/ListSerializer.java            |  2 +-
 .../data/serializer/LongSerializer.java            |  2 +-
 .../data/serializer/NullableSerializer.java        |  2 +-
 .../data/serializer/PagedTypeSerializer.java       |  8 +++---
 .../data/serializer/RowCompactedSerializer.java    | 29 +++++++++++-----------
 .../data/serializer/Serializer.java                |  2 +-
 .../data/serializer/SerializerSingleton.java       |  2 +-
 .../data/serializer/ShortSerializer.java           |  2 +-
 .../data/serializer/TimestampSerializer.java       |  5 ++--
 .../data/serializer/VersionedSerializer.java       |  2 +-
 .../apache/paimon/format/FieldStatsCollector.java  |  7 +++---
 .../apache/paimon/format/FormatReaderFactory.java  |  3 ++-
 .../org/apache/paimon/format/FormatWriter.java     |  2 +-
 .../store/datagen/RandomGeneratorVisitor.java      | 11 ++++----
 .../table/store/datagen/RowDataGenerator.java      |  4 +--
 .../flink/table/store/utils/RowDataUtilsTest.java  | 10 ++++----
 .../table/store => paimon}/data/BinaryRowTest.java | 22 ++++++++--------
 .../store => paimon}/data/BinaryStringTest.java    |  6 ++---
 .../store => paimon}/data/DataFormatTestUtil.java  |  2 +-
 .../table/store => paimon}/data/DecimalTest.java   |  2 +-
 .../table/store => paimon}/data/MapDataUtil.java   |  2 +-
 .../table/store => paimon}/data/NestedRowTest.java |  6 ++---
 .../table/store => paimon}/data/RowDataTest.java   |  8 +++---
 .../table/store => paimon}/data/TimestampTest.java |  2 +-
 .../data/serializer/BinarySerializerTest.java      |  2 +-
 .../serializer/BinaryStringSerializerTest.java     |  4 +--
 .../data/serializer/BooleanSerializerTest.java     |  2 +-
 .../data/serializer/ByteSerializerTest.java        |  2 +-
 .../data/serializer/DecimalSerializerTest.java     |  4 +--
 .../data/serializer/DoubleSerializerTest.java      |  2 +-
 .../data/serializer/FloatSerializerTest.java       |  2 +-
 .../data/serializer/IntSerializerTest.java         |  2 +-
 .../serializer/InternalArraySerializerTest.java    | 17 +++++++------
 .../data/serializer/InternalMapSerializerTest.java | 20 +++++++--------
 .../data/serializer/InternalRowSerializerTest.java | 20 +++++++--------
 .../data/serializer/ListSerializerTest.java        |  2 +-
 .../data/serializer/LongSerializerTest.java        |  2 +-
 .../data/serializer/NullableSerializerTest.java    |  2 +-
 .../serializer/RowCompactedSerializerTest.java     | 19 +++++++-------
 .../data/serializer/SerializerTestBase.java        |  2 +-
 .../data/serializer/SerializerTestInstance.java    |  2 +-
 .../data/serializer/ShortSerializerTest.java       |  2 +-
 .../data/serializer/TimestampSerializerTest.java   |  4 +--
 .../paimon/format/FileStatsExtractorTestBase.java  | 16 ++++++------
 .../configuration/ConfigOptionsDocGenerator.java   |  8 +++---
 .../ConfigOptionsDocGeneratorTest.java             |  6 ++---
 .../ConfigOptionsDocsCompletenessITCase.java       |  2 +-
 .../docs/configuration/data/TestCommonOptions.java |  3 ++-
 .../connector/AbstractTableStoreFactory.java       |  2 +-
 .../paimon/connector/BinaryRowTypeSerializer.java  |  5 ++--
 .../org/apache/paimon/connector/FlinkCatalog.java  |  3 ++-
 .../org/apache/paimon/connector/FlinkRowData.java  | 13 +++++-----
 .../apache/paimon/connector/FlinkRowWrapper.java   | 13 +++++-----
 .../paimon/connector/PredicateConverter.java       |  3 ++-
 .../apache/paimon/connector/RocksDBOptions.java    |  2 +-
 .../connector/VersionedSerializerWrapper.java      |  3 ++-
 .../connector/kafka/KafkaLogSinkProvider.java      |  2 +-
 .../connector/kafka/KafkaLogSourceProvider.java    |  2 +-
 .../connector/lookup/FileStoreLookupFunction.java  |  2 +-
 .../paimon/connector/lookup/LookupTable.java       |  3 ++-
 .../connector/lookup/PrimaryKeyLookupTable.java    |  5 ++--
 .../paimon/connector/lookup/RocksDBSetState.java   |  5 ++--
 .../paimon/connector/lookup/RocksDBState.java      |  4 +--
 .../connector/lookup/RocksDBStateFactory.java      |  5 ++--
 .../paimon/connector/lookup/RocksDBValueState.java |  5 ++--
 .../lookup/SecondaryIndexLookupTable.java          |  5 ++--
 .../connector/sink/BucketStreamPartitioner.java    |  2 +-
 .../sink/FullChangelogStoreSinkWrite.java          |  4 +--
 .../sink/OffsetRowDataHashStreamPartitioner.java   |  2 +-
 .../connector/sink/StoreCompactOperator.java       |  4 +--
 .../paimon/connector/sink/StoreSinkWrite.java      |  5 ++--
 .../paimon/connector/sink/StoreSinkWriteImpl.java  |  4 +--
 .../source/FileStoreSourceSplitReader.java         |  2 +-
 .../connector/BinaryRowTypeSerializerTest.java     |  3 ++-
 .../paimon/connector/PredicateConverterTest.java   |  2 +-
 .../paimon/connector/action/ActionITCaseBase.java  |  6 ++---
 .../connector/action/CompactActionITCase.java      |  2 +-
 .../connector/action/DeleteActionITCase.java       |  2 +-
 .../action/DropPartitionActionITCase.java          |  2 +-
 .../paimon/connector/kafka/KafkaLogTestUtils.java  |  4 +--
 .../paimon/connector/lookup/LookupTableTest.java   |  4 +--
 .../connector/sink/CommitterOperatorTest.java      |  2 +-
 .../connector/sink/CommitterOperatorTestBase.java  |  2 +-
 .../paimon/connector/sink/CompactorSinkITCase.java |  4 +--
 .../connector/sink/FileStoreShuffleBucketTest.java |  4 +--
 .../connector/source/CompactorSourceITCase.java    |  8 +++---
 .../source/FileStoreSourceSplitReaderTest.java     |  2 +-
 .../source/FileStoreSourceSplitSerializerTest.java |  2 +-
 .../source/TestChangelogDataReadWrite.java         |  6 ++---
 .../paimon/format/avro/AbstractAvroBulkFormat.java |  2 +-
 .../apache/paimon/format/avro/AvroFileFormat.java  |  4 +--
 .../format/avro/AvroToRowDataConverters.java       | 14 +++++------
 .../format/avro/RowDataToAvroConverters.java       | 10 ++++----
 .../apache/paimon/format/orc/OrcFileFormat.java    |  4 +--
 .../apache/paimon/format/orc/OrcReaderFactory.java | 10 ++++----
 .../apache/paimon/format/orc/OrcWriterFactory.java |  4 +--
 .../format/orc/filter/OrcFileStatsExtractor.java   |  6 ++---
 .../orc/filter/OrcPredicateFunctionVisitor.java    |  4 +--
 .../format/orc/reader/AbstractOrcColumnVector.java |  4 +--
 .../format/orc/reader/OrcArrayColumnVector.java    |  8 +++---
 .../format/orc/reader/OrcBytesColumnVector.java    |  2 +-
 .../format/orc/reader/OrcDecimalColumnVector.java  |  5 ++--
 .../format/orc/reader/OrcDoubleColumnVector.java   |  4 +--
 .../orc/reader/OrcLegacyTimestampColumnVector.java |  5 ++--
 .../format/orc/reader/OrcLongColumnVector.java     | 10 ++++----
 .../format/orc/reader/OrcMapColumnVector.java      |  8 +++---
 .../format/orc/reader/OrcRowColumnVector.java      |  8 +++---
 .../orc/reader/OrcTimestampColumnVector.java       |  5 ++--
 .../paimon/format/orc/writer/OrcBulkWriter.java    |  3 +--
 .../format/orc/writer/RowDataVectorizer.java       |  8 +++---
 .../paimon/format/parquet/ParquetFileFormat.java   |  2 +-
 .../format/parquet/ParquetFileStatsExtractor.java  |  6 ++---
 .../format/parquet/ParquetReaderFactory.java       | 12 ++++-----
 .../format/parquet/ParquetWriterFactory.java       |  2 +-
 .../parquet/reader/AbstractColumnReader.java       |  5 ++--
 .../format/parquet/reader/ArrayColumnReader.java   | 26 +++++++++----------
 .../parquet/reader/BaseVectorizedColumnReader.java |  2 +-
 .../format/parquet/reader/BooleanColumnReader.java |  5 ++--
 .../format/parquet/reader/ByteColumnReader.java    |  5 ++--
 .../format/parquet/reader/BytesColumnReader.java   |  5 ++--
 .../paimon/format/parquet/reader/ColumnReader.java |  2 +-
 .../format/parquet/reader/DoubleColumnReader.java  |  5 ++--
 .../parquet/reader/FixedLenBytesColumnReader.java  |  9 +++----
 .../format/parquet/reader/FloatColumnReader.java   |  5 ++--
 .../format/parquet/reader/IntColumnReader.java     |  3 +--
 .../format/parquet/reader/LongColumnReader.java    |  5 ++--
 .../format/parquet/reader/MapColumnReader.java     |  8 +++---
 .../parquet/reader/ParquetDataColumnReader.java    |  3 +--
 .../reader/ParquetDataColumnReaderFactory.java     |  3 +--
 .../parquet/reader/ParquetDecimalVector.java       | 13 +++++-----
 .../format/parquet/reader/ParquetDictionary.java   |  4 +--
 .../parquet/reader/ParquetSplitReaderUtil.java     | 26 +++++++++----------
 .../parquet/reader/ParquetTimestampVector.java     |  9 +++----
 .../format/parquet/reader/RowColumnReader.java     |  4 +--
 .../format/parquet/reader/RunLengthDecoder.java    |  5 ++--
 .../format/parquet/reader/ShortColumnReader.java   |  5 ++--
 .../parquet/reader/TimestampColumnReader.java      |  7 +++---
 .../format/parquet/writer/ParquetBulkWriter.java   |  3 +--
 .../parquet/writer/ParquetRowDataBuilder.java      |  2 +-
 .../parquet/writer/ParquetRowDataWriter.java       | 10 ++++----
 .../parquet/writer/RowDataParquetBuilder.java      |  2 +-
 .../apache/paimon/format/BulkFileFormatTest.java   |  4 +--
 .../paimon/format/avro/AvroBulkFormatTest.java     |  6 ++---
 .../format/avro/AvroBulkFormatTestUtils.java       |  2 +-
 .../paimon/format/orc/OrcReaderFactoryTest.java    |  2 +-
 .../paimon/format/orc/OrcWriterFactoryTest.java    |  2 +-
 .../format/parquet/ParquetReadWriteTest.java       | 14 +++++------
 .../TableStoreTimestampObjectInspector.java        |  5 ++--
 .../org/apache/paimon/hive/RowDataContainer.java   |  3 +--
 .../paimon/hive/mapred/TableStoreOutputFormat.java |  3 +--
 .../paimon/hive/mapred/TableStoreRecordReader.java |  2 +-
 .../TableStoreCharObjectInspector.java             |  3 +--
 .../TableStoreDecimalObjectInspector.java          |  3 +--
 .../TableStoreListObjectInspector.java             |  2 +-
 .../TableStoreMapObjectInspector.java              |  4 +--
 .../TableStoreRowDataObjectInspector.java          |  2 +-
 .../TableStoreStringObjectInspector.java           |  3 +--
 .../TableStoreTimestampObjectInspector.java        |  3 +--
 .../TableStoreVarcharObjectInspector.java          |  3 +--
 .../paimon/hive/RandomGenericRowDataGenerator.java | 13 +++++-----
 .../SearchArgumentToPredicateConverterTest.java    |  6 ++---
 .../hive/TableStoreHiveStorageHandlerITCase.java   |  8 +++---
 .../apache/paimon/hive/TableStoreSerDeTest.java    |  2 +-
 .../hive/mapred/TableStoreInputSplitTest.java      |  2 +-
 .../hive/mapred/TableStoreRecordReaderTest.java    |  8 +++---
 .../TableStoreCharObjectInspectorTest.java         |  3 +--
 .../TableStoreDecimalObjectInspectorTest.java      |  3 +--
 .../TableStoreListObjectInspectorTest.java         |  4 +--
 .../TableStoreMapObjectInspectorTest.java          |  4 +--
 .../TableStoreRowDataObjectInspectorTest.java      |  3 +--
 .../TableStoreStringObjectInspectorTest.java       |  3 +--
 .../TableStoreTimestampObjectInspectorTest.java    |  3 +--
 .../TableStoreVarcharObjectInspectorTest.java      |  3 +--
 .../apache/paimon/spark/SparkInputPartition.java   |  2 +-
 .../apache/paimon/spark/SimpleTableTestHelper.java |  3 ++-
 .../paimon/spark/SparkFilterConverterTest.java     |  2 +-
 .../apache/paimon/spark/SparkInternalRowTest.java  | 16 ++++++------
 .../org/apache/paimon/spark/SparkReadITCase.java   |  4 +--
 .../org/apache/paimon/spark/SparkArrayData.java    |  2 +-
 .../org/apache/paimon/spark/SparkInternalRow.java  | 17 ++++++-------
 .../apache/paimon/spark/SparkReaderFactory.java    |  2 +-
 .../java/org/apache/paimon/spark/SparkRow.java     | 12 ++++-----
 .../paimon/spark/SparkFilterConverterTest.java     |  2 +-
 .../apache/paimon/spark/SparkInternalRowTest.java  | 16 ++++++------
 .../org/apache/paimon/spark/SparkReadTestBase.java |  4 +--
 589 files changed, 1378 insertions(+), 1236 deletions(-)

diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
index bfe7e7363..2c305a2db 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
@@ -18,8 +18,6 @@
 
 package org.apache.flink.table.store;
 
-import org.apache.flink.table.store.annotation.Documentation.ExcludeFromDocumentation;
-import org.apache.flink.table.store.annotation.Documentation.Immutable;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.options.ConfigOption;
@@ -29,6 +27,8 @@ import org.apache.flink.table.store.options.description.DescribedEnum;
 import org.apache.flink.table.store.options.description.Description;
 import org.apache.flink.table.store.options.description.InlineElement;
 
+import org.apache.paimon.annotation.Documentation.ExcludeFromDocumentation;
+import org.apache.paimon.annotation.Documentation.Immutable;
 import org.apache.paimon.format.FileFormat;
 
 import java.io.Serializable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java
index e64c68124..037a3bbf1 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java
@@ -19,8 +19,6 @@
 package org.apache.flink.table.store.file;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.manifest.ManifestFile;
 import org.apache.flink.table.store.file.manifest.ManifestList;
 import org.apache.flink.table.store.file.operation.FileStoreCommitImpl;
@@ -32,6 +30,9 @@ import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.InternalRow;
+
 import java.time.Duration;
 import java.util.Comparator;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
index d27cd241c..5a25a8eef 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
@@ -19,7 +19,6 @@
 package org.apache.flink.table.store.file;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreRead;
 import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreScan;
 import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreWrite;
@@ -27,6 +26,7 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormatDiscover;
 
 import java.util.Comparator;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValue.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValue.java
index fe8ca39db..746fca6d2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValue.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValue.java
@@ -18,9 +18,6 @@
 
 package org.apache.flink.table.store.file;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.RowKind;
@@ -28,6 +25,10 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.TinyIntType;
 import org.apache.flink.table.store.utils.RowDataUtils;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
+
 import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
index 2e36b01a3..e3f17a5d4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
@@ -19,7 +19,6 @@
 package org.apache.flink.table.store.file;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionFactory;
 import org.apache.flink.table.store.file.operation.KeyValueFileStoreRead;
 import org.apache.flink.table.store.file.operation.KeyValueFileStoreScan;
@@ -30,6 +29,7 @@ import org.apache.flink.table.store.file.utils.KeyComparatorSupplier;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormatDiscover;
 
 import java.util.Comparator;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueSerializer.java
index 12af5ea80..2c94781ef 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueSerializer.java
@@ -18,14 +18,15 @@
 
 package org.apache.flink.table.store.file;
 
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.JoinedRow;
 import org.apache.flink.table.store.file.utils.ObjectSerializer;
 import org.apache.flink.table.store.file.utils.OffsetRow;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.JoinedRow;
+
 /**
  * Serializer for {@link KeyValue}.
  *
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java
index c7519a54d..61a66186f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.append;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.file.compact.CompactFutureManager;
 import org.apache.flink.table.store.file.compact.CompactResult;
 import org.apache.flink.table.store.file.compact.CompactTask;
@@ -27,6 +26,8 @@ import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Iterator;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
index 5e5ccc6f6..470b9ba6f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
@@ -19,7 +19,6 @@
 
 package org.apache.flink.table.store.file.append;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.compact.CompactManager;
 import org.apache.flink.table.store.file.io.CompactIncrement;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -34,6 +33,7 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutors.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutors.java
index 0f2ba43dd..5cce3b1af 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutors.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastExecutors.java
@@ -18,9 +18,6 @@
 
 package org.apache.flink.table.store.file.casting;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.types.BinaryType;
 import org.apache.flink.table.store.types.CharType;
 import org.apache.flink.table.store.types.DataType;
@@ -32,6 +29,10 @@ import org.apache.flink.table.store.utils.DateTimeUtils;
 import org.apache.flink.table.store.utils.DecimalUtils;
 import org.apache.flink.table.store.utils.StringUtils;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.Timestamp;
+
 import javax.annotation.Nullable;
 
 import java.util.Arrays;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastFieldGetter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastFieldGetter.java
index aaee4f047..70d0f5ee8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastFieldGetter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastFieldGetter.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.casting;
 
-import org.apache.flink.table.store.data.InternalRow;
+import org.apache.paimon.data.InternalRow;
 
 /**
  * Get field value from row with given pos and cast it according to specific {@link CastExecutor}.
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastedRow.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastedRow.java
index 8620d0eea..9c9bfee3a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastedRow.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/casting/CastedRow.java
@@ -18,14 +18,15 @@
 
 package org.apache.flink.table.store.file.casting;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
+
 import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java
index e4f48c7ed..990b1990b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.catalog;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
@@ -28,6 +27,8 @@ import org.apache.flink.table.store.table.Table;
 import org.apache.flink.table.store.table.system.SystemTableLoader;
 import org.apache.flink.table.store.utils.StringUtils;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+
 /** Common implementation of {@link Catalog}. */
 public abstract class AbstractCatalog implements Catalog {
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Catalog.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Catalog.java
index 6474d610e..cd184f99d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Catalog.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Catalog.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.file.catalog;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaChange;
 import org.apache.flink.table.store.table.Table;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.util.List;
 import java.util.Optional;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java
index 5d8cd3130..1b9147a6e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.file.catalog;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.IOException;
 import java.io.UncheckedIOException;
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogLock.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogLock.java
index bd15f7120..c4a263c54 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogLock.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogLock.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.catalog;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.io.Closeable;
 import java.io.Serializable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java
index b7b37be8d..45c053c04 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.catalog;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.utils.StringUtils;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.Serializable;
 import java.util.Objects;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileReader.java
index 5776cb432..8c4263a37 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileReader.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.disk;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.file.memory.Buffer;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.IOException;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriter.java
index 982804a7d..d938e3ac8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriter.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.disk;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.file.memory.Buffer;
 import org.apache.flink.table.store.memory.MemorySegment;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.IOException;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputView.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputView.java
index c77aa7229..9005bda1d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputView.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputView.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.file.disk;
 
-import org.apache.flink.table.store.data.AbstractPagedInputView;
 import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
 import org.apache.flink.table.store.file.compression.BlockDecompressor;
 import org.apache.flink.table.store.file.memory.Buffer;
 import org.apache.flink.table.store.memory.MemorySegment;
 
+import org.apache.paimon.data.AbstractPagedInputView;
+
 import java.io.EOFException;
 import java.io.IOException;
 import java.util.Collections;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputViewIterator.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputViewIterator.java
index dd175357c..7b6ede392 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputViewIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputViewIterator.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.file.disk;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.serializer.BinaryRowSerializer;
 import org.apache.flink.table.store.file.utils.MutableObjectIterator;
 import org.apache.flink.table.store.memory.MemorySegment;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
+
 import java.io.EOFException;
 import java.io.IOException;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWriterOutputView.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWriterOutputView.java
index 639c11836..e99d7f64c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWriterOutputView.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWriterOutputView.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.file.disk;
 
-import org.apache.flink.table.store.data.AbstractPagedOutputView;
 import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
 import org.apache.flink.table.store.file.compression.BlockCompressor;
 import org.apache.flink.table.store.file.memory.Buffer;
 import org.apache.flink.table.store.memory.MemorySegment;
 
+import org.apache.paimon.data.AbstractPagedOutputView;
+
 import java.io.IOException;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileIOChannel.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileIOChannel.java
index 557108d10..b01751310 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileIOChannel.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/FileIOChannel.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.disk;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.utils.StringUtils;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.File;
 import java.io.IOException;
 import java.nio.channels.FileChannel;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManager.java
index c3f557593..fcbbe141d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/IOManager.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.disk;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.file.disk.FileIOChannel.Enumerator;
 import org.apache.flink.table.store.file.disk.FileIOChannel.ID;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.IOException;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/AbstractFileRecordIterator.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/AbstractFileRecordIterator.java
index 7e589e1b1..e28fdcee5 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/AbstractFileRecordIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/AbstractFileRecordIterator.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.casting.CastFieldGetter;
 import org.apache.flink.table.store.file.casting.CastedRow;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.utils.ProjectedRow;
 
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMeta.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMeta.java
index 9229ae5d2..ec0fc220a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMeta.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMeta.java
@@ -19,8 +19,6 @@
 package org.apache.flink.table.store.file.io;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.flink.table.store.types.ArrayType;
@@ -30,15 +28,18 @@ import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.Timestamp;
+
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.data.BinaryRow.EMPTY_ROW;
 import static org.apache.flink.table.store.file.utils.SerializationUtils.newBytesType;
 import static org.apache.flink.table.store.file.utils.SerializationUtils.newStringType;
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.data.BinaryRow.EMPTY_ROW;
 
 /** Metadata of a data file. */
 public class DataFileMeta {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMetaSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMetaSerializer.java
index 514342c66..2483ec5b3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMetaSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFileMetaSerializer.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.utils.ObjectSerializer;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+
 import static org.apache.flink.table.store.file.utils.SerializationUtils.deserializeBinaryRow;
 import static org.apache.flink.table.store.file.utils.SerializationUtils.serializeBinaryRow;
 import static org.apache.flink.table.store.utils.RowDataUtils.fromStringArrayData;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFilePathFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFilePathFactory.java
index e11950abe..80823f5b8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFilePathFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFilePathFactory.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.fs.Path;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+
 import javax.annotation.concurrent.ThreadSafe;
 
 import java.util.UUID;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
index 3ce46bc39..4df926b72 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.KeyValueSerializer;
 import org.apache.flink.table.store.file.casting.CastFieldGetter;
@@ -28,6 +27,7 @@ import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatReaderFactory;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
index ecca7e9c3..1d8b33662 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
@@ -18,9 +18,6 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
@@ -28,6 +25,9 @@ import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatWriterFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
index aba295763..54372e74f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
@@ -31,6 +30,7 @@ import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Projection;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.format.FileFormatDiscover;
 import org.apache.paimon.format.FormatKey;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
index fb5de46a7..e30a7718d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
@@ -18,8 +18,6 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.KeyValueSerializer;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
@@ -27,6 +25,8 @@ import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatWriterFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RollingFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RollingFileWriter.java
index cb52e1ace..1a9a1a0d6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RollingFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RollingFileWriter.java
@@ -19,9 +19,9 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
index 6829c5a81..ef21007bb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
@@ -18,13 +18,13 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.casting.CastFieldGetter;
 import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatReaderFactory;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
index f016628b6..c74a3e25e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
@@ -19,7 +19,6 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.flink.table.store.fs.FileIO;
@@ -27,6 +26,7 @@ import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatWriterFactory;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
index e615611b5..289d52fb8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
@@ -19,11 +19,11 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
 
 /** {@link RollingFileWriter} for data files containing {@link InternalRow}. */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
index f2cdaa593..f81168880 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
@@ -19,12 +19,12 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.PositionOutputStream;
 import org.apache.flink.table.store.utils.IOUtils;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatWriter;
 import org.apache.paimon.format.FormatWriterFactory;
 import org.slf4j.Logger;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
index 11f2e25dd..34887cc43 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
@@ -19,12 +19,12 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FieldStatsCollector;
 import org.apache.paimon.format.FileStatsExtractor;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java
index 8a1793b9f..311d29518 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.file.manifest;
 
-import org.apache.flink.table.store.data.serializer.VersionedSerializer;
 import org.apache.flink.table.store.io.DataInputDeserializer;
 import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
 import org.apache.flink.table.store.table.sink.CommitMessage;
 import org.apache.flink.table.store.table.sink.CommitMessageSerializer;
 
+import org.apache.paimon.data.serializer.VersionedSerializer;
+
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.util.HashMap;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntry.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntry.java
index 4e2f0d8be..2f43c8b54 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntry.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntry.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.manifest;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.types.DataField;
@@ -27,6 +26,8 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.TinyIntType;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.data.BinaryRow;
+
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.LinkedHashMap;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntrySerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntrySerializer.java
index c5ca6fecd..1c1ea832a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntrySerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestEntrySerializer.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.file.manifest;
 
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
 import org.apache.flink.table.store.file.utils.VersionedObjectSerializer;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+
 import static org.apache.flink.table.store.file.utils.SerializationUtils.deserializeBinaryRow;
 import static org.apache.flink.table.store.file.utils.SerializationUtils.serializeBinaryRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
index 3fc8103e7..b307a3c01 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.manifest;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.file.io.RollingFileWriter;
 import org.apache.flink.table.store.file.io.SingleFileWriter;
 import org.apache.flink.table.store.file.schema.SchemaManager;
@@ -30,6 +29,7 @@ import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.format.FieldStatsCollector;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatReaderFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaSerializer.java
index da38554c7..12249a433 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaSerializer.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.file.manifest;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.utils.VersionedObjectSerializer;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+
 /** Serializer for {@link ManifestFileMeta}. */
 public class ManifestFileMetaSerializer extends VersionedObjectSerializer<ManifestFileMeta> {
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/Buffer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/Buffer.java
index 6393b134e..1e05d3db0 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/Buffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/Buffer.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.memory;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.memory.MemorySegment;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.nio.ByteBuffer;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemorySegmentPool.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemorySegmentPool.java
index f5a73ed01..30ddee32c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemorySegmentPool.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemorySegmentPool.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.file.memory;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentSource;
 import org.apache.flink.table.store.options.MemorySize;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.util.List;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/Levels.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/Levels.java
index 3804e29bc..9dc966f7c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/Levels.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/Levels.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.mergetree;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.HashMap;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java
index 7b7b8dbc2..f92e75a85 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java
@@ -18,9 +18,6 @@
 
 package org.apache.flink.table.store.file.mergetree;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.RowCompactedSerializer;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.io.DataOutputSerializer;
@@ -39,6 +36,10 @@ import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
 import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
 import org.apache.flink.shaded.guava30.com.google.common.cache.RemovalNotification;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.RowCompactedSerializer;
+
 import javax.annotation.Nullable;
 
 import java.io.Closeable;
@@ -51,8 +52,6 @@ import java.util.List;
 import java.util.concurrent.ExecutionException;
 import java.util.function.Supplier;
 
-import static org.apache.flink.table.store.options.ConfigOptions.key;
-
 /** Provide lookup by key. */
 public class LookupLevels implements Levels.DropFileCallback, Closeable {
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeReaders.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeReaders.java
index ef5270fd7..fa10e6620 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeReaders.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeReaders.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.mergetree;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
@@ -29,6 +28,8 @@ import org.apache.flink.table.store.file.mergetree.compact.ReducerMergeFunctionW
 import org.apache.flink.table.store.file.mergetree.compact.SortMergeReader;
 import org.apache.flink.table.store.reader.RecordReader;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Comparator;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeWriter.java
index 4111e7f8e..4cfa0cdc4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/MergeTreeWriter.java
@@ -19,8 +19,6 @@
 package org.apache.flink.table.store.file.mergetree;
 
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.compact.CompactManager;
 import org.apache.flink.table.store.file.compact.CompactResult;
@@ -37,6 +35,9 @@ import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.RecordWriter;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBuffer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBuffer.java
index d0d93b51e..2c56afaa4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortBufferWriteBuffer.java
@@ -18,15 +18,9 @@
 
 package org.apache.flink.table.store.file.mergetree;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.BinaryRowSerializer;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
-import org.apache.flink.table.store.data.serializer.InternalSerializers;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.KeyValueSerializer;
 import org.apache.flink.table.store.file.disk.IOManager;
@@ -42,6 +36,13 @@ import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.data.serializer.InternalSerializers;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortedRun.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortedRun.java
index 482e80b76..10802ab89 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortedRun.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/SortedRun.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.file.mergetree;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.InternalRow;
+
 import java.util.Collections;
 import java.util.Comparator;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/WriteBuffer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/WriteBuffer.java
index 429a55e33..a1a5bcd06 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/WriteBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/WriteBuffer.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.file.mergetree;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogMergeTreeRewriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogMergeTreeRewriter.java
index f4d4f2ed3..ece5ff705 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogMergeTreeRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ChangelogMergeTreeRewriter.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.compact.CompactResult;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -30,6 +29,8 @@ import org.apache.flink.table.store.file.mergetree.SortedRun;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Comparator;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
index 5bbe3571d..d9f20fb74 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
@@ -26,6 +25,8 @@ import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
 import org.apache.flink.table.store.file.mergetree.SortedRun;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 import java.util.Comparator;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartition.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartition.java
index ffb0e044b..8b6eb2da2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartition.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartition.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.mergetree.SortedRun;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+
 import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
index c4caeea1f..557075dec 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.util.function.Function;
 
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupMergeTreeCompactRewriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
index ce3fdbcfa..1e12b8c33 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
@@ -26,6 +25,8 @@ import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
 import org.apache.flink.table.store.file.mergetree.LookupLevels;
 import org.apache.flink.table.store.file.mergetree.SortedRun;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 import java.io.UncheckedIOException;
 import java.util.Comparator;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManager.java
index 9efc971bd..3234fb682 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManager.java
@@ -18,8 +18,6 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.compact.CompactFutureManager;
 import org.apache.flink.table.store.file.compact.CompactResult;
 import org.apache.flink.table.store.file.compact.CompactUnit;
@@ -28,6 +26,8 @@ import org.apache.flink.table.store.file.mergetree.LevelSortedRun;
 import org.apache.flink.table.store.file.mergetree.Levels;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.InternalRow;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactRewriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactRewriter.java
index cab0d846a..ffc531b9b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactRewriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactRewriter.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.compact.CompactResult;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -30,6 +29,8 @@ import org.apache.flink.table.store.file.mergetree.SortedRun;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.util.Comparator;
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactTask.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactTask.java
index 5354e1037..5b5b242e6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactTask.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactTask.java
@@ -18,13 +18,14 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.compact.CompactResult;
 import org.apache.flink.table.store.file.compact.CompactTask;
 import org.apache.flink.table.store.file.compact.CompactUnit;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.mergetree.SortedRun;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/PartialUpdateMergeFunction.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/PartialUpdateMergeFunction.java
index ca79a338b..9fed302bf 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/PartialUpdateMergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/PartialUpdateMergeFunction.java
@@ -18,13 +18,14 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.utils.Projection;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReader.java
index 12fce0c3f..4602121f8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/SortMergeReader.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/UniversalCompaction.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/UniversalCompaction.java
index 91e380ee5..b5a0a50d2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/UniversalCompaction.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/UniversalCompaction.java
@@ -18,11 +18,11 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.file.compact.CompactUnit;
 import org.apache.flink.table.store.file.mergetree.LevelSortedRun;
 import org.apache.flink.table.store.file.mergetree.SortedRun;
 
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ValueCountMergeFunction.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ValueCountMergeFunction.java
index 73117ae41..a4597057d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ValueCountMergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/ValueCountMergeFunction.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java
index 762fb6729..9f583b543 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java
@@ -18,8 +18,6 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionFactory;
@@ -28,6 +26,9 @@ import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.utils.Projection;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldListaggAgg.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldListaggAgg.java
index b58d4276f..f76a02ec2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldListaggAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldListaggAgg.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.utils.StringUtils;
 
+import org.apache.paimon.data.BinaryString;
+
 /** listagg aggregate a field of a row. */
 public class FieldListaggAgg extends FieldAggregator {
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldSumAgg.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldSumAgg.java
index 0d1e11df0..8167456c1 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldSumAgg.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldSumAgg.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.data.Decimal;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.utils.DecimalUtils;
 
+import org.apache.paimon.data.Decimal;
+
 /** sum aggregate a field of a row. */
 public class FieldSumAgg extends FieldAggregator {
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java
index df9c7f3bd..87dcf66fc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.manifest.ManifestEntry;
 import org.apache.flink.table.store.file.manifest.ManifestFile;
@@ -38,6 +37,8 @@ import org.apache.flink.table.store.utils.Filter;
 import org.apache.flink.table.store.utils.Preconditions;
 import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
 
+import org.apache.paimon.data.BinaryRow;
+
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreWrite.java
index 3a3e79a92..b9433f467 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreWrite.java
@@ -18,8 +18,6 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.disk.IOManager;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -32,6 +30,8 @@ import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.flink.table.store.table.sink.CommitMessage;
 import org.apache.flink.table.store.table.sink.CommitMessageImpl;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
index 012bbfe1c..77c7ddc0e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.flink.table.store.file.io.RowDataFileRecordReader;
@@ -36,6 +35,7 @@ import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Projection;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormatDiscover;
 import org.apache.paimon.format.FormatKey;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
index 97f19177f..7de5c9bea 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
@@ -19,8 +19,6 @@
 package org.apache.flink.table.store.file.operation;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.append.AppendOnlyCompactManager;
 import org.apache.flink.table.store.file.append.AppendOnlyWriter;
 import org.apache.flink.table.store.file.compact.CompactManager;
@@ -38,6 +36,8 @@ import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java
index 6056d708b..91ec915af 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java
@@ -18,8 +18,6 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.manifest.FileKind;
@@ -41,6 +39,8 @@ import org.apache.flink.table.store.table.sink.CommitMessageImpl;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpireImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpireImpl.java
index c79b83ebe..73b04462f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpireImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpireImpl.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.manifest.ManifestEntry;
 import org.apache.flink.table.store.file.manifest.ManifestFile;
@@ -31,6 +30,7 @@ import org.apache.flink.table.store.fs.Path;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterables;
 
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java
index cad750d03..56ce6aac7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.manifest.FileKind;
 import org.apache.flink.table.store.file.manifest.ManifestEntry;
@@ -26,6 +25,8 @@ import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.utils.Filter;
 
+import org.apache.paimon.data.BinaryRow;
+
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreWrite.java
index 1e0d3481e..caaddacf3 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreWrite.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.FileStore;
 import org.apache.flink.table.store.file.disk.IOManager;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -26,6 +25,8 @@ import org.apache.flink.table.store.file.utils.RecordWriter;
 import org.apache.flink.table.store.table.sink.CommitMessage;
 import org.apache.flink.table.store.table.sink.SinkRecord;
 
+import org.apache.paimon.data.BinaryRow;
+
 import java.util.List;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
index 1fe564220..361f5aead 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.KeyValueFileReaderFactory;
@@ -41,6 +40,7 @@ import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.ProjectedRow;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormatDiscover;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
index a5838ba5e..bf25b42b8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
@@ -20,8 +20,6 @@ package org.apache.flink.table.store.file.operation;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.compact.CompactManager;
 import org.apache.flink.table.store.file.compact.NoopCompactManager;
@@ -49,6 +47,8 @@ import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.lookup.hash.HashLookupStoreFactory;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormatDiscover;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/Lock.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/Lock.java
index e881e80dd..ae7d26ef5 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/Lock.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/Lock.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.file.catalog.CatalogLock;
 import org.apache.flink.table.store.file.catalog.Identifier;
 
+import org.apache.paimon.annotation.Experimental;
+
 import javax.annotation.Nullable;
 
 import java.io.Serializable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/PartitionExpire.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/PartitionExpire.java
index 1785de1ed..773ed9d1a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/PartitionExpire.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/PartitionExpire.java
@@ -18,14 +18,15 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.manifest.ManifestCommittable;
 import org.apache.flink.table.store.file.manifest.ManifestEntry;
 import org.apache.flink.table.store.file.partition.PartitionTimeExtractor;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
+
 import java.time.Duration;
 import java.time.LocalDateTime;
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/predicate/BucketSelector.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/predicate/BucketSelector.java
index 89344036c..8bba6c1c8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/predicate/BucketSelector.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/predicate/BucketSelector.java
@@ -18,15 +18,16 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.table.sink.BucketComputer;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableSet;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
+
 import javax.annotation.concurrent.ThreadSafe;
 
 import java.io.Serializable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/Schema.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/Schema.java
index 08cbc7edb..13b0314dd 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/Schema.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/Schema.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.file.schema;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.annotation.Experimental;
+
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaChange.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaChange.java
index 2d5083f1d..6b46d9f6a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaChange.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaChange.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.file.schema;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.annotation.Experimental;
+
 import javax.annotation.Nullable;
 
 import java.util.Arrays;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java
index 8d4799a37..b6a5e8eeb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.schema;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.casting.CastExecutor;
 import org.apache.flink.table.store.file.casting.CastExecutors;
@@ -36,6 +35,8 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.ProjectedRow;
 import org.apache.flink.table.store.utils.RowDataUtils;
 
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java
index dff6ba0f3..4b1c6e9ec 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java
@@ -19,7 +19,6 @@
 package org.apache.flink.table.store.file.schema;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.file.casting.CastExecutors;
 import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.flink.table.store.file.schema.SchemaChange.AddColumn;
@@ -42,6 +41,8 @@ import org.apache.flink.table.store.types.ReassignFieldId;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/AbstractBinaryExternalMerger.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/AbstractBinaryExternalMerger.java
index 943f61db9..ec9893ccd 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/AbstractBinaryExternalMerger.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/AbstractBinaryExternalMerger.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.sort;
 
-import org.apache.flink.table.store.data.AbstractPagedOutputView;
 import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
 import org.apache.flink.table.store.file.disk.ChannelReaderInputView;
 import org.apache.flink.table.store.file.disk.ChannelWithMeta;
@@ -28,6 +27,7 @@ import org.apache.flink.table.store.file.disk.FileIOChannel;
 import org.apache.flink.table.store.file.disk.IOManager;
 import org.apache.flink.table.store.file.utils.MutableObjectIterator;
 
+import org.apache.paimon.data.AbstractPagedOutputView;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalMerger.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalMerger.java
index fa161f8ca..24acfef80 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalMerger.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalMerger.java
@@ -19,15 +19,16 @@
 package org.apache.flink.table.store.file.sort;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.data.AbstractPagedOutputView;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.serializer.BinaryRowSerializer;
 import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
 import org.apache.flink.table.store.file.disk.ChannelReaderInputView;
 import org.apache.flink.table.store.file.disk.ChannelReaderInputViewIterator;
 import org.apache.flink.table.store.file.disk.IOManager;
 import org.apache.flink.table.store.file.utils.MutableObjectIterator;
 
+import org.apache.paimon.data.AbstractPagedOutputView;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
+
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Comparator;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBuffer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBuffer.java
index 8cb08a76c..4a87002ab 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBuffer.java
@@ -18,11 +18,7 @@
 
 package org.apache.flink.table.store.file.sort;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.BinaryRowSerializer;
 import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
 import org.apache.flink.table.store.file.compression.Lz4BlockCompressionFactory;
 import org.apache.flink.table.store.file.disk.ChannelWithMeta;
@@ -33,6 +29,11 @@ import org.apache.flink.table.store.file.disk.IOManager;
 import org.apache.flink.table.store.file.utils.MutableObjectIterator;
 import org.apache.flink.table.store.options.MemorySize;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
+
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java
index de6137e78..7e3323b38 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java
@@ -20,15 +20,16 @@ package org.apache.flink.table.store.file.sort;
 
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.SimpleCollectingOutputView;
-import org.apache.flink.table.store.data.serializer.AbstractRowDataSerializer;
-import org.apache.flink.table.store.data.serializer.BinaryRowSerializer;
 import org.apache.flink.table.store.file.memory.MemorySegmentPool;
 import org.apache.flink.table.store.file.utils.MutableObjectIterator;
 import org.apache.flink.table.store.memory.MemorySegment;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.SimpleCollectingOutputView;
+import org.apache.paimon.data.serializer.AbstractRowDataSerializer;
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
+
 import java.io.EOFException;
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryIndexedSortable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryIndexedSortable.java
index e351dcf74..6d397b5ea 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryIndexedSortable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryIndexedSortable.java
@@ -20,14 +20,15 @@ package org.apache.flink.table.store.file.sort;
 
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.data.AbstractPagedOutputView;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.RandomAccessInputView;
-import org.apache.flink.table.store.data.serializer.BinaryRowSerializer;
 import org.apache.flink.table.store.file.memory.MemorySegmentPool;
 import org.apache.flink.table.store.memory.MemorySegment;
 
+import org.apache.paimon.data.AbstractPagedOutputView;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.RandomAccessInputView;
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
+
 import java.io.IOException;
 import java.util.ArrayList;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SortBuffer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SortBuffer.java
index 96e30889d..c2315ab0f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SortBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/SortBuffer.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.sort;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.utils.MutableObjectIterator;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 
 /** Sort buffer to sort records. */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java
index e01cd8dcc..6fc066776 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/BinaryTableStats.java
@@ -18,12 +18,11 @@
 
 package org.apache.flink.table.store.file.stats;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.GenericArray;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalRow;
-
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.GenericArray;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FieldStats;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java
index ca5e58a5f..ed7550de1 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializer.java
@@ -18,9 +18,6 @@
 
 package org.apache.flink.table.store.file.stats;
 
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.casting.CastExecutor;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.BigIntType;
@@ -29,6 +26,9 @@ import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.RowDataUtils;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.format.FieldStats;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java
index ebaeae4a7..c03707740 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java
@@ -19,14 +19,15 @@
 package org.apache.flink.table.store.file.utils;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.options.ConfigOption;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
+
 import javax.annotation.concurrent.ThreadSafe;
 
 import java.util.UUID;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
index 8650d3020..cbf0e2d9f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
@@ -18,12 +18,12 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.FileStatus;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatReaderFactory;
 
 import java.io.FileNotFoundException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/KeyComparatorSupplier.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/KeyComparatorSupplier.java
index d46a1cc1e..23100bd92 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/KeyComparatorSupplier.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/KeyComparatorSupplier.java
@@ -21,9 +21,10 @@ package org.apache.flink.table.store.file.utils;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.GeneratedClass;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.util.Comparator;
 import java.util.function.Supplier;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java
index 8d0aa876e..42a5c7040 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java
@@ -18,15 +18,16 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
-import org.apache.flink.table.store.data.serializer.InternalSerializers;
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataInputViewStreamWrapper;
 import org.apache.flink.table.store.io.DataOutputView;
 import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.data.serializer.InternalSerializers;
+
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/OffsetRow.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/OffsetRow.java
index 2b712b35b..fad055fd1 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/OffsetRow.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/OffsetRow.java
@@ -18,14 +18,15 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
+
 /** A {@link InternalRow} to wrap row with offset. */
 public class OffsetRow implements InternalRow {
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RowDataPartitionComputer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RowDataPartitionComputer.java
index 171d663d1..dc7102a9c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RowDataPartitionComputer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/RowDataPartitionComputer.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.RowDataUtils;
 import org.apache.flink.table.store.utils.StringUtils;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.util.Arrays;
 import java.util.LinkedHashMap;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java
index 692047d8f..1981da240 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java
@@ -18,13 +18,14 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.types.VarBinaryType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.data.BinaryRow;
+
 import java.io.EOFException;
 import java.io.IOException;
 import java.nio.ByteBuffer;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/VersionedObjectSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/VersionedObjectSerializer.java
index e42f02c65..6a7676a8e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/VersionedObjectSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/VersionedObjectSerializer.java
@@ -18,13 +18,14 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.JoinedRow;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.JoinedRow;
+
 import java.util.ArrayList;
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AbstractFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AbstractFileStoreTable.java
index d8d1ba8eb..d5eb8250f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AbstractFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AbstractFileStoreTable.java
@@ -19,7 +19,6 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.file.FileStore;
 import org.apache.flink.table.store.file.operation.FileStoreScan;
 import org.apache.flink.table.store.file.predicate.Predicate;
@@ -39,6 +38,8 @@ import org.apache.flink.table.store.table.source.StreamDataTableScanImpl;
 import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader;
 import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReaderImpl;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+
 import java.util.Map;
 import java.util.Objects;
 import java.util.Optional;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTable.java
index c2c676906..52a253dff 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTable.java
@@ -19,7 +19,6 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.AppendOnlyFileStore;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreRead;
@@ -41,6 +40,8 @@ import org.apache.flink.table.store.table.source.SplitGenerator;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 import java.util.function.BiConsumer;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTable.java
index 3f883c275..363787fed 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTable.java
@@ -19,8 +19,6 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.KeyValueFileStore;
 import org.apache.flink.table.store.file.WriteMode;
@@ -48,6 +46,9 @@ import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+
 import java.util.Collections;
 import java.util.List;
 import java.util.function.BiConsumer;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTable.java
index 552f2f778..7bb697c78 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTable.java
@@ -20,7 +20,6 @@ package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.KeyValueFileStore;
 import org.apache.flink.table.store.file.WriteMode;
@@ -49,6 +48,8 @@ import org.apache.flink.table.store.table.source.ValueContentRowDataRecordIterat
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.util.List;
 import java.util.function.BiConsumer;
 import java.util.stream.Collectors;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTable.java
index cd498db86..572b0f86c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTable.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.table;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
@@ -26,6 +25,8 @@ import org.apache.flink.table.store.table.sink.TableCommitImpl;
 import org.apache.flink.table.store.table.sink.TableWriteImpl;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.util.List;
 import java.util.Map;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/Table.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/Table.java
index e4257fa3f..974114373 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/Table.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/Table.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.table;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.table.sink.BatchWriteBuilder;
 import org.apache.flink.table.store.table.sink.StreamWriteBuilder;
 import org.apache.flink.table.store.table.source.ReadBuilder;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.Serializable;
 import java.util.Map;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/TableUtils.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/TableUtils.java
index 94b46764a..cb84c4adc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/TableUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/TableUtils.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.table;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateFilter;
@@ -32,6 +31,8 @@ import org.apache.flink.table.store.table.source.Split;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.utils.CloseableIterator;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.util.List;
 
 /** Utils for Table. TODO we can introduce LocalAction maybe? */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableCommit.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableCommit.java
index 1a7491224..3bff2ce73 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableCommit.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableCommit.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableWrite.java
index 4820eef85..b40276c06 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchTableWrite.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchWriteBuilder.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchWriteBuilder.java
index 2a7984bd9..d90b46a0f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchWriteBuilder.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BatchWriteBuilder.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.annotation.Experimental;
-import org.apache.flink.table.store.data.InternalRow;
+import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.data.InternalRow;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BucketComputer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BucketComputer.java
index 2d376057c..6fce6a210 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BucketComputer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/BucketComputer.java
@@ -21,12 +21,13 @@ package org.apache.flink.table.store.table.sink;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+
 import java.util.stream.IntStream;
 
 /** A {@link BucketComputer} to compute bucket by bucket keys or primary keys or whole row. */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessage.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessage.java
index 12cfa4e76..c4af9c4fd 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessage.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessage.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.annotation.Experimental;
-import org.apache.flink.table.store.data.BinaryRow;
+import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.data.BinaryRow;
 
 import java.io.Serializable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageImpl.java
index 747c0898c..351413a8f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageImpl.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.io.CompactIncrement;
 import org.apache.flink.table.store.file.io.NewFilesIncrement;
 import org.apache.flink.table.store.io.DataInputViewStreamWrapper;
 import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
 
+import org.apache.paimon.data.BinaryRow;
+
 import java.io.IOException;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageSerializer.java
index 76a00bd6f..2989c5c4c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageSerializer.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.data.serializer.VersionedSerializer;
 import org.apache.flink.table.store.file.io.CompactIncrement;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
 import org.apache.flink.table.store.file.io.NewFilesIncrement;
@@ -27,6 +26,8 @@ import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
 import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
 
+import org.apache.paimon.data.serializer.VersionedSerializer;
+
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/PartitionComputer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/PartitionComputer.java
index dd611afef..c54418cd7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/PartitionComputer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/PartitionComputer.java
@@ -20,11 +20,12 @@ package org.apache.flink.table.store.table.sink;
 
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+
 /** A {@link PartitionComputer} to compute partition by partition keys. */
 public class PartitionComputer {
     private final Projection partitionProjection;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SequenceGenerator.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SequenceGenerator.java
index e2cc83a0f..32040e997 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SequenceGenerator.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SequenceGenerator.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.CharType;
 import org.apache.flink.table.store.types.DataType;
@@ -36,6 +35,8 @@ import org.apache.flink.table.store.types.TinyIntType;
 import org.apache.flink.table.store.types.VarCharType;
 import org.apache.flink.table.store.utils.RowDataUtils;
 
+import org.apache.paimon.data.InternalRow;
+
 /** Generate sequence number. */
 public class SequenceGenerator {
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecord.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecord.java
index 31016b36d..a9edb602e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecord.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecord.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
 
 /** A sink record contains key, row and partition, bucket information. */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecordConverter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecordConverter.java
index 52516d4b0..799b42c77 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecordConverter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/SinkRecordConverter.java
@@ -20,11 +20,12 @@ package org.apache.flink.table.store.table.sink;
 
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 import java.util.Arrays;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableCommit.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableCommit.java
index fab1dc34d..c788a7b95 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableCommit.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableCommit.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.List;
 import java.util.Set;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableWrite.java
index 9fe236bda..649df6f75 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamTableWrite.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamWriteBuilder.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamWriteBuilder.java
index 44bfcc141..e51911765 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamWriteBuilder.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/StreamWriteBuilder.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.annotation.Experimental;
-import org.apache.flink.table.store.data.InternalRow;
+import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.data.InternalRow;
 
 /**
  * An interface for building the {@link StreamTableWrite} and {@link StreamTableCommit}.
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableCommit.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableCommit.java
index 6e61f8b71..a8b8d4cd1 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableCommit.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableCommit.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.table.Table;
 
+import org.apache.paimon.annotation.Experimental;
+
 /**
  * Create and commit snapshots of a {@link Table}. Snapshots are produced from {@link
  * CommitMessage}s, which themselves are generated by {@link TableWrite}.
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWrite.java
index 7beea73d4..52d704338 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWrite.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.annotation.Experimental;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.disk.IOManager;
 import org.apache.flink.table.store.table.Table;
 
+import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+
 /**
  * Write of {@link Table} to provide {@link InternalRow} writing.
  *
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWriteImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWriteImpl.java
index b304d22da..58215b955 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWriteImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/TableWriteImpl.java
@@ -18,14 +18,15 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.disk.IOManager;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.operation.AbstractFileStoreWrite;
 import org.apache.flink.table.store.file.operation.FileStoreWrite;
 import org.apache.flink.table.store.file.utils.Restorable;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+
 import java.util.List;
 
 import static org.apache.flink.table.store.utils.Preconditions.checkState;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/WriteBuilder.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/WriteBuilder.java
index ea8ce8afa..a52f6401f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/WriteBuilder.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/WriteBuilder.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.annotation.Experimental;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.data.InternalRow;
+
 import java.io.Serializable;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AbstractDataTableScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AbstractDataTableScan.java
index 7b39048ba..e8c5200c0 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AbstractDataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AbstractDataTableScan.java
@@ -19,7 +19,6 @@
 package org.apache.flink.table.store.table.source;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.file.operation.FileStoreScan;
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.flink.table.store.file.predicate.Predicate;
@@ -35,6 +34,8 @@ import org.apache.flink.table.store.table.source.snapshot.StaticFromTimestampSta
 import org.apache.flink.table.store.utils.Filter;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+
 /** An abstraction layer above {@link FileStoreScan} to provide input split generation. */
 public abstract class AbstractDataTableScan implements DataTableScan {
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataSplit.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataSplit.java
index f1d37b4a4..35ba5a2c7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataSplit.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataSplit.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
 import org.apache.flink.table.store.file.utils.SerializationUtils;
@@ -27,6 +26,8 @@ import org.apache.flink.table.store.io.DataInputViewStreamWrapper;
 import org.apache.flink.table.store.io.DataOutputView;
 import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
 
+import org.apache.paimon.data.BinaryRow;
+
 import java.io.IOException;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataTableScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataTableScan.java
index 4aaf36ac7..fef0c3c1c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataTableScan.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.utils.Filter;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+
 import javax.annotation.Nullable;
 
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/EndOfScanException.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/EndOfScanException.java
index ae89b1a37..000c2e1a7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/EndOfScanException.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/EndOfScanException.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Signals that an end of scanning has been reached unexpectedly during input.
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/KeyValueTableRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/KeyValueTableRead.java
index 10270aab3..e5a5d7b4c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/KeyValueTableRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/KeyValueTableRead.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.operation.KeyValueFileStoreRead;
 import org.apache.flink.table.store.reader.RecordReader;
 
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/MergeTreeSplitGenerator.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/MergeTreeSplitGenerator.java
index 42efdd124..a20d6baef 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/MergeTreeSplitGenerator.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/MergeTreeSplitGenerator.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.mergetree.SortedRun;
 import org.apache.flink.table.store.file.mergetree.compact.IntervalPartition;
 import org.apache.flink.table.store.utils.OrderedPacking;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilder.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilder.java
index 81f7c31e3..4e347659f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilder.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilder.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.annotation.Experimental;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.data.InternalRow;
+
 import java.io.Serializable;
 import java.util.Arrays;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ResetRowKindRecordIterator.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ResetRowKindRecordIterator.java
index bc32526d8..765741286 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ResetRowKindRecordIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ResetRowKindRecordIterator.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/Split.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/Split.java
index 2ceea07a2..bf35c505e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/Split.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/Split.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.io.Serializable;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamTableScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamTableScan.java
index 9fd99f517..82ff8cd13 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/StreamTableScan.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.file.utils.Restorable;
 
+import org.apache.paimon.annotation.Experimental;
+
 /**
  * {@link TableScan} for streaming, supports {@link #checkpoint} and {@link #restore}.
  *
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableRead.java
index 8351938da..9050e6543 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableRead.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.annotation.Experimental;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
 import org.apache.flink.table.store.file.operation.FileStoreRead;
 import org.apache.flink.table.store.reader.RecordReader;
 
+import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableScan.java
index 5db5d9924..1a9f42243 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableScan.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.table.Table;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.util.List;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableStreamingReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableStreamingReader.java
index 0961b9f94..dfc3dea9b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableStreamingReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableStreamingReader.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateFilter;
@@ -30,6 +29,8 @@ import org.apache.flink.table.store.utils.TypeUtils;
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
 
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueContentRowDataRecordIterator.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueContentRowDataRecordIterator.java
index e1049ccf8..100fc287d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueContentRowDataRecordIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueContentRowDataRecordIterator.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.reader.RecordReader;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 
 /** A {@link RecordReader.RecordIterator} mapping a {@link KeyValue} to its value. */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueCountRowDataRecordIterator.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueCountRowDataRecordIterator.java
index c6af858f7..4411ee620 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueCountRowDataRecordIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ValueCountRowDataRecordIterator.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReader.java
index 9e4fa37e4..8de2c13b8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReader.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.table.source.snapshot;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.operation.ScanKind;
@@ -27,6 +26,8 @@ import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.table.source.SplitGenerator;
 import org.apache.flink.table.store.utils.Filter;
 
+import org.apache.paimon.data.BinaryRow;
+
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReaderImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReaderImpl.java
index 3a7c7b00f..4932ad098 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReaderImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReaderImpl.java
@@ -21,7 +21,6 @@ package org.apache.flink.table.store.table.source.snapshot;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.manifest.FileKind;
@@ -35,6 +34,8 @@ import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.table.source.SplitGenerator;
 import org.apache.flink.table.store.utils.Filter;
 
+import org.apache.paimon.data.BinaryRow;
+
 import java.util.ArrayList;
 import java.util.LinkedHashMap;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/AuditLogTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/AuditLogTable.java
index a58b8fc36..5711892cf 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/AuditLogTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/AuditLogTable.java
@@ -19,8 +19,6 @@
 package org.apache.flink.table.store.table.system;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.flink.table.store.file.predicate.LeafPredicate;
 import org.apache.flink.table.store.file.predicate.Predicate;
@@ -52,6 +50,9 @@ import org.apache.flink.table.store.utils.ProjectedRow;
 
 import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/BucketsTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/BucketsTable.java
index e8d385b85..80d17f765 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/BucketsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/BucketsTable.java
@@ -19,9 +19,6 @@
 package org.apache.flink.table.store.table.system;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.JoinedRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
 import org.apache.flink.table.store.file.predicate.Predicate;
@@ -46,6 +43,10 @@ import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarBinaryType;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.JoinedRow;
+
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Collections;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java
index d4109c852..e40c65c11 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java
@@ -18,9 +18,6 @@
 
 package org.apache.flink.table.store.table.system;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.LazyGenericRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.flink.table.store.file.predicate.Predicate;
@@ -51,6 +48,9 @@ import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.LazyGenericRow;
 import org.apache.paimon.format.FieldStats;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/OptionsTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/OptionsTable.java
index 68fad5aed..191bd4771 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/OptionsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/OptionsTable.java
@@ -18,9 +18,6 @@
 
 package org.apache.flink.table.store.table.system;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.IteratorRecordReader;
@@ -39,6 +36,10 @@ import org.apache.flink.table.store.utils.ProjectedRow;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 import java.util.Arrays;
 import java.util.Collections;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SchemasTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SchemasTable.java
index 26d4795a8..9d7f8bc80 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SchemasTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SchemasTable.java
@@ -18,9 +18,6 @@
 
 package org.apache.flink.table.store.table.system;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
@@ -44,6 +41,10 @@ import org.apache.flink.table.store.utils.ProjectedRow;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 import java.util.Arrays;
 import java.util.Collections;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SnapshotsTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SnapshotsTable.java
index a6d705144..adfc9fbf4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SnapshotsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SnapshotsTable.java
@@ -18,10 +18,6 @@
 
 package org.apache.flink.table.store.table.system;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.utils.IteratorRecordReader;
@@ -44,6 +40,11 @@ import org.apache.flink.table.store.utils.ProjectedRow;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
+
 import java.io.IOException;
 import java.time.Instant;
 import java.time.LocalDateTime;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
index 52fa7abf2..1cbb8e420 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
@@ -19,8 +19,6 @@
 package org.apache.flink.table.store.file;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.PositionOutputStream;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
@@ -29,6 +27,8 @@ import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatWriter;
 import org.apache.paimon.format.FormatWriterFactory;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/KeyValueSerializerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/KeyValueSerializerTest.java
index 214a782b0..df7a8ce01 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/KeyValueSerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/KeyValueSerializerTest.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file;
 
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.utils.ObjectSerializer;
 import org.apache.flink.table.store.file.utils.ObjectSerializerTestBase;
 
+import org.apache.paimon.data.serializer.InternalRowSerializer;
+
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for {@link KeyValueSerializer}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java
index 3261ee59d..9ce88730a 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java
@@ -19,8 +19,6 @@
 package org.apache.flink.table.store.file;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.manifest.ManifestCommittable;
 import org.apache.flink.table.store.file.manifest.ManifestEntry;
@@ -52,6 +50,8 @@ import org.apache.flink.table.store.table.sink.CommitMessageImpl;
 import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java
index 02bd7f1ee..8c71f9a08 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java
@@ -19,12 +19,6 @@
 package org.apache.flink.table.store.file;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericArray;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
@@ -39,6 +33,13 @@ import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericArray;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
+
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
index 61074926d..837490a7d 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
@@ -20,10 +20,6 @@
 package org.apache.flink.table.store.file.append;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
@@ -39,6 +35,10 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 import org.apache.flink.table.store.utils.Pair;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/casting/CastExecutorTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/casting/CastExecutorTest.java
index 889f55c87..95a0138d1 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/casting/CastExecutorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/casting/CastExecutorTest.java
@@ -18,8 +18,6 @@
 
 package org.apache.flink.table.store.file.casting;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.BinaryType;
 import org.apache.flink.table.store.types.CharType;
@@ -37,6 +35,8 @@ import org.apache.flink.table.store.types.VarCharType;
 import org.apache.flink.table.store.utils.DateTimeUtils;
 import org.apache.flink.table.store.utils.DecimalUtils;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Timestamp;
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
index 1675564b0..08219cd97 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
@@ -18,8 +18,6 @@
 
 package org.apache.flink.table.store.file.format;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.file.append.AppendOnlyCompactManager;
 import org.apache.flink.table.store.file.append.AppendOnlyWriter;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -35,6 +33,8 @@ import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
index 460edb144..1d9227fd6 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
@@ -18,11 +18,11 @@
 
 package org.apache.flink.table.store.file.format;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.FormatWriter;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestDataGenerator.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestDataGenerator.java
index d049a5255..c605fde79 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestDataGenerator.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestDataGenerator.java
@@ -18,11 +18,11 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.TestKeyValueGenerator;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.format.FieldStatsCollector;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestUtils.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestUtils.java
index c81832a0e..648e1afcc 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestUtils.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFileTestUtils.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryRowWriter;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.file.stats.StatsTestUtils;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.Timestamp;
+
 import java.util.Collections;
 
 /** Utils for {@link DataFileMeta}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java
index 6211a05d6..dd47a4df8 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java
@@ -19,9 +19,6 @@
 package org.apache.flink.table.store.file.io;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.KeyValueSerializerTest;
 import org.apache.flink.table.store.file.TestKeyValueGenerator;
@@ -43,6 +40,9 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 import org.apache.flink.table.store.utils.CloseableIterator;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
index 8b11236a0..47005830f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
@@ -19,8 +19,6 @@
 package org.apache.flink.table.store.file.io;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.options.Options;
@@ -29,6 +27,8 @@ import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializerTest.java
index b7c148390..ec28cd185 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializerTest.java
@@ -18,13 +18,13 @@
 
 package org.apache.flink.table.store.file.manifest;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.io.CompactIncrement;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.NewFilesIncrement;
 import org.apache.flink.table.store.table.sink.CommitMessage;
 import org.apache.flink.table.store.table.sink.CommitMessageImpl;
 
+import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
index ae5ef1de5..998fc8686 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
@@ -19,9 +19,6 @@
 package org.apache.flink.table.store.file.manifest;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryRowWriter;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.stats.StatsTestUtils;
@@ -35,6 +32,9 @@ import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.RepeatedTest;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java
index 857b98449..228a28790 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestTestDataGenerator.java
@@ -18,13 +18,13 @@
 
 package org.apache.flink.table.store.file.manifest;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.TestKeyValueGenerator;
 import org.apache.flink.table.store.file.io.DataFileTestDataGenerator;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.format.FieldStatsCollector;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LevelsTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LevelsTest.java
index ed2ad6594..cfdf5ba40 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LevelsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LevelsTest.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.file.mergetree;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java
index 39077a139..9bb6c94f2 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java
@@ -18,9 +18,6 @@
 
 package org.apache.flink.table.store.file.mergetree;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.format.FlushingFileFormat;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -42,6 +39,9 @@ import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
index faa262b11..30ab4902e 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
@@ -20,9 +20,6 @@ package org.apache.flink.table.store.file.mergetree;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.compact.CompactResult;
 import org.apache.flink.table.store.file.format.FlushingFileFormat;
@@ -56,6 +53,9 @@ import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartitionTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartitionTest.java
index 3b778b6a7..d7bb9aa8e 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartitionTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/IntervalPartitionTest.java
@@ -19,13 +19,13 @@
 package org.apache.flink.table.store.file.mergetree.compact;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryRowWriter;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.mergetree.SortedRun;
 import org.apache.flink.table.store.file.stats.StatsTestUtils;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.Timestamp;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
index c697948a2..f45d4026a 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
@@ -18,14 +18,14 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.InternalRow.FieldGetter;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.mergetree.compact.aggregate.AggregateMergeFunction;
 import org.apache.flink.table.store.file.mergetree.compact.aggregate.FieldAggregator;
 import org.apache.flink.table.store.file.mergetree.compact.aggregate.FieldSumAgg;
 import org.apache.flink.table.store.types.DataTypes;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.InternalRow.FieldGetter;
 import org.junit.jupiter.api.Test;
 
 import java.util.HashMap;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManagerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManagerTest.java
index d5c2d9c8f..f791ff0cf 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManagerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/MergeTreeCompactManagerTest.java
@@ -18,8 +18,6 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.compact.CompactResult;
 import org.apache.flink.table.store.file.compact.CompactUnit;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -27,6 +25,8 @@ import org.apache.flink.table.store.file.io.DataFileTestUtils;
 import org.apache.flink.table.store.file.mergetree.Levels;
 import org.apache.flink.table.store.file.mergetree.SortedRun;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
index f513af6d5..6b412d3c8 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
@@ -18,10 +18,10 @@
 
 package org.apache.flink.table.store.file.mergetree.compact;
 
-import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.GenericRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.params.ParameterizedTest;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregatorTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregatorTest.java
index d2fe08461..bbce72e2d 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregatorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/FieldAggregatorTest.java
@@ -18,8 +18,6 @@
 
 package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.BooleanType;
 import org.apache.flink.table.store.types.DecimalType;
@@ -30,6 +28,8 @@ import org.apache.flink.table.store.types.SmallIntType;
 import org.apache.flink.table.store.types.TinyIntType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
 import org.junit.jupiter.api.Test;
 
 import java.math.BigDecimal;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/CleanedFileStoreExpireTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/CleanedFileStoreExpireTest.java
index 6b8daee60..0d03203ce 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/CleanedFileStoreExpireTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/CleanedFileStoreExpireTest.java
@@ -18,8 +18,6 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.manifest.FileKind;
@@ -28,6 +26,8 @@ import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.Timestamp;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Test;
 
@@ -37,7 +37,7 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.concurrent.ThreadLocalRandom;
 
-import static org.apache.flink.table.store.data.BinaryRow.EMPTY_ROW;
+import static org.apache.paimon.data.BinaryRow.EMPTY_ROW;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /**
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java
index 05d920a8c..cae26f111 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java
@@ -19,7 +19,6 @@
 package org.apache.flink.table.store.file.operation;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.TestFileStore;
@@ -36,6 +35,7 @@ import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreExpireTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreExpireTestBase.java
index cb111d7fb..b83a1bcf4 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreExpireTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreExpireTestBase.java
@@ -19,7 +19,6 @@
 package org.apache.flink.table.store.file.operation;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.TestFileStore;
@@ -32,6 +31,7 @@ import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 
+import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java
index 597d380d1..a7b9a3408 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java
@@ -18,9 +18,6 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.TestFileStore;
 import org.apache.flink.table.store.file.TestKeyValueGenerator;
@@ -45,6 +42,9 @@ import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java
index eb95046f2..451be55a4 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.TestFileStore;
@@ -35,6 +34,7 @@ import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java
index 5a954f6dc..784f4ed45 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java
@@ -19,8 +19,6 @@
 package org.apache.flink.table.store.file.operation;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;
@@ -32,6 +30,8 @@ import org.apache.flink.table.store.table.sink.StreamTableWrite;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/TestCommitThread.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/TestCommitThread.java
index 232c6f7f1..84a8ce20b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/TestCommitThread.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/TestCommitThread.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.TestFileStore;
 import org.apache.flink.table.store.file.TestKeyValueGenerator;
@@ -29,6 +28,7 @@ import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.table.sink.CommitMessageImpl;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java
index 376ab80f8..49b2ff4e3 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java
@@ -18,8 +18,6 @@
 
 package org.apache.flink.table.store.file.schema;
 
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.predicate.Equal;
 import org.apache.flink.table.store.file.predicate.IsNotNull;
 import org.apache.flink.table.store.file.predicate.IsNull;
@@ -35,6 +33,8 @@ import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.utils.ProjectedRow;
 import org.apache.flink.table.store.utils.Projection;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBufferTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBufferTest.java
index f95792369..228d38e69 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBufferTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBufferTest.java
@@ -18,16 +18,16 @@
 
 package org.apache.flink.table.store.file.sort;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryRowWriter;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.serializer.AbstractRowDataSerializer;
-import org.apache.flink.table.store.data.serializer.BinaryRowSerializer;
 import org.apache.flink.table.store.file.disk.IOManager;
 import org.apache.flink.table.store.file.memory.HeapMemorySegmentPool;
 import org.apache.flink.table.store.file.memory.MemorySegmentPool;
 import org.apache.flink.table.store.file.utils.MutableObjectIterator;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.serializer.AbstractRowDataSerializer;
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java
index 18cd0b3aa..801be9263 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java
@@ -19,10 +19,11 @@
 package org.apache.flink.table.store.file.sort;
 
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.utils.SortUtil;
 
+import org.apache.paimon.data.InternalRow;
+
 /** Example for int {@link NormalizedKeyComputer}. */
 public class IntNormalizedKeyComputer implements NormalizedKeyComputer {
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntRecordComparator.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntRecordComparator.java
index 8675d2ffe..7c3da46d0 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntRecordComparator.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntRecordComparator.java
@@ -19,7 +19,8 @@
 package org.apache.flink.table.store.file.sort;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.flink.table.store.data.InternalRow;
+
+import org.apache.paimon.data.InternalRow;
 
 /** Example Int {@link RecordComparator}. */
 public class IntRecordComparator implements RecordComparator {
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java
index 924c64d97..98d52a394 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/BinaryTableStatsTest.java
@@ -18,12 +18,12 @@
 
 package org.apache.flink.table.store.file.stats;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryRowWriter;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java
index f94d710f1..495195117 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsArraySerializerTest.java
@@ -18,13 +18,13 @@
 
 package org.apache.flink.table.store.file.stats;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.casting.CastExecutor;
 import org.apache.flink.table.store.file.schema.SchemaEvolutionUtil;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.IntType;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java
index 4601a7525..bdb8508cf 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/FieldStatsCollectorTest.java
@@ -18,14 +18,14 @@
 
 package org.apache.flink.table.store.file.stats;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericArray;
-import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericArray;
+import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FieldStatsCollector;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
index d793b8ee2..6eb5c013b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
@@ -18,13 +18,13 @@
 
 package org.apache.flink.table.store.file.stats;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.flink.table.store.file.utils.ObjectSerializer;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FieldStatsCollector;
 import org.apache.paimon.format.FileFormat;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java
index 239fd6e62..9c2ca975e 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java
@@ -19,9 +19,6 @@
 package org.apache.flink.table.store.file.utils;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryRowWriter;
-import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.types.DataType;
@@ -29,6 +26,9 @@ import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.BinaryString;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/OffsetRowTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/OffsetRowTest.java
index 1c403ab1f..c54c505d8 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/OffsetRowTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/OffsetRowTest.java
@@ -17,19 +17,19 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.data.BinaryArray;
-import org.apache.flink.table.store.data.BinaryArrayWriter;
-import org.apache.flink.table.store.data.BinaryMap;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryRowWriter;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.JoinedRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.BinaryArray;
+import org.apache.paimon.data.BinaryArrayWriter;
+import org.apache.paimon.data.BinaryMap;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.JoinedRow;
+import org.apache.paimon.data.Timestamp;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingKeyValue.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingKeyValue.java
index fe1071ba4..6a30928e5 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingKeyValue.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ReusingKeyValue.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryRowWriter;
 import org.apache.flink.table.store.file.KeyValue;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+
 /**
  * Util class which reuses a {@link KeyValue} to test if other components handle reuse correctly.
  * This must be used along with {@link ReusingTestData}.
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTableTest.java
index d12b7fc99..ee3e47f97 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTableTest.java
@@ -19,9 +19,6 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.flink.table.store.file.predicate.Predicate;
@@ -38,6 +35,9 @@ import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.table.source.Split;
 import org.apache.flink.table.store.table.source.TableRead;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyColumnTypeFileDataTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyColumnTypeFileDataTest.java
index 6ab9151c2..1d8dd08dd 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyColumnTypeFileDataTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyColumnTypeFileDataTest.java
@@ -19,7 +19,6 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
@@ -27,6 +26,7 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.table.source.Split;
 
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTableTest.java
index be234f388..2260f525d 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTableTest.java
@@ -20,9 +20,6 @@ package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.flink.table.store.file.predicate.Predicate;
@@ -56,6 +53,9 @@ import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.CompatibilityTestUtils;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
@@ -66,7 +66,7 @@ import java.util.Map;
 import java.util.function.Consumer;
 import java.util.function.Function;
 
-import static org.apache.flink.table.store.data.DataFormatTestUtil.rowDataToString;
+import static org.apache.paimon.data.DataFormatTestUtil.rowDataToString;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
index 94427d158..52a7656a2 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
@@ -19,7 +19,6 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.predicate.Predicate;
@@ -29,6 +28,7 @@ import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.table.source.DataSplit;
 
+import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileDataTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileDataTestBase.java
index 1529f8974..d32a77712 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileDataTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileDataTestBase.java
@@ -19,13 +19,13 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.table.source.Split;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.utils.RowDataUtils;
 
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java
index d0993eed0..0dbe53c00 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java
@@ -19,14 +19,14 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.table.source.DataSplit;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
 import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileDataFilterTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileDataFilterTestBase.java
index c7d3973a9..a69710ada 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileDataFilterTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileDataFilterTestBase.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.table;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.operation.ScanKind;
 import org.apache.flink.table.store.file.predicate.Equal;
 import org.apache.flink.table.store.file.predicate.IsNull;
@@ -31,6 +30,7 @@ import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileStoreTableTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileStoreTableTestBase.java
index 03b5ef04b..401db85eb 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileStoreTableTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileStoreTableTestBase.java
@@ -18,13 +18,6 @@
 
 package org.apache.flink.table.store.table;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryRowWriter;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericMap;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.JoinedRow;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
@@ -52,6 +45,13 @@ import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericMap;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.JoinedRow;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTableTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTableTestBase.java
index b8fae0d98..8a603ce86 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTableTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTableTestBase.java
@@ -19,11 +19,6 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
 import org.apache.flink.table.store.file.schema.Schema;
@@ -57,6 +52,11 @@ import org.apache.flink.table.store.types.VarBinaryType;
 import org.apache.flink.table.store.types.VarCharType;
 import org.apache.flink.table.store.utils.StringUtils;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTest.java
index c965e7072..be835fac7 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTest.java
@@ -18,9 +18,6 @@
 
 package org.apache.flink.table.store.table;
 
-import org.apache.flink.table.store.data.DataFormatTestUtil;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.Schema;
@@ -38,6 +35,9 @@ import org.apache.flink.table.store.types.FloatType;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.DataFormatTestUtil;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/WritePreemptMemoryTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/WritePreemptMemoryTest.java
index 5a2634ed8..c613fb4a7 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/WritePreemptMemoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/WritePreemptMemoryTest.java
@@ -19,7 +19,6 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
@@ -33,6 +32,7 @@ import org.apache.flink.table.store.table.sink.StreamTableWrite;
 import org.apache.flink.table.store.table.source.Split;
 import org.apache.flink.table.store.table.source.TableRead;
 
+import org.apache.paimon.data.GenericRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/SinkRecordConverterTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/SinkRecordConverterTest.java
index d04fcc854..15e3845d2 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/SinkRecordConverterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/SinkRecordConverterTest.java
@@ -18,13 +18,13 @@
 
 package org.apache.flink.table.store.table.sink;
 
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/TableWriteTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/TableWriteTest.java
index c9f6cd931..13f660036 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/TableWriteTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/TableWriteTest.java
@@ -19,8 +19,6 @@
 package org.apache.flink.table.store.table.sink;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.operation.AbstractFileStoreWrite;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
@@ -39,6 +37,8 @@ import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/RowDataRecordIteratorTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/RowDataRecordIteratorTestBase.java
index fa1919b81..69357d8cf 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/RowDataRecordIteratorTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/RowDataRecordIteratorTestBase.java
@@ -18,13 +18,14 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.utils.ReusingTestData;
 import org.apache.flink.table.store.file.utils.TestReusingRecordReader;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 import java.util.List;
 import java.util.function.BiConsumer;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitGeneratorTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitGeneratorTest.java
index cb5e56c03..715f24c98 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitGeneratorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitGeneratorTest.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
index 4e3a6a9ca..0bc4f3536 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.table.source.snapshot;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
@@ -29,6 +28,7 @@ import org.apache.flink.table.store.table.source.TableRead;
 import org.apache.flink.table.store.table.system.BucketsTable;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ScannerTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ScannerTestBase.java
index 7a01eaee7..3811ba507 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ScannerTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ScannerTestBase.java
@@ -18,10 +18,6 @@
 
 package org.apache.flink.table.store.table.source.snapshot;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryRowWriter;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
@@ -42,6 +38,10 @@ import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
index 43206ace5..e9a27a159 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
@@ -20,9 +20,6 @@ package org.apache.paimon.benchmark;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.catalog.Catalog;
 import org.apache.flink.table.store.file.catalog.CatalogFactory;
 import org.apache.flink.table.store.file.catalog.Identifier;
@@ -35,6 +32,9 @@ import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.IntType;
 
 import org.apache.commons.math3.random.RandomDataGenerator;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.io.TempDir;
 
 import java.util.ArrayList;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java
index da74f71dd..83bcfb942 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java
@@ -18,13 +18,13 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.data.serializer.InternalSerializers;
-import org.apache.flink.table.store.data.serializer.ListSerializer;
-import org.apache.flink.table.store.data.serializer.NullableSerializer;
 import org.apache.flink.table.store.io.DataInputViewStreamWrapper;
 import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.data.serializer.InternalSerializers;
+import org.apache.paimon.data.serializer.ListSerializer;
+import org.apache.paimon.data.serializer.NullableSerializer;
 import org.apache.paimon.format.FieldStats;
 
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java
index 5b6d07284..b2f9a60f7 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java
@@ -18,8 +18,7 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.annotation.Experimental;
-
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.format.FieldStats;
 
 import java.io.Serializable;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateBuilder.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateBuilder.java
index 6cf7b04e5..612661c1b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateBuilder.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateBuilder.java
@@ -18,10 +18,6 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.annotation.Experimental;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DecimalType;
@@ -29,6 +25,11 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Preconditions;
 import org.apache.flink.table.store.utils.TypeUtils;
 
+import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.Timestamp;
+
 import javax.annotation.Nullable;
 
 import java.math.BigDecimal;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateFilter.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateFilter.java
index bb2f89c17..bda83761b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateFilter.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateFilter.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
 
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 import java.util.List;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java
index 476c0a77a..342d32841 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.file.predicate;
 
-import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.format.FieldStats;
 
 import java.util.List;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIO.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIO.java
index 8e2f03745..28111330c 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIO.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIO.java
@@ -18,10 +18,10 @@
 
 package org.apache.flink.table.store.fs;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 
+import org.apache.paimon.annotation.Experimental;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIOLoader.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIOLoader.java
index 1332a5832..e04d22830 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIOLoader.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIOLoader.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.fs;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Loader to load {@link FileIO}.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileStatus.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileStatus.java
index 09cc44462..1962cffb5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileStatus.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileStatus.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.fs;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Interface that represents the client side information for a file independent of the file system.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/Path.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/Path.java
index 73fca2a5d..f3c898323 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/Path.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/fs/Path.java
@@ -22,9 +22,10 @@
 
 package org.apache.flink.table.store.fs;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.utils.StringUtils;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.Serializable;
 import java.net.URI;
 import java.net.URISyntaxException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStream.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStream.java
index 76cfffe6d..ebb34a3ad 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStream.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStream.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.fs;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.io.IOException;
 import java.io.OutputStream;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStream.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStream.java
index 0e9fc875a..bf7215f67 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStream.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStream.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.fs;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.io.IOException;
 import java.io.InputStream;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/UnsupportedSchemeException.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/UnsupportedSchemeException.java
index 5bb748d7d..7119119af 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/UnsupportedSchemeException.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/fs/UnsupportedSchemeException.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.fs;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java b/paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java
index c3614dc7f..25a476e0a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.fs.hadoop;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.FileStatus;
@@ -30,6 +29,7 @@ import org.apache.flink.table.store.hadoop.SerializableConfiguration;
 import org.apache.hadoop.fs.FSDataInputStream;
 import org.apache.hadoop.fs.FSDataOutputStream;
 import org.apache.hadoop.fs.FileSystem;
+import org.apache.paimon.annotation.VisibleForTesting;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CacheManager.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CacheManager.java
index 7daeae837..bed759999 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CacheManager.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CacheManager.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.io.cache;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.options.MemorySize;
 
@@ -26,6 +25,8 @@ import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
 import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
 import org.apache.flink.shaded.guava30.com.google.common.cache.RemovalNotification;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+
 import java.io.IOException;
 import java.io.RandomAccessFile;
 import java.util.Objects;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CachedRandomInputView.java b/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CachedRandomInputView.java
index 8d8e5f2fc..2c8016d35 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CachedRandomInputView.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CachedRandomInputView.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.io.cache;
 
-import org.apache.flink.table.store.data.AbstractPagedInputView;
 import org.apache.flink.table.store.io.SeekableDataInputView;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.utils.MathUtils;
 
+import org.apache.paimon.data.AbstractPagedInputView;
+
 import java.io.Closeable;
 import java.io.EOFException;
 import java.io.File;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegment.java b/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegment.java
index a7b72980f..39dfd9f0a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegment.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegment.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.memory;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentSource.java b/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentSource.java
index 3485e8fae..805b6484f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentSource.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentSource.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.memory;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Interface describing entities that can provide memory segments.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentUtils.java
index 3f6e0c15b..4954541af 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentUtils.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentUtils.java
@@ -18,25 +18,26 @@
 
 package org.apache.flink.table.store.memory;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.BinaryArray;
-import org.apache.flink.table.store.data.BinaryMap;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.NestedRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.io.DataOutputView;
 import org.apache.flink.table.store.utils.MurmurHashUtils;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryArray;
+import org.apache.paimon.data.BinaryMap;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.NestedRow;
+import org.apache.paimon.data.Timestamp;
+
 import java.io.IOException;
 
-import static org.apache.flink.table.store.data.BinarySection.HIGHEST_FIRST_BIT;
-import static org.apache.flink.table.store.data.BinarySection.HIGHEST_SECOND_TO_EIGHTH_BIT;
 import static org.apache.flink.table.store.memory.MemorySegment.BYTE_ARRAY_BASE_OFFSET;
 import static org.apache.flink.table.store.memory.MemorySegment.LITTLE_ENDIAN;
+import static org.apache.paimon.data.BinarySection.HIGHEST_FIRST_BIT;
+import static org.apache.paimon.data.BinarySection.HIGHEST_SECOND_TO_EIGHTH_BIT;
 
 /** Utils for {@link MemorySegment}. */
 public class MemorySegmentUtils {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOption.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOption.java
index dcdd1d124..5ef84f74f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOption.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOption.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.options;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.options.description.Description;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.stream.Collectors;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOptions.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOptions.java
index 29ffee712..7c8ac3b0e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOptions.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOptions.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.options;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.options.description.Description;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.time.Duration;
 import java.util.Arrays;
 import java.util.List;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/MemorySize.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/MemorySize.java
index b906d66cb..06c065bf6 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/MemorySize.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/options/MemorySize.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.options;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.math.BigDecimal;
 import java.util.Arrays;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/Options.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/Options.java
index 19ddfff80..e4557a763 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/Options.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/options/Options.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.options;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import javax.annotation.concurrent.ThreadSafe;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/Description.java b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/Description.java
index c523722e8..7f9a02fc3 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/Description.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/options/description/Description.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.options.description;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/plugin/ComponentClassLoader.java b/paimon-common/src/main/java/org/apache/flink/table/store/plugin/ComponentClassLoader.java
index 46598f9cd..5abe5a2ae 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/plugin/ComponentClassLoader.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/plugin/ComponentClassLoader.java
@@ -17,11 +17,12 @@
 
 package org.apache.flink.table.store.plugin;
 
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.utils.FunctionWithException;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+
 import java.io.IOException;
 import java.net.URL;
 import java.net.URLClassLoader;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReader.java b/paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReader.java
index c6f09c4b2..b3c50c27e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReader.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/reader/RecordReader.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.reader;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.utils.CloseableIterator;
 
+import org.apache.paimon.annotation.Experimental;
+
 import javax.annotation.Nullable;
 
 import java.io.Closeable;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/ArrayType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/ArrayType.java
index 76e31852a..3cea3386e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/ArrayType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/ArrayType.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.utils.Preconditions;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.IOException;
 import java.util.Objects;
 import java.util.Set;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/BigIntType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/BigIntType.java
index 25c3f4475..fc766bcbb 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/BigIntType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/BigIntType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Data type of an 8-byte signed integer with values from -9,223,372,036,854,775,808 to
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/BinaryType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/BinaryType.java
index f3a5bf8d1..064f8746d 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/BinaryType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/BinaryType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.Objects;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/BooleanType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/BooleanType.java
index d9fda104d..813e9e49e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/BooleanType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/BooleanType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Data type of a boolean with a (possibly) three-valued logic of {@code TRUE, FALSE, UNKNOWN}.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/CharType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/CharType.java
index d2f78b4e3..7087e93bc 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/CharType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/CharType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.Objects;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataField.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataField.java
index c49245e73..4db6b77ef 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataField.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataField.java
@@ -18,10 +18,10 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
-
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
+import org.apache.paimon.annotation.Experimental;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataType.java
index 7dec9c1fc..63318a225 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataType.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.utils.Preconditions;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
+import org.apache.paimon.annotation.Experimental;
+
 import javax.annotation.Nonnull;
 
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeDefaultVisitor.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeDefaultVisitor.java
index 342dd616b..5e23becd2 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeDefaultVisitor.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeDefaultVisitor.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Implementation of {@link DataTypeVisitor} that redirects all calls to {@link
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeFamily.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeFamily.java
index e75cc3934..950649cbf 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeFamily.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeFamily.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * An enumeration of Data type families for clustering {@link DataTypeRoot}s into categories.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeRoot.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeRoot.java
index 2b12a6f63..6daf7fd6b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeRoot.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeRoot.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.Collections;
 import java.util.EnumSet;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeVisitor.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeVisitor.java
index 3562fecba..a1d55c937 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeVisitor.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypeVisitor.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * The visitor definition of {@link DataType}. The visitor transforms a data type into instances of
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypes.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypes.java
index df8fd8b72..0a01b0cf8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypes.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/DataTypes.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.Arrays;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DateType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DateType.java
index 644ac0b4b..50024d68f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DateType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/DateType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Data type of a date consisting of {@code year-month-day} with values ranging from {@code
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DecimalType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DecimalType.java
index 244a20b88..a88cf1f73 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DecimalType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/DecimalType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.Objects;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/DoubleType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/DoubleType.java
index fd1e9d12a..0d36b2cfd 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/DoubleType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/DoubleType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Data type of an 8-byte double precision floating point number.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/FloatType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/FloatType.java
index a518327a8..eece59a99 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/FloatType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/FloatType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Data type of a 4-byte single precision floating point number. Compared to the SQL standard, the
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/IntType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/IntType.java
index 870604891..7ffe4848a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/IntType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/IntType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Data type of a 4-byte signed integer with values from -2,147,483,648 to 2,147,483,647.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/LocalZonedTimestampType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/LocalZonedTimestampType.java
index 227c554ec..bbe7b5697 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/LocalZonedTimestampType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/LocalZonedTimestampType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.Objects;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/MapType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/MapType.java
index a3c085057..679d7d168 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/MapType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/MapType.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.utils.Preconditions;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.IOException;
 import java.util.Objects;
 import java.util.Set;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/MultisetType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/MultisetType.java
index c712b62bf..9c26e6cf9 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/MultisetType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/MultisetType.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.utils.Preconditions;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.IOException;
 import java.util.Objects;
 import java.util.Set;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/RowKind.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/RowKind.java
index 270874d7a..fddef8d1d 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/RowKind.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/RowKind.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Lists all kinds of changes that a row can describe in a changelog.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/RowType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/RowType.java
index 05e40b43b..a7365a1fa 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/RowType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/RowType.java
@@ -18,12 +18,13 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.utils.Preconditions;
 import org.apache.flink.table.store.utils.StringUtils;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Collections;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/SmallIntType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/SmallIntType.java
index a6980c677..347b7d82a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/SmallIntType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/SmallIntType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Data type of a 2-byte signed integer with values from -32,768 to 32,767.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/TimeType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/TimeType.java
index 0f6d7a7be..397a29354 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/TimeType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/TimeType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.Objects;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/TimestampType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/TimestampType.java
index 5360ea7d4..56d5999d5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/TimestampType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/TimestampType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.Objects;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/TinyIntType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/TinyIntType.java
index 83fccfde6..fd6f303c1 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/TinyIntType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/TinyIntType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Data type of a 1-byte signed integer with values from -128 to 127.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/VarBinaryType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/VarBinaryType.java
index 4b5383eb0..9f83a83aa 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/VarBinaryType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/VarBinaryType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.Objects;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/types/VarCharType.java b/paimon-common/src/main/java/org/apache/flink/table/store/types/VarCharType.java
index e56268158..ecc3c60bb 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/types/VarCharType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/types/VarCharType.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.types;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import java.util.Objects;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java
index 5e399796b..b3a983085 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.memory.MemorySegment;
 
+import org.apache.paimon.data.BinaryRow;
+
 /**
  * Utilities for {@link BinaryRow}. Many of the methods in this class are used in code generation.
  *
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/CloseableIterator.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/CloseableIterator.java
index d8dac4c6c..4ca11d895 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/CloseableIterator.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/CloseableIterator.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 import javax.annotation.Nonnull;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/DateTimeUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/DateTimeUtils.java
index 5287d1441..576b2a61a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/DateTimeUtils.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/DateTimeUtils.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.data.Timestamp;
+import org.apache.paimon.data.Timestamp;
 
 import java.time.DateTimeException;
 import java.time.LocalDate;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/DecimalUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/DecimalUtils.java
index d513aa184..a25cb6aa8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/DecimalUtils.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/DecimalUtils.java
@@ -18,14 +18,14 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
 
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 
-import static org.apache.flink.table.store.data.Decimal.fromBigDecimal;
-import static org.apache.flink.table.store.data.Decimal.fromUnscaledLong;
+import static org.apache.paimon.data.Decimal.fromBigDecimal;
+import static org.apache.paimon.data.Decimal.fromUnscaledLong;
 
 /** Utilities for {@link Decimal}. */
 public class DecimalUtils {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/KeyProjectedRow.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/KeyProjectedRow.java
index 830098d8b..723b09746 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/KeyProjectedRow.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/KeyProjectedRow.java
@@ -18,14 +18,15 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
+
 import java.util.Arrays;
 
 /** A {@link InternalRow} to project key fields with {@link RowKind#INSERT}. */
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ProjectedRow.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/ProjectedRow.java
index eae65eb7f..4b1ab88de 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/ProjectedRow.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/ProjectedRow.java
@@ -18,15 +18,16 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
+
 import java.util.Arrays;
 
 /**
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Projection.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/Projection.java
index 2d9eadadb..00eb295ab 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Projection.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/Projection.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.lang.reflect.Array;
 import java.util.ArrayList;
 import java.util.Arrays;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataToObjectArrayConverter.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataToObjectArrayConverter.java
index 843e5813e..9d913b299 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataToObjectArrayConverter.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataToObjectArrayConverter.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.util.stream.IntStream;
 
 /** Convert {@link InternalRow} to object array. */
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataUtils.java
index 8d813ab22..36a6b6e5c 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataUtils.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/RowDataUtils.java
@@ -18,19 +18,6 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.data.BinaryArray;
-import org.apache.flink.table.store.data.BinaryMap;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.GenericArray;
-import org.apache.flink.table.store.data.GenericMap;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.NestedRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypeRoot;
@@ -42,6 +29,20 @@ import org.apache.flink.table.store.types.MultisetType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.TimestampType;
 
+import org.apache.paimon.data.BinaryArray;
+import org.apache.paimon.data.BinaryMap;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.GenericArray;
+import org.apache.paimon.data.GenericMap;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.NestedRow;
+import org.apache.paimon.data.Timestamp;
+
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.util.ArrayList;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java
index 0cc9467f3..fc8467ccd 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java
@@ -18,11 +18,12 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.memory.MemorySegment;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.Timestamp;
+
 import java.nio.ByteOrder;
 
 import static org.apache.flink.table.store.memory.MemorySegment.UNSAFE;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java
index 37faa38ff..3640aff4b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
 
+import org.apache.paimon.data.BinaryString;
+
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Iterator;
@@ -29,9 +30,9 @@ import java.util.Objects;
 import java.util.Random;
 import java.util.concurrent.ThreadLocalRandom;
 
-import static org.apache.flink.table.store.data.BinaryString.fromBytes;
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
 import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.data.BinaryString.fromBytes;
 
 /**
  * Utils for {@link BinaryString} and utility class to convert objects into strings in vice-versa.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/TypeUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/TypeUtils.java
index c500b206e..040beaf33 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/TypeUtils.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/TypeUtils.java
@@ -18,9 +18,6 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypeRoot;
@@ -29,6 +26,10 @@ import org.apache.flink.table.store.types.LocalZonedTimestampType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.TimestampType;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.Timestamp;
+
 import java.math.BigDecimal;
 import java.time.DateTimeException;
 import java.util.Arrays;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroup.java b/paimon-common/src/main/java/org/apache/paimon/annotation/ConfigGroup.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroup.java
rename to paimon-common/src/main/java/org/apache/paimon/annotation/ConfigGroup.java
index 147b6cd3d..01d9f8abd 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroup.java
+++ b/paimon-common/src/main/java/org/apache/paimon/annotation/ConfigGroup.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.annotation;
+package org.apache.paimon.annotation;
 
 import java.lang.annotation.Target;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroups.java b/paimon-common/src/main/java/org/apache/paimon/annotation/ConfigGroups.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroups.java
rename to paimon-common/src/main/java/org/apache/paimon/annotation/ConfigGroups.java
index 0fc6f73c3..a8ac0a31e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/annotation/ConfigGroups.java
+++ b/paimon-common/src/main/java/org/apache/paimon/annotation/ConfigGroups.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.annotation;
+package org.apache.paimon.annotation;
 
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/annotation/Documentation.java b/paimon-common/src/main/java/org/apache/paimon/annotation/Documentation.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/annotation/Documentation.java
rename to paimon-common/src/main/java/org/apache/paimon/annotation/Documentation.java
index 99a8eeecd..8cdd96709 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/annotation/Documentation.java
+++ b/paimon-common/src/main/java/org/apache/paimon/annotation/Documentation.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.annotation;
+package org.apache.paimon.annotation;
 
 import org.apache.flink.table.store.options.ConfigOption;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/annotation/Experimental.java b/paimon-common/src/main/java/org/apache/paimon/annotation/Experimental.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/annotation/Experimental.java
rename to paimon-common/src/main/java/org/apache/paimon/annotation/Experimental.java
index f117987cf..401317cea 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/annotation/Experimental.java
+++ b/paimon-common/src/main/java/org/apache/paimon/annotation/Experimental.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.annotation;
+package org.apache.paimon.annotation;
 
 import java.lang.annotation.Documented;
 import java.lang.annotation.ElementType;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/annotation/VisibleForTesting.java b/paimon-common/src/main/java/org/apache/paimon/annotation/VisibleForTesting.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/annotation/VisibleForTesting.java
rename to paimon-common/src/main/java/org/apache/paimon/annotation/VisibleForTesting.java
index ff5a0d983..29d1f76dc 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/annotation/VisibleForTesting.java
+++ b/paimon-common/src/main/java/org/apache/paimon/annotation/VisibleForTesting.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.annotation;
+package org.apache.paimon.annotation;
 
 import java.lang.annotation.Documented;
 import java.lang.annotation.ElementType;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/catalog/CatalogContext.java b/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/catalog/CatalogContext.java
rename to paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
index 35c5e1434..6a83d793f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/catalog/CatalogContext.java
+++ b/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
@@ -18,7 +18,6 @@
 
 package org.apache.flink.table.store.catalog;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.fs.FileIOLoader;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.hadoop.HadoopFileIOLoader;
@@ -26,6 +25,7 @@ import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.utils.HadoopUtils;
 
 import org.apache.hadoop.conf.Configuration;
+import org.apache.paimon.annotation.Experimental;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/CodeGenException.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenException.scala
similarity index 100%
rename from paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/CodeGenException.scala
rename to paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenException.scala
diff --git a/paimon-codegen-loader/src/main/java/org/apache/flink/table/store/codegen/CodeGenLoader.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
similarity index 100%
rename from paimon-codegen-loader/src/main/java/org/apache/flink/table/store/codegen/CodeGenLoader.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/codegen/CodeGenUtils.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
similarity index 97%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/codegen/CodeGenUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
index f867a859c..f7b1dcd3c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/codegen/CodeGenUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
@@ -18,10 +18,11 @@
 
 package org.apache.flink.table.store.codegen;
 
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+
 import java.util.List;
 
 /** Utils for code generations. */
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/CodeGenerator.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenerator.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/CodeGenerator.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenerator.java
diff --git a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/CodeGeneratorContext.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala
similarity index 98%
rename from paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/CodeGeneratorContext.scala
rename to paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala
index 0819ceefe..bb4c920fe 100644
--- a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/CodeGeneratorContext.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala
@@ -17,7 +17,7 @@
  */
 package org.apache.flink.table.store.codegen
 
-import org.apache.flink.table.store.data.serializer.InternalSerializers
+import org.apache.paimon.data.serializer.InternalSerializers
 import org.apache.flink.table.store.types.DataType
 import org.apache.flink.table.store.utils.InstantiationUtil
 
diff --git a/paimon-codegen/src/main/java/org/apache/flink/table/store/codegen/CodeGeneratorImpl.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java
similarity index 100%
rename from paimon-codegen/src/main/java/org/apache/flink/table/store/codegen/CodeGeneratorImpl.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java
diff --git a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ComparatorCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
similarity index 100%
rename from paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ComparatorCodeGenerator.scala
rename to paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/CompileUtils.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CompileUtils.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/CompileUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/CompileUtils.java
diff --git a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ExprCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala
similarity index 98%
rename from paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ExprCodeGenerator.scala
rename to paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala
index 9d41244ad..a89327fe4 100644
--- a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ExprCodeGenerator.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala
@@ -17,7 +17,7 @@
  */
 package org.apache.flink.table.store.codegen
 
-import org.apache.flink.table.store.data.{BinaryRow, InternalRow}
+import org.apache.paimon.data.{BinaryRow, InternalRow}
 import org.apache.flink.table.store.types.{RowType, TimestampType}
 import org.apache.flink.table.store.utils.TypeUtils.isInteroperable
 
diff --git a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/GenerateUtils.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
similarity index 99%
rename from paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/GenerateUtils.scala
rename to paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
index e08206ce5..76110a744 100644
--- a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/GenerateUtils.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
@@ -17,7 +17,7 @@
  */
 package org.apache.flink.table.store.codegen
 
-import org.apache.flink.table.store.data._
+import org.apache.paimon.data._
 import org.apache.flink.table.store.memory.MemorySegment
 import org.apache.flink.table.store.types._
 import org.apache.flink.table.store.types.DataTypeChecks.{getFieldCount, getFieldTypes, getPrecision, getScale}
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/GeneratedClass.java b/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedClass.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/GeneratedClass.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedClass.java
diff --git a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/GeneratedExpression.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedExpression.scala
similarity index 100%
rename from paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/GeneratedExpression.scala
rename to paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedExpression.scala
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/NormalizedKeyComputer.java b/paimon-common/src/main/java/org/apache/paimon/codegen/NormalizedKeyComputer.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/NormalizedKeyComputer.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/NormalizedKeyComputer.java
index 071669530..3d6d55767 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/NormalizedKeyComputer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/NormalizedKeyComputer.java
@@ -18,9 +18,10 @@
 
 package org.apache.flink.table.store.codegen;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.memory.MemorySegment;
 
+import org.apache.paimon.data.InternalRow;
+
 /**
  * Normalized key computer for {@code SortBuffer}. For performance, subclasses are usually
  * implemented through CodeGenerator. Copied from Flink.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/Projection.java b/paimon-common/src/main/java/org/apache/paimon/codegen/Projection.java
similarity index 90%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/Projection.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/Projection.java
index 1f88d8e21..91c2ef28e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/Projection.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/Projection.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.codegen;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 
 /**
  * Interface for code generated projection, which will map a RowData to another BinaryRowData.
diff --git a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ProjectionCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
similarity index 98%
rename from paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ProjectionCodeGenerator.scala
rename to paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
index 328007a27..31538ea27 100644
--- a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/ProjectionCodeGenerator.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
@@ -18,7 +18,7 @@
 package org.apache.flink.table.store.codegen
 
 import org.apache.flink.table.store.codegen.GenerateUtils.{generateRecordStatement, newName, DEFAULT_INPUT1_TERM, DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM, ROW_DATA}
-import org.apache.flink.table.store.data.{BinaryRow, InternalRow}
+import org.apache.paimon.data.{BinaryRow, InternalRow}
 import org.apache.flink.table.store.types.RowType
 
 import GeneratedExpression.{NEVER_NULL, NO_CODE}
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/RecordComparator.java b/paimon-common/src/main/java/org/apache/paimon/codegen/RecordComparator.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/RecordComparator.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/RecordComparator.java
index ad2621871..b4a3a62c7 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/RecordComparator.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/RecordComparator.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.codegen;
 
-import org.apache.flink.table.store.data.InternalRow;
+import org.apache.paimon.data.InternalRow;
 
 import java.io.Serializable;
 import java.util.Comparator;
diff --git a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/SortCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala
similarity index 99%
rename from paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/SortCodeGenerator.scala
rename to paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala
index 144bb14af..810dda0fe 100644
--- a/paimon-codegen/src/main/scala/org/apache/flink/table/store/codegen/SortCodeGenerator.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala
@@ -18,7 +18,7 @@
 package org.apache.flink.table.store.codegen
 
 import org.apache.flink.table.store.codegen.GenerateUtils.{newName, ROW_DATA, SEGMENT}
-import org.apache.flink.table.store.data.{BinaryRow, Decimal, Timestamp}
+import org.apache.paimon.data.{BinaryRow, Decimal, Timestamp}
 import org.apache.flink.table.store.types.{DataType, DecimalType, RowType, TimestampType}
 import org.apache.flink.table.store.types.DataTypeRoot._
 import org.apache.flink.table.store.utils.{SortUtil, TypeUtils}
diff --git a/paimon-codegen/src/main/java/org/apache/flink/table/store/codegen/SortSpec.java b/paimon-common/src/main/java/org/apache/paimon/codegen/SortSpec.java
similarity index 100%
rename from paimon-codegen/src/main/java/org/apache/flink/table/store/codegen/SortSpec.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/SortSpec.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/AddBoolBeforeReturnRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBoolBeforeReturnRewriter.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/AddBoolBeforeReturnRewriter.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBoolBeforeReturnRewriter.java
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
similarity index 100%
rename from paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouper.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouper.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouper.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouper.java
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouperTest.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouperTest.java
similarity index 100%
rename from paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementGrouperTest.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouperTest.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriter.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriter.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriter.java
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriterTest.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriterTest.java
similarity index 100%
rename from paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementRewriterTest.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriterTest.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitter.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitter.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitter.java
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitterTest.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitterTest.java
similarity index 100%
rename from paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/BlockStatementSplitterTest.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitterTest.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriter.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriter.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriter.java
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriterTestBase.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java
similarity index 100%
rename from paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeRewriterTestBase.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitTestUtil.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java
similarity index 100%
rename from paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitTestUtil.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitUtil.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitUtil.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/CodeSplitUtil.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitUtil.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriter.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriter.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriter.java
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriterTest.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriterTest.java
similarity index 100%
rename from paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/DeclarationRewriterTest.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriterTest.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/FunctionSplitter.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitter.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/FunctionSplitter.java
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitterTest.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/FunctionSplitterTest.java
similarity index 100%
rename from paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/FunctionSplitterTest.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/FunctionSplitterTest.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitter.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitter.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitter.java
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitterTest.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java
similarity index 100%
rename from paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaCodeSplitterTest.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaParserTest.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaParserTest.java
similarity index 100%
rename from paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/JavaParserTest.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaParserTest.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriter.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriter.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriter.java
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriterTest.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriterTest.java
similarity index 100%
rename from paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/MemberFieldRewriterTest.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriterTest.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnAndJumpCounter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnAndJumpCounter.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnAndJumpCounter.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnAndJumpCounter.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriter.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriter.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriter.java
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriterTest.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriterTest.java
similarity index 100%
rename from paimon-common/src/test/java/org/apache/flink/table/store/codegen/codesplit/ReturnValueRewriterTest.java
rename to paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriterTest.java
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractBinaryWriter.java b/paimon-common/src/main/java/org/apache/paimon/data/AbstractBinaryWriter.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractBinaryWriter.java
rename to paimon-common/src/main/java/org/apache/paimon/data/AbstractBinaryWriter.java
index 06c5d85a9..e31219825 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractBinaryWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/AbstractBinaryWriter.java
@@ -15,18 +15,19 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.data.serializer.InternalArraySerializer;
-import org.apache.flink.table.store.data.serializer.InternalMapSerializer;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
 
+import org.apache.paimon.data.serializer.InternalArraySerializer;
+import org.apache.paimon.data.serializer.InternalMapSerializer;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
+
 import java.nio.charset.StandardCharsets;
 import java.util.Arrays;
 
-import static org.apache.flink.table.store.data.BinarySection.MAX_FIX_PART_DATA_SIZE;
+import static org.apache.paimon.data.BinarySection.MAX_FIX_PART_DATA_SIZE;
 
 /**
  * Use the special format to write data to a {@link MemorySegment} (its capacity grows
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedInputView.java b/paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedInputView.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedInputView.java
rename to paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedInputView.java
index 52113ce9a..f6bec8b5d 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedInputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedInputView.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.memory.MemorySegment;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedOutputView.java b/paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedOutputView.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedOutputView.java
rename to paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedOutputView.java
index 555829d78..1319abada 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/AbstractPagedOutputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedOutputView.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryArray.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryArray.java
rename to paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
index 62e7b3089..6d74bb698 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryArray.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
@@ -16,13 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.lang.reflect.Array;
 
 import static org.apache.flink.table.store.memory.MemorySegment.UNSAFE;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryArrayWriter.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArrayWriter.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryArrayWriter.java
rename to paimon-common/src/main/java/org/apache/paimon/data/BinaryArrayWriter.java
index e7e92cf16..b09f287e1 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryArrayWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArrayWriter.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryMap.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryMap.java
rename to paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
index fffe1ca48..446844db2 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryMap.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
@@ -16,13 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.util.HashMap;
 import java.util.Map;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryRow.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryRow.java
rename to paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
index dd1943ba1..b72eded9c 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
@@ -15,9 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.DataType;
@@ -27,6 +26,8 @@ import org.apache.flink.table.store.types.LocalZonedTimestampType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.TimestampType;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.nio.ByteOrder;
 
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryRowWriter.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRowWriter.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryRowWriter.java
rename to paimon-common/src/main/java/org/apache/paimon/data/BinaryRowWriter.java
index d0d01f790..9df75bea9 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryRowWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRowWriter.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinarySection.java b/paimon-common/src/main/java/org/apache/paimon/data/BinarySection.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/BinarySection.java
rename to paimon-common/src/main/java/org/apache/paimon/data/BinarySection.java
index 0b1ff78d7..192c6ae13 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinarySection.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinarySection.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryString.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryString.java
rename to paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
index 921a29d3d..aeb9be83b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryString.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
@@ -16,12 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
 
+import org.apache.paimon.annotation.Experimental;
+
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryWriter.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryWriter.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryWriter.java
rename to paimon-common/src/main/java/org/apache/paimon/data/BinaryWriter.java
index fee0b8c28..dc58eab7a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/BinaryWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryWriter.java
@@ -15,18 +15,19 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.data.serializer.InternalArraySerializer;
-import org.apache.flink.table.store.data.serializer.InternalMapSerializer;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
-import org.apache.flink.table.store.data.serializer.InternalSerializers;
-import org.apache.flink.table.store.data.serializer.Serializer;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DecimalType;
 import org.apache.flink.table.store.types.LocalZonedTimestampType;
 import org.apache.flink.table.store.types.TimestampType;
 
+import org.apache.paimon.data.serializer.InternalArraySerializer;
+import org.apache.paimon.data.serializer.InternalMapSerializer;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.data.serializer.InternalSerializers;
+import org.apache.paimon.data.serializer.Serializer;
+
 import java.io.Serializable;
 
 import static org.apache.flink.table.store.types.DataTypeChecks.getPrecision;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/DataGetters.java b/paimon-common/src/main/java/org/apache/paimon/data/DataGetters.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/DataGetters.java
rename to paimon-common/src/main/java/org/apache/paimon/data/DataGetters.java
index fe8b93bc5..8e838fc7b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/DataGetters.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/DataGetters.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
+import org.apache.paimon.annotation.Experimental;
 
 /**
  * Getters to get data.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/DataSetters.java b/paimon-common/src/main/java/org/apache/paimon/data/DataSetters.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/DataSetters.java
rename to paimon-common/src/main/java/org/apache/paimon/data/DataSetters.java
index ec7298148..b66dfd197 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/DataSetters.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/DataSetters.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 /**
  * Provide type specialized setters to reduce if/else and eliminate box and unbox. This is mainly
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/Decimal.java b/paimon-common/src/main/java/org/apache/paimon/data/Decimal.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/Decimal.java
rename to paimon-common/src/main/java/org/apache/paimon/data/Decimal.java
index 983b12c87..4a2f5de6f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/Decimal.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/Decimal.java
@@ -16,11 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.types.DecimalType;
 
+import org.apache.paimon.annotation.Experimental;
+
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/GenericArray.java b/paimon-common/src/main/java/org/apache/paimon/data/GenericArray.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/GenericArray.java
rename to paimon-common/src/main/java/org/apache/paimon/data/GenericArray.java
index 609a329d5..3a826c768 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/GenericArray.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/GenericArray.java
@@ -16,12 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.utils.ArrayUtils;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.Serializable;
 import java.util.Arrays;
 import java.util.Objects;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/GenericMap.java b/paimon-common/src/main/java/org/apache/paimon/data/GenericMap.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/GenericMap.java
rename to paimon-common/src/main/java/org/apache/paimon/data/GenericMap.java
index 142d00e24..110c7fc01 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/GenericMap.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/GenericMap.java
@@ -16,12 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.types.MapType;
 import org.apache.flink.table.store.types.MultisetType;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.Serializable;
 import java.util.Map;
 import java.util.Objects;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/GenericRow.java b/paimon-common/src/main/java/org/apache/paimon/data/GenericRow.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/GenericRow.java
rename to paimon-common/src/main/java/org/apache/paimon/data/GenericRow.java
index 09c7db287..5c04ace87 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/GenericRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/GenericRow.java
@@ -16,12 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.Serializable;
 import java.util.Arrays;
 import java.util.Objects;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/InternalArray.java b/paimon-common/src/main/java/org/apache/paimon/data/InternalArray.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/InternalArray.java
rename to paimon-common/src/main/java/org/apache/paimon/data/InternalArray.java
index f6bb205d0..db8889de6 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/InternalArray.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/InternalArray.java
@@ -16,12 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.annotation.Experimental;
+
 import javax.annotation.Nullable;
 
 import java.io.Serializable;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/InternalMap.java b/paimon-common/src/main/java/org/apache/paimon/data/InternalMap.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/InternalMap.java
rename to paimon-common/src/main/java/org/apache/paimon/data/InternalMap.java
index 4434c4f77..8f111083b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/InternalMap.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/InternalMap.java
@@ -16,12 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.types.MapType;
 import org.apache.flink.table.store.types.MultisetType;
 
+import org.apache.paimon.annotation.Experimental;
+
 /**
  * Base interface of an internal data structure representing data of {@link MapType} or {@link
  * MultisetType}.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/InternalRow.java b/paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/InternalRow.java
rename to paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java
index 36893df19..9ae7e5cc0 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/InternalRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java
@@ -16,14 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypeChecks;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.annotation.Experimental;
+
 import javax.annotation.Nullable;
 
 import java.io.Serializable;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/JoinedRow.java b/paimon-common/src/main/java/org/apache/paimon/data/JoinedRow.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/JoinedRow.java
rename to paimon-common/src/main/java/org/apache/paimon/data/JoinedRow.java
index 47d354525..f8424e3e4 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/JoinedRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/JoinedRow.java
@@ -16,11 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.annotation.Experimental;
+
 import javax.annotation.Nullable;
 
 import java.util.Objects;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/LazyGenericRow.java b/paimon-common/src/main/java/org/apache/paimon/data/LazyGenericRow.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/LazyGenericRow.java
rename to paimon-common/src/main/java/org/apache/paimon/data/LazyGenericRow.java
index 0d6be2be3..4bdd16333 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/LazyGenericRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/LazyGenericRow.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.types.RowKind;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/NestedRow.java b/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/NestedRow.java
rename to paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
index 8ea6a3aff..a1a48c092 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/NestedRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
@@ -15,14 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.RowKind;
 
-import static org.apache.flink.table.store.data.BinaryRow.calculateBitSetWidthInBytes;
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.data.BinaryRow.calculateBitSetWidthInBytes;
 
 /**
  * Its memory storage structure is exactly the same with {@link BinaryRow}. The only different is
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/RandomAccessInputView.java b/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessInputView.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/RandomAccessInputView.java
rename to paimon-common/src/main/java/org/apache/paimon/data/RandomAccessInputView.java
index 18de2307f..e244a63f6 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/RandomAccessInputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessInputView.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.io.SeekableDataInputView;
 import org.apache.flink.table.store.memory.MemorySegment;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/RandomAccessOutputView.java b/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessOutputView.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/RandomAccessOutputView.java
rename to paimon-common/src/main/java/org/apache/paimon/data/RandomAccessOutputView.java
index 4e3bd605d..49aec3e6d 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/RandomAccessOutputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessOutputView.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.memory.MemorySegment;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/SimpleCollectingOutputView.java b/paimon-common/src/main/java/org/apache/paimon/data/SimpleCollectingOutputView.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/SimpleCollectingOutputView.java
rename to paimon-common/src/main/java/org/apache/paimon/data/SimpleCollectingOutputView.java
index f17879281..387dc5f48 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/SimpleCollectingOutputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/SimpleCollectingOutputView.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentSource;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/Timestamp.java b/paimon-common/src/main/java/org/apache/paimon/data/Timestamp.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/Timestamp.java
rename to paimon-common/src/main/java/org/apache/paimon/data/Timestamp.java
index bb155ff2d..99849ac9a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/Timestamp.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/Timestamp.java
@@ -16,13 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.annotation.Experimental;
 import org.apache.flink.table.store.types.LocalZonedTimestampType;
 import org.apache.flink.table.store.types.TimestampType;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.annotation.Experimental;
+
 import java.io.Serializable;
 import java.time.Instant;
 import java.time.LocalDate;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ArrayColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ArrayColumnVector.java
similarity index 89%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ArrayColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/ArrayColumnVector.java
index a3f7018dd..97ee1cc48 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ArrayColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ArrayColumnVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
-import org.apache.flink.table.store.data.InternalArray;
+import org.apache.paimon.data.InternalArray;
 
 /** Array column vector. */
 public interface ArrayColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/BooleanColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/BooleanColumnVector.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/BooleanColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/BooleanColumnVector.java
index 5e823645d..049b8697c 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/BooleanColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/BooleanColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
 /** Boolean column vector. */
 public interface BooleanColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ByteColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ByteColumnVector.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ByteColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/ByteColumnVector.java
index ddf53d120..a6e2131b5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ByteColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ByteColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
 /** Byte column vector. */
 public interface ByteColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/BytesColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/BytesColumnVector.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/BytesColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/BytesColumnVector.java
index 283550fb1..c50eee776 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/BytesColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/BytesColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
 /**
  * Bytes column vector to get {@link Bytes}, it include original data and offset and length. The
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnVector.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnVector.java
index 25a90d53e..612b28c02 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
 /** Nullable column vector. Access data through specific subclasses. */
 public interface ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarArray.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarArray.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarArray.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarArray.java
index a56c461a0..d13bc7165 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarArray.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarArray.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
-
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.DataSetters;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.Timestamp;
+package org.apache.paimon.data.columnar;
+
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.DataSetters;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
 
 import java.io.Serializable;
 import java.util.Arrays;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarMap.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarMap.java
similarity index 93%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarMap.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarMap.java
index 141702149..72bb47236 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarMap.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarMap.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
 
 import java.io.Serializable;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRow.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRow.java
similarity index 92%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRow.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRow.java
index 6d379bac1..1408104b0 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRow.java
@@ -16,18 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
-
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.DataSetters;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.Timestamp;
-import org.apache.flink.table.store.data.columnar.BytesColumnVector.Bytes;
+package org.apache.paimon.data.columnar;
+
 import org.apache.flink.table.store.types.RowKind;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.DataSetters;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.data.columnar.BytesColumnVector.Bytes;
+
 import java.io.Serializable;
 
 /**
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRowIterator.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRowIterator.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRowIterator.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRowIterator.java
index 3053428e6..bb97a44cb 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ColumnarRowIterator.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRowIterator.java
@@ -16,12 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.utils.RecyclableIterator;
 
+import org.apache.paimon.data.InternalRow;
+
 import javax.annotation.Nullable;
 
 /**
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/DecimalColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/DecimalColumnVector.java
similarity index 90%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/DecimalColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/DecimalColumnVector.java
index 4d8b4e3eb..648708435 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/DecimalColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/DecimalColumnVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
-import org.apache.flink.table.store.data.Decimal;
+import org.apache.paimon.data.Decimal;
 
 /** Decimal column vector. */
 public interface DecimalColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/Dictionary.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/Dictionary.java
similarity index 91%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/Dictionary.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/Dictionary.java
index 7f77762f9..013c95d13 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/Dictionary.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/Dictionary.java
@@ -15,9 +15,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
-import org.apache.flink.table.store.data.Timestamp;
+import org.apache.paimon.data.Timestamp;
 
 /** The interface for dictionary in AbstractColumnVector to decode dictionary encoded values. */
 public interface Dictionary {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/DoubleColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/DoubleColumnVector.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/DoubleColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/DoubleColumnVector.java
index 5e962afab..0f5b06c6a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/DoubleColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/DoubleColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
 /** Double column vector. */
 public interface DoubleColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/FloatColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/FloatColumnVector.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/FloatColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/FloatColumnVector.java
index a1ed66564..bfa89fcfd 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/FloatColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/FloatColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
 /** Float column vector. */
 public interface FloatColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/IntColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/IntColumnVector.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/IntColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/IntColumnVector.java
index 5d7b3a966..43301569c 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/IntColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/IntColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
 /** Int column vector. */
 public interface IntColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/LongColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/LongColumnVector.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/LongColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/LongColumnVector.java
index 7c89809ab..0dad4a036 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/LongColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/LongColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
 /** Long column vector. */
 public interface LongColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/MapColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/MapColumnVector.java
similarity index 89%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/MapColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/MapColumnVector.java
index dfd292d62..fc9ef8fba 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/MapColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/MapColumnVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
-import org.apache.flink.table.store.data.InternalMap;
+import org.apache.paimon.data.InternalMap;
 
 /** Map column vector. */
 public interface MapColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/RowColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/RowColumnVector.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/RowColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/RowColumnVector.java
index 3c638933b..891bb100d 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/RowColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/RowColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
 /** Row column vector. */
 public interface RowColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ShortColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ShortColumnVector.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ShortColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/ShortColumnVector.java
index 58793d048..e940c9314 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/ShortColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ShortColumnVector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
 /** Short column vector. */
 public interface ShortColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/TimestampColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/TimestampColumnVector.java
similarity index 90%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/TimestampColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/TimestampColumnVector.java
index 094de9757..43ebd807e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/TimestampColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/TimestampColumnVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
-import org.apache.flink.table.store.data.Timestamp;
+import org.apache.paimon.data.Timestamp;
 
 /** Timestamp column vector. */
 public interface TimestampColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/VectorizedColumnBatch.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/VectorizedColumnBatch.java
similarity index 89%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/VectorizedColumnBatch.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/VectorizedColumnBatch.java
index a45408bbc..3ea392934 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/VectorizedColumnBatch.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/VectorizedColumnBatch.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar;
+package org.apache.paimon.data.columnar;
 
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.Timestamp;
-import org.apache.flink.table.store.data.columnar.BytesColumnVector.Bytes;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.data.columnar.BytesColumnVector.Bytes;
 
 import java.io.Serializable;
 import java.nio.charset.StandardCharsets;
@@ -44,7 +44,7 @@ public class VectorizedColumnBatch implements Serializable {
     public static final int DEFAULT_SIZE = 2048;
 
     private int numRows;
-    public final org.apache.flink.table.store.data.columnar.ColumnVector[] columns;
+    public final org.apache.paimon.data.columnar.ColumnVector[] columns;
 
     public VectorizedColumnBatch(ColumnVector[] vectors) {
         this.columns = vectors;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/AbstractHeapVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/AbstractHeapVector.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/AbstractHeapVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/AbstractHeapVector.java
index 72c9adaa3..3b865568a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/AbstractHeapVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/AbstractHeapVector.java
@@ -16,11 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.columnar.writable.AbstractWritableVector;
 import org.apache.flink.table.store.memory.MemorySegment;
 
+import org.apache.paimon.data.columnar.writable.AbstractWritableVector;
+
 import java.nio.ByteOrder;
 import java.util.Arrays;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapArrayVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapArrayVector.java
similarity index 84%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapArrayVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapArrayVector.java
index bb3cfefff..cdcad94ed 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapArrayVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapArrayVector.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.columnar.ArrayColumnVector;
-import org.apache.flink.table.store.data.columnar.ColumnVector;
-import org.apache.flink.table.store.data.columnar.ColumnarArray;
-import org.apache.flink.table.store.data.columnar.writable.WritableColumnVector;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.columnar.ArrayColumnVector;
+import org.apache.paimon.data.columnar.ColumnVector;
+import org.apache.paimon.data.columnar.ColumnarArray;
+import org.apache.paimon.data.columnar.writable.WritableColumnVector;
 
 /** This class represents a nullable heap array column vector. */
 public class HeapArrayVector extends AbstractHeapVector
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBooleanVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapBooleanVector.java
similarity index 92%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBooleanVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapBooleanVector.java
index 026086f48..90fdcf3c2 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBooleanVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapBooleanVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.columnar.writable.WritableBooleanVector;
+import org.apache.paimon.data.columnar.writable.WritableBooleanVector;
 
 import java.util.Arrays;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapByteVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapByteVector.java
similarity index 92%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapByteVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapByteVector.java
index eba7d86c6..c9cdeacd1 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapByteVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapByteVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.columnar.writable.WritableByteVector;
+import org.apache.paimon.data.columnar.writable.WritableByteVector;
 
 import java.util.Arrays;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBytesVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapBytesVector.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBytesVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapBytesVector.java
index 8d7a236e2..d4936b0b8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapBytesVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapBytesVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.columnar.writable.WritableBytesVector;
+import org.apache.paimon.data.columnar.writable.WritableBytesVector;
 
 import java.util.Arrays;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapDoubleVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapDoubleVector.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapDoubleVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapDoubleVector.java
index a5b08a7f7..1df8fcd45 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapDoubleVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapDoubleVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.columnar.writable.WritableDoubleVector;
+import org.apache.paimon.data.columnar.writable.WritableDoubleVector;
 
 import java.nio.ByteBuffer;
 import java.nio.ByteOrder;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapFloatVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapFloatVector.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapFloatVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapFloatVector.java
index 71f808f4b..f9e5305e2 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapFloatVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapFloatVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.columnar.writable.WritableFloatVector;
+import org.apache.paimon.data.columnar.writable.WritableFloatVector;
 
 import java.nio.ByteBuffer;
 import java.nio.ByteOrder;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapIntVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapIntVector.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapIntVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapIntVector.java
index ff52f4e03..347ad8e57 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapIntVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapIntVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.columnar.writable.WritableIntVector;
+import org.apache.paimon.data.columnar.writable.WritableIntVector;
 
 import java.util.Arrays;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapLongVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapLongVector.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapLongVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapLongVector.java
index bda26bc2b..f5cc5ec7f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapLongVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapLongVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.columnar.writable.WritableLongVector;
+import org.apache.paimon.data.columnar.writable.WritableLongVector;
 
 import java.util.Arrays;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapMapVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapMapVector.java
similarity index 83%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapMapVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapMapVector.java
index 7d84a741d..5ee016719 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapMapVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapMapVector.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.columnar.ColumnVector;
-import org.apache.flink.table.store.data.columnar.ColumnarMap;
-import org.apache.flink.table.store.data.columnar.MapColumnVector;
-import org.apache.flink.table.store.data.columnar.writable.WritableColumnVector;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.columnar.ColumnVector;
+import org.apache.paimon.data.columnar.ColumnarMap;
+import org.apache.paimon.data.columnar.MapColumnVector;
+import org.apache.paimon.data.columnar.writable.WritableColumnVector;
 
 /** This class represents a nullable heap map column vector. */
 public class HeapMapVector extends AbstractHeapVector
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapRowVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapRowVector.java
similarity index 82%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapRowVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapRowVector.java
index 73ff4ed82..034009805 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapRowVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapRowVector.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.columnar.ColumnarRow;
-import org.apache.flink.table.store.data.columnar.RowColumnVector;
-import org.apache.flink.table.store.data.columnar.VectorizedColumnBatch;
-import org.apache.flink.table.store.data.columnar.writable.WritableColumnVector;
+import org.apache.paimon.data.columnar.ColumnarRow;
+import org.apache.paimon.data.columnar.RowColumnVector;
+import org.apache.paimon.data.columnar.VectorizedColumnBatch;
+import org.apache.paimon.data.columnar.writable.WritableColumnVector;
 
 /** This class represents a nullable heap row column vector. */
 public class HeapRowVector extends AbstractHeapVector
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapShortVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapShortVector.java
similarity index 92%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapShortVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapShortVector.java
index c31bc422f..796ad06b8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapShortVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapShortVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.columnar.writable.WritableShortVector;
+import org.apache.paimon.data.columnar.writable.WritableShortVector;
 
 import java.util.Arrays;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapTimestampVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapTimestampVector.java
similarity index 91%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapTimestampVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapTimestampVector.java
index a0d25e174..1a8d8bbb3 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/heap/HeapTimestampVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/HeapTimestampVector.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.heap;
+package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.data.Timestamp;
-import org.apache.flink.table.store.data.columnar.writable.WritableTimestampVector;
+import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.data.columnar.writable.WritableTimestampVector;
 
 import java.util.Arrays;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/AbstractWritableVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/AbstractWritableVector.java
similarity index 90%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/AbstractWritableVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/AbstractWritableVector.java
index d19bee072..20c2c619f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/AbstractWritableVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/AbstractWritableVector.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.writable;
+package org.apache.paimon.data.columnar.writable;
 
-import org.apache.flink.table.store.data.columnar.ColumnVector;
-import org.apache.flink.table.store.data.columnar.Dictionary;
+import org.apache.paimon.data.columnar.ColumnVector;
+import org.apache.paimon.data.columnar.Dictionary;
 
 import java.io.Serializable;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBooleanVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableBooleanVector.java
similarity index 89%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBooleanVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableBooleanVector.java
index f42734369..43f0e8a11 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBooleanVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableBooleanVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.writable;
+package org.apache.paimon.data.columnar.writable;
 
-import org.apache.flink.table.store.data.columnar.BooleanColumnVector;
+import org.apache.paimon.data.columnar.BooleanColumnVector;
 
 /** Writable {@link BooleanColumnVector}. */
 public interface WritableBooleanVector extends WritableColumnVector, BooleanColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableByteVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableByteVector.java
similarity index 89%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableByteVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableByteVector.java
index beeab10a5..7ed6240d9 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableByteVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableByteVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.writable;
+package org.apache.paimon.data.columnar.writable;
 
-import org.apache.flink.table.store.data.columnar.ByteColumnVector;
+import org.apache.paimon.data.columnar.ByteColumnVector;
 
 /** Writable {@link ByteColumnVector}. */
 public interface WritableByteVector extends WritableColumnVector, ByteColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBytesVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableBytesVector.java
similarity index 90%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBytesVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableBytesVector.java
index 062f870ad..e39eb397f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableBytesVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableBytesVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.writable;
+package org.apache.paimon.data.columnar.writable;
 
-import org.apache.flink.table.store.data.columnar.BytesColumnVector;
+import org.apache.paimon.data.columnar.BytesColumnVector;
 
 /** Writable {@link BytesColumnVector}. */
 public interface WritableBytesVector extends WritableColumnVector, BytesColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableColumnVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableColumnVector.java
similarity index 90%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableColumnVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableColumnVector.java
index 3de8f6b4c..3163404cc 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableColumnVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableColumnVector.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.writable;
+package org.apache.paimon.data.columnar.writable;
 
-import org.apache.flink.table.store.data.columnar.ColumnVector;
-import org.apache.flink.table.store.data.columnar.Dictionary;
+import org.apache.paimon.data.columnar.ColumnVector;
+import org.apache.paimon.data.columnar.Dictionary;
 
 /** Writable {@link ColumnVector}. */
 public interface WritableColumnVector extends ColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableDoubleVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableDoubleVector.java
similarity index 92%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableDoubleVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableDoubleVector.java
index a1974e8e7..ab8285090 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableDoubleVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableDoubleVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.writable;
+package org.apache.paimon.data.columnar.writable;
 
-import org.apache.flink.table.store.data.columnar.DoubleColumnVector;
+import org.apache.paimon.data.columnar.DoubleColumnVector;
 
 /** Writable {@link DoubleColumnVector}. */
 public interface WritableDoubleVector extends WritableColumnVector, DoubleColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableFloatVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableFloatVector.java
similarity index 92%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableFloatVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableFloatVector.java
index b0ec5b26f..79c713c57 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableFloatVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableFloatVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.writable;
+package org.apache.paimon.data.columnar.writable;
 
-import org.apache.flink.table.store.data.columnar.FloatColumnVector;
+import org.apache.paimon.data.columnar.FloatColumnVector;
 
 /** Writable {@link FloatColumnVector}. */
 public interface WritableFloatVector extends WritableColumnVector, FloatColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableIntVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableIntVector.java
similarity index 93%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableIntVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableIntVector.java
index 82280f7d3..79c99230f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableIntVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableIntVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.writable;
+package org.apache.paimon.data.columnar.writable;
 
-import org.apache.flink.table.store.data.columnar.IntColumnVector;
+import org.apache.paimon.data.columnar.IntColumnVector;
 
 /** Writable {@link IntColumnVector}. */
 public interface WritableIntVector extends WritableColumnVector, IntColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableLongVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableLongVector.java
similarity index 92%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableLongVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableLongVector.java
index 41a4f8529..fc0e70aa8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableLongVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableLongVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.writable;
+package org.apache.paimon.data.columnar.writable;
 
-import org.apache.flink.table.store.data.columnar.LongColumnVector;
+import org.apache.paimon.data.columnar.LongColumnVector;
 
 /** Writable {@link LongColumnVector}. */
 public interface WritableLongVector extends WritableColumnVector, LongColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableShortVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableShortVector.java
similarity index 89%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableShortVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableShortVector.java
index d4656e4e1..9d1ba7f4f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableShortVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableShortVector.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.writable;
+package org.apache.paimon.data.columnar.writable;
 
-import org.apache.flink.table.store.data.columnar.ShortColumnVector;
+import org.apache.paimon.data.columnar.ShortColumnVector;
 
 /** Writable {@link ShortColumnVector}. */
 public interface WritableShortVector extends WritableColumnVector, ShortColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableTimestampVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableTimestampVector.java
similarity index 86%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableTimestampVector.java
rename to paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableTimestampVector.java
index 78a937634..81f3ccfc5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/columnar/writable/WritableTimestampVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/writable/WritableTimestampVector.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.columnar.writable;
+package org.apache.paimon.data.columnar.writable;
 
-import org.apache.flink.table.store.data.Timestamp;
-import org.apache.flink.table.store.data.columnar.TimestampColumnVector;
+import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.data.columnar.TimestampColumnVector;
 
 /** Writable {@link TimestampColumnVector}. */
 public interface WritableTimestampVector extends WritableColumnVector, TimestampColumnVector {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/AbstractRowDataSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/AbstractRowDataSerializer.java
similarity index 88%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/AbstractRowDataSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/AbstractRowDataSerializer.java
index 7eac46672..6870d7f8a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/AbstractRowDataSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/AbstractRowDataSerializer.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryRowSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryRowSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
index 324872be4..e5619ba2a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryRowSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
@@ -16,17 +16,18 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.data.AbstractPagedInputView;
-import org.apache.flink.table.store.data.AbstractPagedOutputView;
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.memory.MemorySegmentWritable;
 
+import org.apache.paimon.data.AbstractPagedInputView;
+import org.apache.paimon.data.AbstractPagedOutputView;
+import org.apache.paimon.data.BinaryRow;
+
 import java.io.IOException;
 
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinarySerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinarySerializer.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinarySerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/BinarySerializer.java
index 01872e357..f28d02a45 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinarySerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinarySerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryStringSerializer.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryStringSerializer.java
index 226318bdc..d95fbb17d 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryStringSerializer.java
@@ -16,13 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
 
+import org.apache.paimon.data.BinaryString;
+
 import java.io.IOException;
 
 /** Serializer for {@link BinaryString}. */
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BooleanSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BooleanSerializer.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BooleanSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/BooleanSerializer.java
index a37c4c677..938403e26 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/BooleanSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BooleanSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ByteSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ByteSerializer.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ByteSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/ByteSerializer.java
index 253701398..43abd9ad1 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ByteSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ByteSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/DecimalSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/DecimalSerializer.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/DecimalSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/DecimalSerializer.java
index ae8b3c8b6..df2b6e839 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/DecimalSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/DecimalSerializer.java
@@ -16,12 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.data.Decimal;
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
 
+import org.apache.paimon.data.Decimal;
+
 import java.io.IOException;
 
 /** Serializer for {@link Decimal}. */
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/DoubleSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/DoubleSerializer.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/DoubleSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/DoubleSerializer.java
index b5b455118..8e96dd899 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/DoubleSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/DoubleSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/FloatSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/FloatSerializer.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/FloatSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/FloatSerializer.java
index b3c972305..e9f698cf5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/FloatSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/FloatSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/IntSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/IntSerializer.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/IntSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/IntSerializer.java
index 1e5df250d..774fcdaba 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/IntSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/IntSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalArraySerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalArraySerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
index 0d7afa961..dcd68dfc4 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalArraySerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
@@ -16,20 +16,21 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
-
-import org.apache.flink.table.store.data.BinaryArray;
-import org.apache.flink.table.store.data.BinaryArrayWriter;
-import org.apache.flink.table.store.data.BinaryWriter;
-import org.apache.flink.table.store.data.GenericArray;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalRow;
+package org.apache.paimon.data.serializer;
+
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.data.BinaryArray;
+import org.apache.paimon.data.BinaryArrayWriter;
+import org.apache.paimon.data.BinaryWriter;
+import org.apache.paimon.data.GenericArray;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 import java.lang.reflect.Array;
 import java.util.Arrays;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalMapSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalMapSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
index bdadc550e..f9ecc70f0 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalMapSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
@@ -16,20 +16,21 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
-
-import org.apache.flink.table.store.data.BinaryArray;
-import org.apache.flink.table.store.data.BinaryArrayWriter;
-import org.apache.flink.table.store.data.BinaryMap;
-import org.apache.flink.table.store.data.BinaryWriter;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
+package org.apache.paimon.data.serializer;
+
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.DataType;
 
+import org.apache.paimon.data.BinaryArray;
+import org.apache.paimon.data.BinaryArrayWriter;
+import org.apache.paimon.data.BinaryMap;
+import org.apache.paimon.data.BinaryWriter;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+
 import java.io.IOException;
 import java.util.HashMap;
 import java.util.Map;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalRowSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
similarity index 93%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalRowSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
index cb133f342..15d77901b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalRowSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
@@ -16,21 +16,22 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
-
-import org.apache.flink.table.store.data.AbstractPagedInputView;
-import org.apache.flink.table.store.data.AbstractPagedOutputView;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryRowWriter;
-import org.apache.flink.table.store.data.BinaryWriter;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.NestedRow;
+package org.apache.paimon.data.serializer;
+
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.AbstractPagedInputView;
+import org.apache.paimon.data.AbstractPagedOutputView;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.BinaryWriter;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.NestedRow;
+
 import java.io.IOException;
 import java.util.Arrays;
 import java.util.stream.IntStream;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalSerializers.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalSerializers.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalSerializers.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalSerializers.java
index df52fce2d..ef09e0feb 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/InternalSerializers.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalSerializers.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.DataType;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ListSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ListSerializer.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ListSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/ListSerializer.java
index f6e3906cb..fa432844f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ListSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ListSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/LongSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/LongSerializer.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/LongSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/LongSerializer.java
index b4aba1d98..1ff14989a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/LongSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/LongSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/NullableSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/NullableSerializer.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/NullableSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/NullableSerializer.java
index 4a1999156..d7c221550 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/NullableSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/NullableSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.io.DataInputDeserializer;
 import org.apache.flink.table.store.io.DataInputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/PagedTypeSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/PagedTypeSerializer.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/PagedTypeSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/PagedTypeSerializer.java
index 56edf75f2..f916d01b5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/PagedTypeSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/PagedTypeSerializer.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.data.AbstractPagedInputView;
-import org.apache.flink.table.store.data.AbstractPagedOutputView;
-import org.apache.flink.table.store.data.BinaryRow;
+import org.apache.paimon.data.AbstractPagedInputView;
+import org.apache.paimon.data.AbstractPagedOutputView;
+import org.apache.paimon.data.BinaryRow;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
index d199fc932..6dd1cf758 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
@@ -16,19 +16,8 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
-
-import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.data.BinaryArray;
-import org.apache.flink.table.store.data.BinaryMap;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.InternalRow.FieldGetter;
-import org.apache.flink.table.store.data.Timestamp;
+package org.apache.paimon.data.serializer;
+
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
 import org.apache.flink.table.store.memory.MemorySegment;
@@ -37,6 +26,18 @@ import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.VarLengthIntUtils;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryArray;
+import org.apache.paimon.data.BinaryMap;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.InternalRow.FieldGetter;
+import org.apache.paimon.data.Timestamp;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
@@ -44,12 +45,12 @@ import java.io.Serializable;
 import java.util.Arrays;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.data.BinaryRow.HEADER_SIZE_IN_BITS;
 import static org.apache.flink.table.store.memory.MemorySegmentUtils.bitGet;
 import static org.apache.flink.table.store.memory.MemorySegmentUtils.bitSet;
 import static org.apache.flink.table.store.types.DataTypeChecks.getPrecision;
 import static org.apache.flink.table.store.types.DataTypeChecks.getScale;
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.data.BinaryRow.HEADER_SIZE_IN_BITS;
 
 /** A {@link Serializer} for {@link InternalRow} using compacted binary. */
 public class RowCompactedSerializer implements Serializer<InternalRow> {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/Serializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/Serializer.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/Serializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/Serializer.java
index 637088c6b..4d343a822 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/Serializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/Serializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/SerializerSingleton.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/SerializerSingleton.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/SerializerSingleton.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/SerializerSingleton.java
index 1a774f900..5ffd4aa5b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/SerializerSingleton.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/SerializerSingleton.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 /** Singleton {@link Serializer}. */
 public abstract class SerializerSingleton<T> implements Serializer<T> {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ShortSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ShortSerializer.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ShortSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/ShortSerializer.java
index b1da09ab5..4477ec85b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/ShortSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ShortSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/TimestampSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/TimestampSerializer.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/TimestampSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/TimestampSerializer.java
index ab188e373..a19138b32 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/TimestampSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/TimestampSerializer.java
@@ -16,12 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.io.DataInputView;
 import org.apache.flink.table.store.io.DataOutputView;
 
+import org.apache.paimon.data.Timestamp;
+
 import java.io.IOException;
 
 /**
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/VersionedSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/VersionedSerializer.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/VersionedSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/data/serializer/VersionedSerializer.java
index 9faedb2d3..f53a5ea92 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/data/serializer/VersionedSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/VersionedSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java b/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
index 3c4e7b31e..fea1428c0 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
@@ -18,12 +18,13 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.InternalSerializers;
-import org.apache.flink.table.store.data.serializer.Serializer;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalSerializers;
+import org.apache.paimon.data.serializer.Serializer;
+
 /** Collector to extract statistics of each fields from a series of records. */
 public class FieldStatsCollector {
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java b/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
index 18beddb0d..6fccf7aec 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
@@ -18,11 +18,12 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 import java.io.Serializable;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FormatWriter.java b/paimon-common/src/main/java/org/apache/paimon/format/FormatWriter.java
index 054fd32c4..3a9ccba38 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FormatWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FormatWriter.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.data.InternalRow;
+import org.apache.paimon.data.InternalRow;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java
index 746a3b6d1..cd70e52b5 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java
+++ b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java
@@ -18,11 +18,6 @@
 
 package org.apache.flink.table.store.datagen;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.GenericArray;
-import org.apache.flink.table.store.data.GenericMap;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.options.ConfigOption;
 import org.apache.flink.table.store.options.ConfigOptions;
 import org.apache.flink.table.store.options.Options;
@@ -47,6 +42,12 @@ import org.apache.flink.table.store.types.VarBinaryType;
 import org.apache.flink.table.store.types.VarCharType;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.GenericArray;
+import org.apache.paimon.data.GenericMap;
+import org.apache.paimon.data.Timestamp;
+
 import java.math.BigDecimal;
 import java.math.MathContext;
 import java.math.RoundingMode;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RowDataGenerator.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RowDataGenerator.java
index b68b05091..8685d7a6d 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RowDataGenerator.java
+++ b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RowDataGenerator.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.datagen;
 
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 
 /** Data generator for Flink's internal {@link InternalRow} type. */
 public class RowDataGenerator implements DataGenerator<InternalRow> {
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java
index 12bbe8d88..0ae3d0d5b 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java
+++ b/paimon-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java
@@ -18,11 +18,6 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.Timestamp;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.datagen.DataGenerator;
 import org.apache.flink.table.store.datagen.RandomGeneratorVisitor;
 import org.apache.flink.table.store.datagen.RowDataGenerator;
@@ -31,6 +26,11 @@ import org.apache.flink.table.store.types.DataTypeRoot;
 import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/BinaryRowTest.java b/paimon-common/src/test/java/org/apache/paimon/data/BinaryRowTest.java
similarity index 98%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/BinaryRowTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/BinaryRowTest.java
index cf57cb70e..773929918 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/BinaryRowTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/BinaryRowTest.java
@@ -16,14 +16,8 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
-
-import org.apache.flink.table.store.data.serializer.BinaryRowSerializer;
-import org.apache.flink.table.store.data.serializer.InternalArraySerializer;
-import org.apache.flink.table.store.data.serializer.InternalMapSerializer;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
-import org.apache.flink.table.store.data.serializer.InternalSerializers;
-import org.apache.flink.table.store.data.serializer.Serializer;
+package org.apache.paimon.data;
+
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypes;
@@ -33,6 +27,12 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
 import org.apache.flink.table.store.utils.InstantiationUtil;
 
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
+import org.apache.paimon.data.serializer.InternalArraySerializer;
+import org.apache.paimon.data.serializer.InternalMapSerializer;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.data.serializer.InternalSerializers;
+import org.apache.paimon.data.serializer.Serializer;
 import org.junit.jupiter.api.Test;
 
 import java.io.EOFException;
@@ -50,9 +50,9 @@ import java.util.Random;
 import java.util.Set;
 import java.util.function.Consumer;
 
-import static org.apache.flink.table.store.data.BinaryString.fromBytes;
-import static org.apache.flink.table.store.data.BinaryString.fromString;
-import static org.apache.flink.table.store.data.MapDataUtil.convertToJavaMap;
+import static org.apache.paimon.data.BinaryString.fromBytes;
+import static org.apache.paimon.data.BinaryString.fromString;
+import static org.apache.paimon.data.MapDataUtil.convertToJavaMap;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test of {@link BinaryRow} and {@link BinaryRowWriter}. */
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/BinaryStringTest.java b/paimon-common/src/test/java/org/apache/paimon/data/BinaryStringTest.java
similarity index 99%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/BinaryStringTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/BinaryStringTest.java
index 471c5015c..5c4a9debd 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/BinaryStringTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/BinaryStringTest.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.utils.SortUtil;
@@ -33,9 +33,9 @@ import java.util.List;
 import java.util.Random;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
-import static org.apache.flink.table.store.data.BinaryString.blankString;
-import static org.apache.flink.table.store.data.BinaryString.fromBytes;
 import static org.apache.flink.table.store.utils.DecimalUtils.castFrom;
+import static org.apache.paimon.data.BinaryString.blankString;
+import static org.apache.paimon.data.BinaryString.fromBytes;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /**
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/DataFormatTestUtil.java b/paimon-common/src/test/java/org/apache/paimon/data/DataFormatTestUtil.java
similarity index 99%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/DataFormatTestUtil.java
rename to paimon-common/src/test/java/org/apache/paimon/data/DataFormatTestUtil.java
index 48b184411..1d20aa618 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/DataFormatTestUtil.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/DataFormatTestUtil.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.types.RowType;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/DecimalTest.java b/paimon-common/src/test/java/org/apache/paimon/data/DecimalTest.java
similarity index 99%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/DecimalTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/DecimalTest.java
index 025409341..2109ec128 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/DecimalTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/DecimalTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/MapDataUtil.java b/paimon-common/src/test/java/org/apache/paimon/data/MapDataUtil.java
similarity index 97%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/MapDataUtil.java
rename to paimon-common/src/test/java/org/apache/paimon/data/MapDataUtil.java
index 1f1557e7d..7b37ee03b 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/MapDataUtil.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/MapDataUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.apache.flink.table.store.types.DataType;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/NestedRowTest.java b/paimon-common/src/test/java/org/apache/paimon/data/NestedRowTest.java
similarity index 95%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/NestedRowTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/NestedRowTest.java
index 0d0efcbd1..60b36afdf 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/NestedRowTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/NestedRowTest.java
@@ -15,15 +15,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.types.DataTypes;
 
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.junit.jupiter.api.Test;
 
-import static org.apache.flink.table.store.data.DataFormatTestUtil.splitBytes;
+import static org.apache.paimon.data.DataFormatTestUtil.splitBytes;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link NestedRow}s. */
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/RowDataTest.java b/paimon-common/src/test/java/org/apache/paimon/data/RowDataTest.java
similarity index 97%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/RowDataTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/RowDataTest.java
index 0ac3bcbd2..9f24184d5 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/RowDataTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/RowDataTest.java
@@ -15,16 +15,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
-import org.apache.flink.table.store.data.serializer.InternalArraySerializer;
-import org.apache.flink.table.store.data.serializer.InternalMapSerializer;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.serializer.InternalArraySerializer;
+import org.apache.paimon.data.serializer.InternalMapSerializer;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/TimestampTest.java b/paimon-common/src/test/java/org/apache/paimon/data/TimestampTest.java
similarity index 99%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/TimestampTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/TimestampTest.java
index a704427af..8caa92b48 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/TimestampTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/TimestampTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data;
+package org.apache.paimon.data;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BinarySerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/BinarySerializerTest.java
similarity index 97%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BinarySerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/BinarySerializerTest.java
index 2be1cc8be..e433267b3 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BinarySerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/BinarySerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import java.util.Arrays;
 import java.util.Random;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/BinaryStringSerializerTest.java
similarity index 93%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/BinaryStringSerializerTest.java
index df68b477f..d60ffa9bf 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BinaryStringSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/BinaryStringSerializerTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.data.BinaryString;
+import org.apache.paimon.data.BinaryString;
 
 import java.util.Arrays;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BooleanSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/BooleanSerializerTest.java
similarity index 96%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BooleanSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/BooleanSerializerTest.java
index 9cb374548..23d1b04ef 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/BooleanSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/BooleanSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import java.util.Random;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ByteSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/ByteSerializerTest.java
similarity index 96%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ByteSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/ByteSerializerTest.java
index 23078174c..707540175 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ByteSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/ByteSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import java.util.Random;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/DecimalSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/DecimalSerializerTest.java
similarity index 93%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/DecimalSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/DecimalSerializerTest.java
index 8c668810a..c81a54c69 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/DecimalSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/DecimalSerializerTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.data.Decimal;
+import org.apache.paimon.data.Decimal;
 
 /** Test for {@link DecimalSerializer}. */
 public class DecimalSerializerTest extends SerializerTestBase<Decimal> {
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/DoubleSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/DoubleSerializerTest.java
similarity index 96%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/DoubleSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/DoubleSerializerTest.java
index d46358f8a..1cbf4d52e 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/DoubleSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/DoubleSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import java.util.Random;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/FloatSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/FloatSerializerTest.java
similarity index 96%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/FloatSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/FloatSerializerTest.java
index 993badf32..2a85ce638 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/FloatSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/FloatSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import java.util.Random;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/IntSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/IntSerializerTest.java
similarity index 96%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/IntSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/IntSerializerTest.java
index c6a97528a..303b370b5 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/IntSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/IntSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import java.util.Random;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalArraySerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalArraySerializerTest.java
similarity index 90%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalArraySerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalArraySerializerTest.java
index dd743b9ef..c7f2c7469 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalArraySerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalArraySerializerTest.java
@@ -16,18 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.data.BinaryArray;
-import org.apache.flink.table.store.data.BinaryArrayWriter;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericArray;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.columnar.ColumnarArray;
-import org.apache.flink.table.store.data.columnar.heap.HeapBytesVector;
 import org.apache.flink.table.store.memory.MemorySegment;
 import org.apache.flink.table.store.types.DataTypes;
 
+import org.apache.paimon.data.BinaryArray;
+import org.apache.paimon.data.BinaryArrayWriter;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericArray;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.columnar.ColumnarArray;
+import org.apache.paimon.data.columnar.heap.HeapBytesVector;
+
 import java.lang.reflect.Proxy;
 import java.nio.charset.StandardCharsets;
 import java.util.Arrays;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalMapSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalMapSerializerTest.java
similarity index 88%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalMapSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalMapSerializerTest.java
index d8373bd02..1bdd0832f 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalMapSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalMapSerializerTest.java
@@ -16,25 +16,25 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.data.BinaryArray;
-import org.apache.flink.table.store.data.BinaryArrayWriter;
-import org.apache.flink.table.store.data.BinaryMap;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericArray;
-import org.apache.flink.table.store.data.GenericMap;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
+import org.apache.paimon.data.BinaryArray;
+import org.apache.paimon.data.BinaryArrayWriter;
+import org.apache.paimon.data.BinaryMap;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericArray;
+import org.apache.paimon.data.GenericMap;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
 
 import java.util.Arrays;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.data.serializer.InternalMapSerializer.convertToJavaMap;
 import static org.apache.flink.table.store.types.DataTypes.INT;
 import static org.apache.flink.table.store.types.DataTypes.STRING;
+import static org.apache.paimon.data.serializer.InternalMapSerializer.convertToJavaMap;
 
 /** Test for {@link InternalMapSerializer}. */
 public class InternalMapSerializerTest extends SerializerTestBase<InternalMap> {
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalRowSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalRowSerializerTest.java
similarity index 95%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalRowSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalRowSerializerTest.java
index e3ff57f5e..7c6558df1 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/InternalRowSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalRowSerializerTest.java
@@ -16,23 +16,23 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
-
-import org.apache.flink.table.store.data.BinaryArray;
-import org.apache.flink.table.store.data.BinaryArrayWriter;
-import org.apache.flink.table.store.data.BinaryMap;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
+package org.apache.paimon.data.serializer;
+
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypes;
 
+import org.apache.paimon.data.BinaryArray;
+import org.apache.paimon.data.BinaryArrayWriter;
+import org.apache.paimon.data.BinaryMap;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.Objects;
 
-import static org.apache.flink.table.store.data.BinaryString.fromString;
+import static org.apache.paimon.data.BinaryString.fromString;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ListSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/ListSerializerTest.java
similarity index 97%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ListSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/ListSerializerTest.java
index 4c4306288..06a762503 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ListSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/ListSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import java.util.ArrayList;
 import java.util.Collections;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/LongSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/LongSerializerTest.java
similarity index 96%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/LongSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/LongSerializerTest.java
index a75061dc7..f93e4f683 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/LongSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/LongSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import java.util.Random;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/NullableSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/NullableSerializerTest.java
similarity index 97%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/NullableSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/NullableSerializerTest.java
index b97551a7f..b33cae75d 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/NullableSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/NullableSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/RowCompactedSerializerTest.java
similarity index 92%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/RowCompactedSerializerTest.java
index 3752800b5..6bce9f09e 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/RowCompactedSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/RowCompactedSerializerTest.java
@@ -16,20 +16,21 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
 
-import static org.apache.flink.table.store.data.BinaryString.fromString;
-import static org.apache.flink.table.store.data.serializer.InternalRowSerializerTest.createArray;
-import static org.apache.flink.table.store.data.serializer.InternalRowSerializerTest.createMap;
-import static org.apache.flink.table.store.data.serializer.InternalRowSerializerTest.createRow;
-import static org.apache.flink.table.store.data.serializer.InternalRowSerializerTest.deepEqualsInternalRow;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+
+import static org.apache.paimon.data.BinaryString.fromString;
+import static org.apache.paimon.data.serializer.InternalRowSerializerTest.createArray;
+import static org.apache.paimon.data.serializer.InternalRowSerializerTest.createMap;
+import static org.apache.paimon.data.serializer.InternalRowSerializerTest.createRow;
+import static org.apache.paimon.data.serializer.InternalRowSerializerTest.deepEqualsInternalRow;
 
 /** Test for {@link RowCompactedSerializer}. */
 abstract class RowCompactedSerializerTest extends SerializerTestInstance<InternalRow> {
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestBase.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestBase.java
similarity index 99%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestBase.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestBase.java
index b6da7dddf..4fc0353de 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestBase.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import org.apache.flink.table.store.io.DataInputDeserializer;
 import org.apache.flink.table.store.io.DataInputView;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestInstance.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestInstance.java
similarity index 96%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestInstance.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestInstance.java
index edb7b34ba..6cfdc9b76 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/SerializerTestInstance.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestInstance.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 /** A {@link SerializerTestBase} passing serializer by constructor. */
 public abstract class SerializerTestInstance<T> extends SerializerTestBase<T> {
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ShortSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/ShortSerializerTest.java
similarity index 96%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ShortSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/ShortSerializerTest.java
index 6603bf7ae..0ae8c8e75 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/ShortSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/ShortSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
 import java.util.Random;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/TimestampSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/TimestampSerializerTest.java
similarity index 95%
rename from paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/TimestampSerializerTest.java
rename to paimon-common/src/test/java/org/apache/paimon/data/serializer/TimestampSerializerTest.java
index 53419f953..7d67459a4 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/data/serializer/TimestampSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/TimestampSerializerTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.data.serializer;
+package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.data.Timestamp;
+import org.apache.paimon.data.Timestamp;
 
 /** Test for {@link TimestampSerializer}. */
 public abstract class TimestampSerializerTest extends SerializerTestBase<Timestamp> {
diff --git a/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java b/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
index 2a7cac4d6..d9f721ed1 100644
--- a/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
+++ b/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
@@ -18,14 +18,6 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.GenericArray;
-import org.apache.flink.table.store.data.GenericMap;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.PositionOutputStream;
@@ -44,6 +36,14 @@ import org.apache.flink.table.store.types.TimestampType;
 import org.apache.flink.table.store.types.VarBinaryType;
 import org.apache.flink.table.store.types.VarCharType;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.GenericArray;
+import org.apache.paimon.data.GenericMap;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.Timestamp;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
index a4989bc2d..89506c73e 100644
--- a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
+++ b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
@@ -18,10 +18,6 @@
 
 package org.apache.paimon.docs.configuration;
 
-import org.apache.flink.table.store.annotation.ConfigGroup;
-import org.apache.flink.table.store.annotation.ConfigGroups;
-import org.apache.flink.table.store.annotation.Documentation;
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.options.ConfigOption;
 import org.apache.flink.table.store.options.description.DescribedEnum;
 import org.apache.flink.table.store.options.description.Description;
@@ -33,6 +29,10 @@ import org.apache.flink.table.store.utils.Pair;
 import org.apache.flink.table.store.utils.ThrowingConsumer;
 import org.apache.flink.table.store.utils.TimeUtils;
 
+import org.apache.paimon.annotation.ConfigGroup;
+import org.apache.paimon.annotation.ConfigGroups;
+import org.apache.paimon.annotation.Documentation;
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
index 9c6f74d08..356961d85 100644
--- a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
@@ -18,9 +18,6 @@
 
 package org.apache.paimon.docs.configuration;
 
-import org.apache.flink.table.store.annotation.ConfigGroup;
-import org.apache.flink.table.store.annotation.ConfigGroups;
-import org.apache.flink.table.store.annotation.Documentation;
 import org.apache.flink.table.store.options.ConfigOption;
 import org.apache.flink.table.store.options.ConfigOptions;
 import org.apache.flink.table.store.options.MemorySize;
@@ -30,6 +27,9 @@ import org.apache.flink.table.store.options.description.HtmlFormatter;
 import org.apache.flink.table.store.options.description.InlineElement;
 import org.apache.flink.table.store.utils.Pair;
 
+import org.apache.paimon.annotation.ConfigGroup;
+import org.apache.paimon.annotation.ConfigGroups;
+import org.apache.paimon.annotation.Documentation;
 import org.apache.paimon.docs.configuration.data.TestCommonOptions;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
index 077f54ed8..773ce46ce 100644
--- a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.docs.configuration;
 
-import org.apache.flink.table.store.annotation.Documentation;
 import org.apache.flink.table.store.options.ConfigOption;
 import org.apache.flink.table.store.utils.Pair;
 
+import org.apache.paimon.annotation.Documentation;
 import org.jsoup.Jsoup;
 import org.jsoup.nodes.Document;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
index 5100b0c69..faa591096 100644
--- a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
@@ -18,10 +18,11 @@
 
 package org.apache.paimon.docs.configuration.data;
 
-import org.apache.flink.table.store.annotation.Documentation;
 import org.apache.flink.table.store.options.ConfigOption;
 import org.apache.flink.table.store.options.ConfigOptions;
 
+import org.apache.paimon.annotation.Documentation;
+
 /** Collection of test {@link ConfigOptions ConfigOptions}. */
 @SuppressWarnings("unused") // this class is only accessed reflectively
 public class TestCommonOptions {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
index af27e44ae..65073e571 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
@@ -30,7 +30,6 @@ import org.apache.flink.table.factories.DynamicTableSinkFactory;
 import org.apache.flink.table.factories.DynamicTableSourceFactory;
 import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
 import org.apache.flink.table.store.CoreOptions.LogConsistency;
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.TableSchema;
@@ -40,6 +39,7 @@ import org.apache.flink.table.store.table.FileStoreTableFactory;
 import org.apache.flink.table.store.utils.Preconditions;
 import org.apache.flink.table.types.logical.RowType;
 
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.connector.log.LogStoreTableFactory;
 import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.connector.source.SystemTableSource;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
index ae3ce108d..71408352e 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
@@ -23,10 +23,11 @@ import org.apache.flink.api.common.typeutils.TypeSerializerSchemaCompatibility;
 import org.apache.flink.api.common.typeutils.TypeSerializerSnapshot;
 import org.apache.flink.core.memory.DataInputView;
 import org.apache.flink.core.memory.DataOutputView;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.serializer.BinaryRowSerializer;
 import org.apache.flink.table.store.memory.MemorySegment;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
+
 import java.io.IOException;
 import java.util.Objects;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
index 8e892c571..591f1cb85 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
@@ -42,7 +42,6 @@ import org.apache.flink.table.catalog.stats.CatalogTableStatistics;
 import org.apache.flink.table.descriptors.DescriptorProperties;
 import org.apache.flink.table.expressions.Expression;
 import org.apache.flink.table.factories.Factory;
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.file.catalog.Catalog;
 import org.apache.flink.table.store.file.catalog.Identifier;
 import org.apache.flink.table.store.file.schema.Schema;
@@ -51,6 +50,8 @@ import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.Table;
 import org.apache.flink.table.types.logical.RowType;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.HashMap;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowData.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowData.java
index 87d48fd6c..7a96fc2c7 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowData.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowData.java
@@ -25,14 +25,15 @@ import org.apache.flink.table.data.RawValueData;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.data.StringData;
 import org.apache.flink.table.data.TimestampData;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.types.RowKind;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
+
 import static org.apache.paimon.connector.FlinkRowWrapper.fromFlinkRowKind;
 
 /** Convert to Flink row data. */
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java
index e2cf67b98..e36337ad1 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java
@@ -21,15 +21,16 @@ package org.apache.paimon.connector;
 import org.apache.flink.table.data.DecimalData;
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.StringData;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.Decimal;
-import org.apache.flink.table.store.data.InternalArray;
-import org.apache.flink.table.store.data.InternalMap;
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.types.logical.LogicalType;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
+
 import static org.apache.paimon.connector.FlinkRowData.toFlinkRowKind;
 import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
index f00e90bf1..497f1a521 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
@@ -28,7 +28,6 @@ import org.apache.flink.table.expressions.TypeLiteralExpression;
 import org.apache.flink.table.expressions.ValueLiteralExpression;
 import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
 import org.apache.flink.table.functions.FunctionDefinition;
-import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.utils.TypeUtils;
@@ -37,6 +36,8 @@ import org.apache.flink.table.types.logical.LogicalType;
 import org.apache.flink.table.types.logical.LogicalTypeFamily;
 import org.apache.flink.table.types.logical.RowType;
 
+import org.apache.paimon.data.BinaryString;
+
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
index 75281e4ec..938e8814d 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
@@ -18,12 +18,12 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.annotation.Documentation;
 import org.apache.flink.table.store.options.ConfigOption;
 import org.apache.flink.table.store.options.MemorySize;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.options.description.Description;
 
+import org.apache.paimon.annotation.Documentation;
 import org.rocksdb.BlockBasedTableConfig;
 import org.rocksdb.BloomFilter;
 import org.rocksdb.ColumnFamilyOptions;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/VersionedSerializerWrapper.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/VersionedSerializerWrapper.java
index 821d7b79c..ce0981966 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/VersionedSerializerWrapper.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/VersionedSerializerWrapper.java
@@ -19,7 +19,8 @@
 package org.apache.paimon.connector;
 
 import org.apache.flink.core.io.SimpleVersionedSerializer;
-import org.apache.flink.table.store.data.serializer.VersionedSerializer;
+
+import org.apache.paimon.data.serializer.VersionedSerializer;
 
 import java.io.IOException;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
index ecf90e934..21c1b6e9f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
@@ -23,8 +23,8 @@ import org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer.Semantic;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
 import org.apache.flink.table.store.CoreOptions.LogConsistency;
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.connector.log.LogSinkProvider;
 import org.apache.paimon.connector.sink.LogSinkFunction;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
index 38e19b36c..1854dd105 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
@@ -25,10 +25,10 @@ import org.apache.flink.connector.kafka.source.reader.deserializer.KafkaRecordDe
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.CoreOptions.LogConsistency;
 import org.apache.flink.table.store.CoreOptions.StartupMode;
-import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.types.DataType;
 
 import org.apache.kafka.common.TopicPartition;
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.connector.log.LogSourceProvider;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
index 688963b8c..d31757108 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
@@ -23,7 +23,6 @@ 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.store.CoreOptions;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateFilter;
 import org.apache.flink.table.store.file.schema.TableSchema;
@@ -39,6 +38,7 @@ import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
 
 import org.apache.paimon.connector.FlinkRowData;
 import org.apache.paimon.connector.FlinkRowWrapper;
+import org.apache.paimon.data.InternalRow;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java
index ef54b4eeb..67e760f1b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java
@@ -18,9 +18,10 @@
 
 package org.apache.paimon.connector.lookup;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 import java.util.HashSet;
 import java.util.Iterator;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java
index 95e9b5a06..47b47cdea 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java
@@ -18,13 +18,14 @@
 
 package org.apache.paimon.connector.lookup;
 
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.InternalSerializers;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.KeyProjectedRow;
 import org.apache.flink.table.store.utils.TypeUtils;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalSerializers;
+
 import java.io.IOException;
 import java.util.Collections;
 import java.util.Iterator;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBSetState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBSetState.java
index 5aed1281c..5302c7524 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBSetState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBSetState.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.connector.lookup;
 
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.Serializer;
-
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.Serializer;
 import org.rocksdb.ColumnFamilyHandle;
 import org.rocksdb.RocksDB;
 import org.rocksdb.RocksDBException;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
index 30e3c4ac7..24c06e220 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
@@ -18,14 +18,14 @@
 
 package org.apache.paimon.connector.lookup;
 
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.Serializer;
 import org.apache.flink.table.store.io.DataInputDeserializer;
 import org.apache.flink.table.store.io.DataOutputSerializer;
 
 import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
 import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.Serializer;
 import org.rocksdb.ColumnFamilyHandle;
 import org.rocksdb.RocksDB;
 import org.rocksdb.WriteOptions;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java
index b12f9d16c..5891b449b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.connector.lookup;
 
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.Serializer;
-
 import org.apache.paimon.connector.RocksDBOptions;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.Serializer;
 import org.rocksdb.ColumnFamilyDescriptor;
 import org.rocksdb.ColumnFamilyHandle;
 import org.rocksdb.ColumnFamilyOptions;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBValueState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBValueState.java
index c147cb2eb..a9004379d 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBValueState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBValueState.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.connector.lookup;
 
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.Serializer;
-
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.Serializer;
 import org.rocksdb.ColumnFamilyHandle;
 import org.rocksdb.RocksDB;
 import org.rocksdb.RocksDBException;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java
index d1f3ae279..1b619f386 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java
@@ -18,13 +18,14 @@
 
 package org.apache.paimon.connector.lookup;
 
-import org.apache.flink.table.store.data.InternalRow;
-import org.apache.flink.table.store.data.serializer.InternalSerializers;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.KeyProjectedRow;
 import org.apache.flink.table.store.utils.TypeUtils;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalSerializers;
+
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Iterator;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
index a18087263..2941edda8 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
@@ -23,12 +23,12 @@ import org.apache.flink.runtime.plugable.SerializationDelegate;
 import org.apache.flink.streaming.runtime.partitioner.StreamPartitioner;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.table.sink.BucketComputer;
 import org.apache.flink.table.store.table.sink.PartitionComputer;
 
 import org.apache.paimon.connector.FlinkRowWrapper;
+import org.apache.paimon.data.InternalRow;
 
 import java.util.Objects;
 import java.util.function.Function;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
index 2bcc5077c..fc129034f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
@@ -30,14 +30,14 @@ import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.sink.SinkRecord;
 
 import org.apache.paimon.connector.BinaryRowTypeSerializer;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
index 780f6e2f6..b26699269 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
@@ -23,11 +23,11 @@ import org.apache.flink.runtime.plugable.SerializationDelegate;
 import org.apache.flink.streaming.runtime.partitioner.StreamPartitioner;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.utils.OffsetRow;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.connector.FlinkRowWrapper;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 
 /**
  * {@link StreamPartitioner} to partition {@link RowData} according to its hash value from an {@link
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
index 995ff8dfa..3109d8935 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
@@ -22,8 +22,6 @@ import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
 import org.apache.flink.table.store.file.utils.OffsetRow;
@@ -31,6 +29,8 @@ import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.utils.Preconditions;
 
 import org.apache.paimon.connector.FlinkRowWrapper;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 
 import java.io.IOException;
 import java.util.List;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
index d48dd6417..6c8983d52 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
@@ -21,12 +21,13 @@ package org.apache.paimon.connector.sink;
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.sink.SinkRecord;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+
 import java.io.IOException;
 import java.io.Serializable;
 import java.util.List;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
index a4328ab70..2baa8be89 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
@@ -21,8 +21,6 @@ package org.apache.paimon.connector.sink;
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.disk.IOManagerImpl;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.table.FileStoreTable;
@@ -30,6 +28,8 @@ import org.apache.flink.table.store.table.sink.CommitMessage;
 import org.apache.flink.table.store.table.sink.SinkRecord;
 import org.apache.flink.table.store.table.sink.TableWriteImpl;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitReader.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitReader.java
index 6cae5ebb0..087a0c7b7 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitReader.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitReader.java
@@ -27,13 +27,13 @@ import org.apache.flink.connector.file.src.util.MutableRecordAndPosition;
 import org.apache.flink.connector.file.src.util.Pool;
 import org.apache.flink.connector.file.src.util.RecordAndPosition;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.reader.RecordReader.RecordIterator;
 import org.apache.flink.table.store.table.source.Split;
 import org.apache.flink.table.store.table.source.TableRead;
 
 import org.apache.paimon.connector.FlinkRowData;
+import org.apache.paimon.data.InternalRow;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
index 8d8c50c6a..a45b3d748 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
@@ -20,7 +20,8 @@ package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.typeutils.SerializerTestBase;
 import org.apache.flink.api.common.typeutils.TypeSerializer;
-import org.apache.flink.table.store.data.BinaryRow;
+
+import org.apache.paimon.data.BinaryRow;
 
 import java.util.Random;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
index 3688d1770..181bf7e76 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
@@ -25,7 +25,6 @@ import org.apache.flink.table.expressions.ResolvedExpression;
 import org.apache.flink.table.expressions.ValueLiteralExpression;
 import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
 import org.apache.flink.table.functions.FunctionDefinition;
-import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
 import org.apache.flink.table.types.DataType;
@@ -36,6 +35,7 @@ import org.apache.flink.table.types.logical.RowType;
 import org.apache.flink.table.types.logical.VarCharType;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.params.ParameterizedTest;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
index 896787dde..337d175a1 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
@@ -19,9 +19,6 @@
 package org.apache.paimon.connector.action;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.data.DataFormatTestUtil;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.catalog.Catalog;
 import org.apache.flink.table.store.file.catalog.CatalogFactory;
 import org.apache.flink.table.store.file.catalog.Identifier;
@@ -37,6 +34,9 @@ import org.apache.flink.table.store.table.source.TableRead;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.data.DataFormatTestUtil;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
index 36c25055e..a2bbd019e 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
@@ -23,7 +23,6 @@ import org.apache.flink.core.execution.JobClient;
 import org.apache.flink.streaming.api.CheckpointingMode;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.source.DataSplit;
@@ -35,6 +34,7 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.CommonTestUtils;
 
 import org.apache.paimon.connector.FlinkConnectorOptions;
+import org.apache.paimon.data.BinaryString;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.Timeout;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
index 4971f8bed..ad9f88c78 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
@@ -18,7 +18,6 @@
 
 package org.apache.paimon.connector.action;
 
-import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.table.store.table.FileStoreTable;
@@ -27,6 +26,7 @@ import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.data.BinaryString;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.Arguments;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
index dbb9aaf10..31c310e1c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
@@ -18,7 +18,6 @@
 
 package org.apache.paimon.connector.action;
 
-import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.source.DataTableScan;
@@ -26,6 +25,7 @@ import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryString;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.ValueSource;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
index 0dcc3e69f..a623fe1c0 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
@@ -36,7 +36,6 @@ import org.apache.flink.table.runtime.connector.source.ScanRuntimeProviderContex
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
 import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
 import org.apache.flink.table.store.CoreOptions.LogConsistency;
-import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.table.sink.SinkRecord;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.types.DataType;
@@ -46,6 +45,7 @@ import org.apache.flink.table.types.logical.RowType;
 import org.apache.flink.table.types.utils.TypeConversions;
 
 import org.apache.paimon.connector.log.LogStoreTableFactory;
+import org.apache.paimon.data.GenericRow;
 
 import java.util.Arrays;
 import java.util.Collections;
@@ -58,10 +58,10 @@ import java.util.stream.IntStream;
 
 import static org.apache.flink.table.store.CoreOptions.LOG_CHANGELOG_MODE;
 import static org.apache.flink.table.store.CoreOptions.LOG_CONSISTENCY;
-import static org.apache.flink.table.store.data.BinaryRow.EMPTY_ROW;
 import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.apache.paimon.connector.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
 import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
+import static org.apache.paimon.data.BinaryRow.EMPTY_ROW;
 
 /** Utils for the test of {@link KafkaLogStoreFactory}. */
 public class KafkaLogTestUtils {
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java
index d1a095861..7e296b30c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java
@@ -18,13 +18,13 @@
 
 package org.apache.paimon.connector.lookup;
 
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
index 2da3db628..c04204e6a 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
@@ -23,7 +23,6 @@ import org.apache.flink.api.common.typeutils.TypeSerializer;
 import org.apache.flink.runtime.checkpoint.OperatorSubtaskState;
 import org.apache.flink.streaming.api.watermark.Watermark;
 import org.apache.flink.streaming.util.OneInputStreamOperatorTestHarness;
-import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.file.manifest.ManifestCommittableSerializer;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
@@ -32,6 +31,7 @@ import org.apache.flink.table.store.table.sink.CommitMessage;
 import org.apache.flink.table.store.table.sink.StreamTableWrite;
 
 import org.apache.paimon.connector.VersionedSerializerWrapper;
+import org.apache.paimon.data.GenericRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
index 7de87b40c..faa414a51 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
@@ -19,7 +19,6 @@
 package org.apache.paimon.connector.sink;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;
@@ -35,6 +34,7 @@ import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.CloseableIterator;
 
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
index 3aabd750d..58369d495 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
@@ -22,8 +22,6 @@ import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
@@ -43,6 +41,8 @@ import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.connector.source.CompactorSourceBuilder;
 import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
index 8c3fc3ea7..436432d6d 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
@@ -25,8 +25,6 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.table.store.table.FileStoreTable;
@@ -36,6 +34,8 @@ import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.paimon.connector.CatalogITCaseBase;
 import org.apache.paimon.connector.FlinkConnectorOptions;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
index ce11e32a2..35b8e57ec 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
@@ -21,10 +21,6 @@ package org.apache.paimon.connector.source;
 import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.BinaryRowWriter;
-import org.apache.flink.table.store.data.BinaryString;
-import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
@@ -41,6 +37,10 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.util.CloseableIterator;
 
 import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
index 5fde50fbd..1fa67a848 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
@@ -24,7 +24,6 @@ import org.apache.flink.connector.base.source.reader.splitreader.SplitsAddition;
 import org.apache.flink.connector.base.source.reader.splitreader.SplitsChange;
 import org.apache.flink.connector.file.src.util.RecordAndPosition;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.schema.Schema;
@@ -38,6 +37,7 @@ import org.apache.flink.table.types.logical.IntType;
 import org.apache.flink.table.types.logical.RowType;
 import org.apache.flink.types.RowKind;
 
+import org.apache.paimon.data.GenericRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
index 7c5dbeeb7..8709ef469 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.connector.source;
 
 import org.apache.flink.core.io.SimpleVersionedSerialization;
-import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.stats.StatsTestUtils;
 import org.apache.flink.table.store.table.source.DataSplit;
 
+import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
index 4d6043e57..3c20db9ce 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
@@ -20,9 +20,6 @@ package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.java.tuple.Tuple2;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.data.BinaryRow;
-import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.memory.HeapMemorySegmentPool;
@@ -51,6 +48,9 @@ import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
 
 import java.util.ArrayList;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/avro/AbstractAvroBulkFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AbstractAvroBulkFormat.java
index ec245fb1a..431274381 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/avro/AbstractAvroBulkFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AbstractAvroBulkFormat.java
@@ -18,7 +18,6 @@
 
 package org.apache.paimon.format.avro;
 
-import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
... 2019 lines suppressed ...


[incubator-paimon] 27/32: [core] Rename paimon: tablestore to paimon

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 19ec6f2031f53cea6a305dac6381bf3459090ea8
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Sat Mar 18 00:20:34 2023 +0800

    [core] Rename paimon: tablestore to paimon
---
 README.md                                          |   2 +-
 docs/content/engines/flink.md                      |   4 +-
 docs/content/engines/hive.md                       |  12 +-
 docs/content/engines/spark2.md                     |   6 +-
 docs/content/engines/spark3.md                     |  16 +-
 docs/content/filesystems/oss.md                    |  22 +--
 docs/content/filesystems/s3.md                     |  22 +--
 docs/content/how-to/creating-catalogs.md           |  24 +--
 docs/content/how-to/creating-tables.md             |   4 +-
 docs/content/how-to/lookup-joins.md                |   2 +-
 docs/content/maintenance/configurations.md         |   6 +-
 .../generated/catalog_configuration.html           |   2 +-
 .../shortcodes/generated/core_configuration.html   |   4 +-
 .../generated/flink_connector_configuration.html   |   2 +-
 .../src/main/resources/bin/metric_client.sh        |   2 +-
 .../src/main/resources/bin/run_benchmark.sh        |   2 +-
 .../apache/paimon/benchmark/TableBenchmark.java    |   3 +-
 .../org/apache/paimon/catalog/CatalogContext.java  |   2 +-
 .../src/main/java/org/apache/paimon/fs/FileIO.java |   3 +-
 .../java/org/apache/paimon/fs/PluginFileIO.java    |   3 +-
 .../org/apache/paimon/fs/hadoop/HadoopFileIO.java  |   3 +-
 .../org/apache/paimon/fs/local/LocalFileIO.java    |   3 +-
 .../org/apache/paimon/options/CatalogOptions.java  |   3 +-
 .../java/org/apache/paimon/types/DataType.java     |   2 +-
 .../java/org/apache/paimon/fs/FileIOFinder.java    |   3 +-
 .../main/java/org/apache/paimon/CoreOptions.java   |   4 +-
 .../src/main/java/org/apache/paimon/Snapshot.java  |  32 ++--
 .../src/main/java/org/apache/paimon/WriteMode.java |   4 +-
 .../java/org/apache/paimon/catalog/Catalog.java    |   2 +-
 .../org/apache/paimon/catalog/CatalogFactory.java  |   4 +-
 .../paimon/catalog/FileSystemCatalogFactory.java   |   2 -
 .../paimon/sort/BinaryInMemorySortBuffer.java      |   2 +-
 .../paimon/table/AbstractFileStoreTable.java       |   2 +-
 .../apache/paimon/table/FileStoreTableFactory.java |   3 +-
 .../org/apache/paimon/utils/JsonSerdeUtil.java     |   2 +-
 ...ry => org.apache.paimon.catalog.CatalogFactory} |   0
 .../apache/paimon/catalog/CatalogFactoryTest.java  |   2 -
 .../org/apache/paimon/utils/TraceableFileIO.java   |   3 +-
 paimon-e2e-tests/pom.xml                           |   2 +-
 .../apache/paimon/tests/FileStoreBatchE2eTest.java |   4 +-
 .../paimon/tests/FileStoreStreamE2eTest.java       |   4 +-
 .../apache/paimon/tests/FlinkActionsE2eTest.java   |  10 +-
 .../java/org/apache/paimon/tests/HiveE2eTest.java  |   2 +-
 .../org/apache/paimon/tests/LogStoreE2eTest.java   |   4 +-
 .../java/org/apache/paimon/tests/SparkE2eTest.java |   8 +-
 .../main/java/org/apache/paimon/oss/OSSFileIO.java |   3 +-
 .../main/java/org/apache/paimon/oss/OSSLoader.java |   3 +-
 .../main/java/org/apache/paimon/s3/S3FileIO.java   |   3 +-
 .../main/java/org/apache/paimon/s3/S3Loader.java   |   3 +-
 .../connector/AbstractTableStoreFactory.java       |   4 +-
 .../org/apache/paimon/connector/FlinkCatalog.java  |   4 +-
 .../paimon/connector/FlinkCatalogFactory.java      |   3 +-
 .../paimon/connector/FlinkConnectorOptions.java    |   2 +-
 .../org/apache/paimon/connector/FlinkFileIO.java   |   2 +-
 .../org/apache/paimon/connector/FlinkUtils.java    |   2 +-
 .../connector/TableStoreConnectorFactory.java      |   2 +-
 .../apache/paimon/connector/action/ActionBase.java |   2 +-
 .../paimon/connector/sink/FileStoreSink.java       |   2 +-
 .../apache/paimon/connector/sink/FlinkSink.java    |   2 +-
 .../paimon/connector/sink/StoreSinkWrite.java      |   2 +-
 .../paimon/connector/sink/TableStoreSink.java      |   2 +-
 .../paimon/connector/source/FlinkSource.java       |   2 +-
 .../paimon/connector/source/FlinkTableSource.java  |   2 +-
 .../CompositePkAndMultiPartitionedTableITCase.java |   2 +-
 .../ComputedColumnAndWatermarkTableITCase.java     |   2 +-
 .../apache/paimon/connector/CreateTableITCase.java |   2 +-
 .../apache/paimon/connector/DropTableITCase.java   |   2 +-
 .../paimon/connector/FileSystemCatalogITCase.java  |   3 +-
 .../apache/paimon/connector/FlinkCatalogTest.java  |   4 +-
 .../apache/paimon/connector/LogSystemITCase.java   |   3 +-
 .../paimon/connector/ReadWriteTableITCase.java     |   2 +-
 .../paimon/connector/StreamingWarehouseITCase.java |   2 +-
 .../paimon/connector/TableStoreTestBase.java       |   2 +-
 .../paimon/connector/action/ActionITCaseBase.java  |   3 +-
 paimon-format/pom.xml                              |  32 ++--
 .../paimon/format/parquet/ParquetInputFile.java    |   2 +-
 .../paimon/format/parquet/ParquetInputStream.java  |   2 +-
 paimon-hive/paimon-hive-catalog/pom.xml            |  16 +-
 .../java/org/apache/paimon/hive/HiveCatalog.java   |   9 +-
 .../org/apache/paimon/hive/HiveCatalogFactory.java |   5 +-
 ...ry => org.apache.paimon.catalog.CatalogFactory} |   0
 .../org/apache/paimon/hive/HiveCatalogITCase.java  |   8 +-
 .../java/org/apache/paimon/hive/HiveSchema.java    |   9 +-
 .../apache/paimon/hive/TableStoreHiveMetaHook.java |   2 +-
 .../paimon/hive/TableStoreHiveStorageHandler.java  |   2 +-
 .../org/apache/paimon/hive/TableStoreJobConf.java  |   4 +-
 .../org/apache/paimon/hive/TableStoreSerDe.java    |   2 +-
 .../paimon/hive/mapred/TableStoreInputFormat.java  |   5 +-
 .../paimon/hive/mapred/TableStoreInputSplit.java   |   3 +-
 .../paimon/hive/mapred/TableStoreOutputFormat.java |   2 +-
 .../paimon/hive/mapred/TableStoreRecordReader.java |   2 +-
 .../apache/paimon/hive/HiveTableSchemaTest.java    |  12 +-
 .../apache/paimon/spark/SparkDataSourceReader.java |   2 +-
 .../apache/paimon/spark/SparkInputPartition.java   |   2 +-
 .../java/org/apache/paimon/spark/SparkSource.java  |   7 +-
 .../org/apache/paimon/spark/SparkReadITCase.java   |   5 +-
 .../java/org/apache/paimon/spark/SparkCatalog.java |   5 +-
 .../apache/paimon/spark/SparkInputPartition.java   |   2 +-
 .../apache/paimon/spark/SparkReaderFactory.java    |   2 +-
 .../java/org/apache/paimon/spark/SparkScan.java    |   4 +-
 .../org/apache/paimon/spark/SparkScanBuilder.java  |   2 +-
 .../java/org/apache/paimon/spark/SparkSource.java  |   7 +-
 .../java/org/apache/paimon/spark/SparkTable.java   |   2 +-
 .../org/apache/paimon/spark/SparkReadITCase.java   |  77 ++++----
 .../org/apache/paimon/spark/SparkReadTestBase.java |  12 +-
 .../org/apache/paimon/spark/SparkS3ITCase.java     |  10 +-
 .../paimon/spark/SparkSchemaEvolutionITCase.java   | 193 ++++++++++-----------
 .../org/apache/paimon/spark/SparkWriteITCase.java  |   8 +-
 108 files changed, 369 insertions(+), 413 deletions(-)

diff --git a/README.md b/README.md
index 9d40869d7..b11440d7b 100644
--- a/README.md
+++ b/README.md
@@ -9,7 +9,7 @@ Flink Table Store is developed under the umbrella of [Apache Flink](https://flin
 Please check out the full [documentation](https://nightlies.apache.org/flink/paimon-docs-master/), hosted by the
 [ASF](https://www.apache.org/), for detailed information and user guides.
 
-Check our [quick-start](https://nightlies.apache.org/flink/paimon-docs-master/docs/try-paimon/quick-start/) guide for simple setup instructions to get you started with the table store.
+Check our [quick-start](https://nightlies.apache.org/flink/paimon-docs-master/docs/try-paimon/quick-start/) guide for simple setup instructions to get you started with the paimon.
 
 ## Building
 
diff --git a/docs/content/engines/flink.md b/docs/content/engines/flink.md
index 65afd124f..ec7ddce69 100644
--- a/docs/content/engines/flink.md
+++ b/docs/content/engines/flink.md
@@ -71,7 +71,7 @@ tar -xzf flink-*.tgz
 
 **Step 2: Copy Table Store Bundled Jar**
 
-Copy table store bundled jar to the `lib` directory of your Flink home.
+Copy paimon bundled jar to the `lib` directory of your Flink home.
 
 ```bash
 cp paimon-flink-*.jar <FLINK_HOME>/lib/
@@ -138,7 +138,7 @@ CREATE TEMPORARY TABLE word_table (
     'fields.word.length' = '1'
 );
 
--- table store requires checkpoint interval in streaming mode
+-- paimon requires checkpoint interval in streaming mode
 SET 'execution.checkpointing.interval' = '10 s';
 
 -- write streaming data to dynamic table
diff --git a/docs/content/engines/hive.md b/docs/content/engines/hive.md
index 465a66333..ac7488740 100644
--- a/docs/content/engines/hive.md
+++ b/docs/content/engines/hive.md
@@ -70,13 +70,13 @@ You can find Hive connector jar in `./paimon-hive/paimon-hive-connector-<hive-ve
 There are several ways to add this jar to Hive.
 
 * You can create an `auxlib` folder under the root directory of Hive, and copy `paimon-hive-connector-{{< version >}}.jar` into `auxlib`.
-* You can also copy this jar to a path accessible by Hive, then use `add jar /path/to/paimon-hive-connector-{{< version >}}.jar` to enable table store support in Hive. Note that this method is not recommended. If you're using the MR execution engine and running a join statement, you may be faced with the exception `org.apache.hive.com.esotericsoftware.kryo.kryoexception: unable to find class`.
+* You can also copy this jar to a path accessible by Hive, then use `add jar /path/to/paimon-hive-connector-{{< version >}}.jar` to enable paimon support in Hive. Note that this method is not recommended. If you're using the MR execution engine and running a join statement, you may be faced with the exception `org.apache.hive.com.esotericsoftware.kryo.kryoexception: unable to find class`.
 
 NOTE: If you are using HDFS, make sure that the environment variable `HADOOP_HOME` or `HADOOP_CONF_DIR` is set.
 
 ## Quick Start with Table Store Hive Catalog
 
-By using table store Hive catalog, you can create, drop and insert into table store tables from Flink. These operations directly affect the corresponding Hive metastore. Tables created in this way can also be accessed directly from Hive.
+By using paimon Hive catalog, you can create, drop and insert into paimon tables from Flink. These operations directly affect the corresponding Hive metastore. Tables created in this way can also be accessed directly from Hive.
 
 **Step 1: Prepare Table Store Hive Catalog Jar File for Flink**
 
@@ -88,7 +88,7 @@ Execute the following Flink SQL script in Flink SQL client to define a Table Sto
 
 ```sql
 -- Flink SQL CLI
--- Define table store Hive catalog
+-- Define paimon Hive catalog
 
 CREATE CATALOG my_hive WITH (
   'type' = 'paimon',
@@ -97,11 +97,11 @@ CREATE CATALOG my_hive WITH (
   'warehouse' = '/path/to/table/store/warehouse'
 );
 
--- Use table store Hive catalog
+-- Use paimon Hive catalog
 
 USE CATALOG my_hive;
 
--- Create a table in table store Hive catalog (use "default" database by default)
+-- Create a table in paimon Hive catalog (use "default" database by default)
 
 CREATE TABLE test_table (
   a int,
@@ -155,7 +155,7 @@ OK
 
 ## Quick Start with External Table
 
-To access existing table store table, you can also register them as external tables in Hive. Run the following Hive SQL in Hive CLI.
+To access existing paimon table, you can also register them as external tables in Hive. Run the following Hive SQL in Hive CLI.
 
 ```sql
 -- Assume that paimon-hive-connector-{{< version >}}.jar is already in auxlib directory.
diff --git a/docs/content/engines/spark2.md b/docs/content/engines/spark2.md
index 2d99e1fdf..ffafa8eeb 100644
--- a/docs/content/engines/spark2.md
+++ b/docs/content/engines/spark2.md
@@ -74,7 +74,7 @@ After the guide, all table files should be stored under the path `/tmp/table_sto
 
 **Step 2: Specify Table Store Jar File**
 
-You can append path to table store jar file to the `--jars` argument when starting `spark-shell`.
+You can append path to paimon jar file to the `--jars` argument when starting `spark-shell`.
 
 ```bash
 spark-shell ... --jars /path/to/paimon-spark-2-{{< version >}}.jar
@@ -84,10 +84,10 @@ Alternatively, you can copy `paimon-spark-2-{{< version >}}.jar` under `spark/ja
 
 **Step 3: Query Table**
 
-Table store with Spark 2.4 does not support DDL. You can use the `Dataset` reader and register the `Dataset` as a temporary table. In spark shell:
+Paimon with Spark 2.4 does not support DDL. You can use the `Dataset` reader and register the `Dataset` as a temporary table. In spark shell:
 
 ```scala
-val dataset = spark.read.format("tablestore").load("file:/tmp/table_store/default.db/word_count")
+val dataset = spark.read.format("paimon").load("file:/tmp/table_store/default.db/word_count")
 dataset.createOrReplaceTempView("word_count")
 spark.sql("SELECT * FROM word_count").show()
 ```
diff --git a/docs/content/engines/spark3.md b/docs/content/engines/spark3.md
index df2111f70..c685cb60e 100644
--- a/docs/content/engines/spark3.md
+++ b/docs/content/engines/spark3.md
@@ -72,7 +72,7 @@ If you are using HDFS, make sure that the environment variable `HADOOP_HOME` or
 
 **Step 1: Specify Table Store Jar File**
 
-Append path to table store jar file to the `--jars` argument when starting `spark-sql`.
+Append path to paimon jar file to the `--jars` argument when starting `spark-sql`.
 
 ```bash
 spark-sql ... --jars /path/to/paimon-spark-3.3-{{< version >}}.jar
@@ -82,19 +82,19 @@ Alternatively, you can copy `paimon-spark-3.3-{{< version >}}.jar` under `spark/
 
 **Step 2: Specify Table Store Catalog**
 
-When starting `spark-sql`, use the following command to register Table Store’s Spark catalog with the name `tablestore`. Table files of the warehouse is stored under `/tmp/table_store`.
+When starting `spark-sql`, use the following command to register Table Store’s Spark catalog with the name `paimon`. Table files of the warehouse is stored under `/tmp/table_store`.
 
 ```bash
 spark-sql ... \
-    --conf spark.sql.catalog.tablestore=org.apache.paimon.spark.SparkCatalog \
-    --conf spark.sql.catalog.tablestore.warehouse=file:/tmp/table_store
+    --conf spark.sql.catalog.paimon=org.apache.paimon.spark.SparkCatalog \
+    --conf spark.sql.catalog.paimon.warehouse=file:/tmp/table_store
 ```
 
-After `spark-sql` command line has started, run the following SQL to create and switch to database `tablestore.default`.
+After `spark-sql` command line has started, run the following SQL to create and switch to database `paimon.default`.
 
 ```sql
-CREATE DATABASE tablestore.default;
-USE tablestore.default;
+CREATE DATABASE paimon.default;
+USE paimon.default;
 ```
 
 **Step 3: Create a table and Write Some Records**
@@ -142,7 +142,7 @@ spark-shell ... --jars /path/to/paimon-spark-3.3-{{< version >}}.jar
 ```
 
 ```scala
-val dataset = spark.read.format("tablestore").load("file:/tmp/table_store/default.db/my_table")
+val dataset = spark.read.format("paimon").load("file:/tmp/table_store/default.db/my_table")
 dataset.createOrReplaceTempView("my_table")
 spark.sql("SELECT * FROM my_table").show()
 ```
diff --git a/docs/content/filesystems/oss.md b/docs/content/filesystems/oss.md
index 56e789485..6cb0d7f43 100644
--- a/docs/content/filesystems/oss.md
+++ b/docs/content/filesystems/oss.md
@@ -31,7 +31,7 @@ under the License.
 ## Download
 
 [Download](https://repo.maven.apache.org/maven2/org/apache/flink/paimon-oss/{{< version >}}/paimon-oss-{{< version >}}.jar)
-flink table store shaded jar.
+flink paimon shaded jar.
 
 {{< /stable >}}
 
@@ -78,11 +78,11 @@ Place `paimon-oss-{{< version >}}.jar` together with `paimon-spark-{{< version >
 
 ```shell
 spark-sql \ 
-  --conf spark.sql.catalog.tablestore=org.apache.paimon.spark.SparkCatalog \
-  --conf spark.sql.catalog.tablestore.warehouse=oss://<bucket-name>/ \
-  --conf spark.sql.catalog.tablestore.fs.oss.endpoint=oss-cn-hangzhou.aliyuncs.com \
-  --conf spark.sql.catalog.tablestore.fs.oss.accessKeyId=xxx \
-  --conf spark.sql.catalog.tablestore.fs.oss.accessKeySecret=yyy
+  --conf spark.sql.catalog.paimon=org.apache.paimon.spark.SparkCatalog \
+  --conf spark.sql.catalog.paimon.warehouse=oss://<bucket-name>/ \
+  --conf spark.sql.catalog.paimon.fs.oss.endpoint=oss-cn-hangzhou.aliyuncs.com \
+  --conf spark.sql.catalog.paimon.fs.oss.accessKeyId=xxx \
+  --conf spark.sql.catalog.paimon.fs.oss.accessKeySecret=yyy
 ```
 
 {{< /tab >}}
@@ -94,9 +94,9 @@ NOTE: You need to ensure that Hive metastore can access `oss`.
 Place `paimon-oss-{{< version >}}.jar` together with `paimon-hive-connector-{{< version >}}.jar` under Hive's auxlib directory, and start like
 
 ```sql
-SET tablestore.fs.oss.endpoint=oss-cn-hangzhou.aliyuncs.com;
-SET tablestore.fs.oss.accessKeyId=xxx;
-SET tablestore.fs.oss.accessKeySecret=yyy;
+SET paimon.fs.oss.endpoint=oss-cn-hangzhou.aliyuncs.com;
+SET paimon.fs.oss.accessKeyId=xxx;
+SET paimon.fs.oss.accessKeySecret=yyy;
 ```
 
 And read table from hive metastore, table can be created by Flink or Spark, see [Catalog with Hive Metastore]({{< ref "how-to/creating-catalogs" >}})
@@ -109,9 +109,9 @@ SELECT COUNT(1) FROM test_table;
 
 {{< tab "Trino" >}}
 
-Place `paimon-oss-{{< version >}}.jar` together with `paimon-trino-{{< version >}}.jar` under `plugin/tablestore` directory.
+Place `paimon-oss-{{< version >}}.jar` together with `paimon-trino-{{< version >}}.jar` under `plugin/paimon` directory.
 
-Add options in `etc/catalog/tablestore.properties`.
+Add options in `etc/catalog/paimon.properties`.
 ```shell
 fs.oss.endpoint=oss-cn-hangzhou.aliyuncs.com
 fs.oss.accessKeyId=xxx
diff --git a/docs/content/filesystems/s3.md b/docs/content/filesystems/s3.md
index d47bafdfd..866b0ce49 100644
--- a/docs/content/filesystems/s3.md
+++ b/docs/content/filesystems/s3.md
@@ -31,7 +31,7 @@ under the License.
 ## Download
 
 [Download](https://repo.maven.apache.org/maven2/org/apache/flink/paimon-s3/{{< version >}}/paimon-s3-{{< version >}}.jar)
-flink table store shaded jar.
+flink paimon shaded jar.
 
 {{< /stable >}}
 
@@ -78,11 +78,11 @@ Place `paimon-s3-{{< version >}}.jar` together with `paimon-spark-{{< version >}
 
 ```shell
 spark-sql \ 
-  --conf spark.sql.catalog.tablestore=org.apache.paimon.spark.SparkCatalog \
-  --conf spark.sql.catalog.tablestore.warehouse=s3://<bucket>/<endpoint> \
-  --conf spark.sql.catalog.tablestore.s3.endpoint=your-endpoint-hostname \
-  --conf spark.sql.catalog.tablestore.s3.access-key=xxx \
-  --conf spark.sql.catalog.tablestore.s3.secret-key=yyy
+  --conf spark.sql.catalog.paimon=org.apache.paimon.spark.SparkCatalog \
+  --conf spark.sql.catalog.paimon.warehouse=s3://<bucket>/<endpoint> \
+  --conf spark.sql.catalog.paimon.s3.endpoint=your-endpoint-hostname \
+  --conf spark.sql.catalog.paimon.s3.access-key=xxx \
+  --conf spark.sql.catalog.paimon.s3.secret-key=yyy
 ```
 
 {{< /tab >}}
@@ -94,9 +94,9 @@ NOTE: You need to ensure that Hive metastore can access `s3`.
 Place `paimon-s3-{{< version >}}.jar` together with `paimon-hive-connector-{{< version >}}.jar` under Hive's auxlib directory, and start like
 
 ```sql
-SET tablestore.s3.endpoint=your-endpoint-hostname;
-SET tablestore.s3.access-key=xxx;
-SET tablestore.s3.secret-key=yyy;
+SET paimon.s3.endpoint=your-endpoint-hostname;
+SET paimon.s3.access-key=xxx;
+SET paimon.s3.secret-key=yyy;
 ```
 
 And read table from hive metastore, table can be created by Flink or Spark, see [Catalog with Hive Metastore]({{< ref "how-to/creating-catalogs" >}})
@@ -109,9 +109,9 @@ SELECT COUNT(1) FROM test_table;
 
 {{< tab "Trino" >}}
 
-Place `paimon-s3-{{< version >}}.jar` together with `paimon-trino-{{< version >}}.jar` under `plugin/tablestore` directory.
+Place `paimon-s3-{{< version >}}.jar` together with `paimon-trino-{{< version >}}.jar` under `plugin/paimon` directory.
 
-Add options in `etc/catalog/tablestore.properties`.
+Add options in `etc/catalog/paimon.properties`.
 ```shell
 s3.endpoint=your-endpoint-hostname
 s3.access-key=xxx
diff --git a/docs/content/how-to/creating-catalogs.md b/docs/content/how-to/creating-catalogs.md
index 8fdbba600..aaa1d8a67 100644
--- a/docs/content/how-to/creating-catalogs.md
+++ b/docs/content/how-to/creating-catalogs.md
@@ -54,18 +54,18 @@ USE CATALOG my_catalog;
 
 {{< tab "Spark3" >}}
 
-The following shell command registers a Table Store catalog named `tablestore`. Metadata and table files are stored under `hdfs://path/to/warehouse`.
+The following shell command registers a paimon catalog named `paimon`. Metadata and table files are stored under `hdfs://path/to/warehouse`.
 
 ```bash
 spark-sql ... \
-    --conf spark.sql.catalog.tablestore=org.apache.paimon.spark.SparkCatalog \
-    --conf spark.sql.catalog.tablestore.warehouse=hdfs://path/to/warehouse
+    --conf spark.sql.catalog.paimon=org.apache.paimon.spark.SparkCatalog \
+    --conf spark.sql.catalog.paimon.warehouse=hdfs://path/to/warehouse
 ```
 
-After `spark-sql` is started, you can switch to the `default` database of the `tablestore` catalog with the following SQL.
+After `spark-sql` is started, you can switch to the `default` database of the `paimon` catalog with the following SQL.
 
 ```sql
-USE tablestore.default;
+USE paimon.default;
 ```
 
 {{< /tab >}}
@@ -133,20 +133,20 @@ USE CATALOG my_hive;
 
 To enable Table Store Hive catalog support in Spark3, append the path of Table Store Hive catalog jar file to `--jars` argument when starting spark.
 
-The following shell command registers a Table tore Hive catalog named `tablestore`. Metadata and table files are stored under `hdfs://path/to/warehouse`. In addition, metadata is also stored in Hive metastore.
+The following shell command registers a Table tore Hive catalog named `paimon`. Metadata and table files are stored under `hdfs://path/to/warehouse`. In addition, metadata is also stored in Hive metastore.
 
 ```bash
 spark-sql ... \
-    --conf spark.sql.catalog.tablestore=org.apache.paimon.spark.SparkCatalog \
-    --conf spark.sql.catalog.tablestore.warehouse=hdfs://path/to/warehouse \
-    --conf spark.sql.catalog.tablestore.metastore=hive \
-    --conf spark.sql.catalog.tablestore.uri=thrift://<hive-metastore-host-name>:<port>
+    --conf spark.sql.catalog.paimon=org.apache.paimon.spark.SparkCatalog \
+    --conf spark.sql.catalog.paimon.warehouse=hdfs://path/to/warehouse \
+    --conf spark.sql.catalog.paimon.metastore=hive \
+    --conf spark.sql.catalog.paimon.uri=thrift://<hive-metastore-host-name>:<port>
 ```
 
-After `spark-sql` is started, you can switch to the `default` database of the `tablestore` catalog with the following SQL.
+After `spark-sql` is started, you can switch to the `default` database of the `paimon` catalog with the following SQL.
 
 ```sql
-USE tablestore.default;
+USE paimon.default;
 ```
 
 {{< /tab >}}
diff --git a/docs/content/how-to/creating-tables.md b/docs/content/how-to/creating-tables.md
index 5253f437d..9d585518f 100644
--- a/docs/content/how-to/creating-tables.md
+++ b/docs/content/how-to/creating-tables.md
@@ -342,7 +342,7 @@ CREATE TABLE MyTable (
 Spark3 only supports creating external tables through Scala API. The following Scala code loads the table located at `hdfs://path/to/table` into a `DataSet`.
 
 ```scala
-val dataset = spark.read.format("tablestore").load("hdfs://path/to/table")
+val dataset = spark.read.format("paimon").load("hdfs://path/to/table")
 ```
 
 {{< /tab >}}
@@ -352,7 +352,7 @@ val dataset = spark.read.format("tablestore").load("hdfs://path/to/table")
 Spark2 only supports creating external tables through Scala API. The following Scala code loads the table located at `hdfs://path/to/table` into a `DataSet`.
 
 ```scala
-val dataset = spark.read.format("tablestore").load("hdfs://path/to/table")
+val dataset = spark.read.format("paimon").load("hdfs://path/to/table")
 ```
 
 {{< /tab >}}
diff --git a/docs/content/how-to/lookup-joins.md b/docs/content/how-to/lookup-joins.md
index ed0a8a5af..04993afff 100644
--- a/docs/content/how-to/lookup-joins.md
+++ b/docs/content/how-to/lookup-joins.md
@@ -33,7 +33,7 @@ Table Store supports lookup joins on unpartitioned tables with primary keys in F
 First, let's create a Table Store table and update it in real-time.
 
 ```sql
--- Create a table store catalog
+-- Create a paimon catalog
 CREATE CATALOG my_catalog WITH (
   'type'='paimon',
   'warehouse'='hdfs://nn:8020/warehouse/path' -- or 'file://tmp/foo/bar'
diff --git a/docs/content/maintenance/configurations.md b/docs/content/maintenance/configurations.md
index 34ea60b09..721a8714a 100644
--- a/docs/content/maintenance/configurations.md
+++ b/docs/content/maintenance/configurations.md
@@ -28,18 +28,18 @@ under the License.
 
 ### CoreOptions
 
-Core options for table store.
+Core options for paimon.
 
 {{< generated/core_configuration >}}
 
 ### CatalogOptions
 
-Options for table store catalog.
+Options for paimon catalog.
 
 {{< generated/catalog_configuration >}}
 
 ### FlinkConnectorOptions
 
-Flink connector options for table store.
+Flink connector options for paimon.
 
 {{< generated/flink_connector_configuration >}}
diff --git a/docs/layouts/shortcodes/generated/catalog_configuration.html b/docs/layouts/shortcodes/generated/catalog_configuration.html
index 7d2740df7..614763934 100644
--- a/docs/layouts/shortcodes/generated/catalog_configuration.html
+++ b/docs/layouts/shortcodes/generated/catalog_configuration.html
@@ -36,7 +36,7 @@
             <td><h5>metastore</h5></td>
             <td style="word-wrap: break-word;">"filesystem"</td>
             <td>String</td>
-            <td>Metastore of table store catalog, supports filesystem and hive.</td>
+            <td>Metastore of paimon catalog, supports filesystem and hive.</td>
         </tr>
         <tr>
             <td><h5>table.type</h5></td>
diff --git a/docs/layouts/shortcodes/generated/core_configuration.html b/docs/layouts/shortcodes/generated/core_configuration.html
index d93339dc5..ee5860242 100644
--- a/docs/layouts/shortcodes/generated/core_configuration.html
+++ b/docs/layouts/shortcodes/generated/core_configuration.html
@@ -24,7 +24,7 @@
             <td><h5>bucket-key</h5></td>
             <td style="word-wrap: break-word;">(none)</td>
             <td>String</td>
-            <td>Specify the table store distribution policy. Data is assigned to each bucket according to the hash value of bucket-key.<br />If you specify multiple fields, delimiter is ','.<br />If not specified, the primary key will be used; if there is no primary key, the full row will be used.</td>
+            <td>Specify the paimon distribution policy. Data is assigned to each bucket according to the hash value of bucket-key.<br />If you specify multiple fields, delimiter is ','.<br />If not specified, the primary key will be used; if there is no primary key, the full row will be used.</td>
         </tr>
         <tr>
             <td><h5>changelog-producer</h5></td>
@@ -348,7 +348,7 @@
             <td><h5>write-mode</h5></td>
             <td style="word-wrap: break-word;">change-log</td>
             <td><p>Enum</p></td>
-            <td>Specify the write mode for table.<br /><br />Possible values:<ul><li>"append-only": The table can only accept append-only insert operations. Neither data deduplication nor any primary key constraints will be done when inserting rows into table store.</li><li>"change-log": The table can accept insert/delete/update operations.</li></ul></td>
+            <td>Specify the write mode for table.<br /><br />Possible values:<ul><li>"append-only": The table can only accept append-only insert operations. Neither data deduplication nor any primary key constraints will be done when inserting rows into paimon.</li><li>"change-log": The table can accept insert/delete/update operations.</li></ul></td>
         </tr>
         <tr>
             <td><h5>write-only</h5></td>
diff --git a/docs/layouts/shortcodes/generated/flink_connector_configuration.html b/docs/layouts/shortcodes/generated/flink_connector_configuration.html
index 092452c99..a5740c4b2 100644
--- a/docs/layouts/shortcodes/generated/flink_connector_configuration.html
+++ b/docs/layouts/shortcodes/generated/flink_connector_configuration.html
@@ -42,7 +42,7 @@
             <td><h5>sink.partition-shuffle</h5></td>
             <td style="word-wrap: break-word;">false</td>
             <td>Boolean</td>
-            <td>The option to enable shuffle data by dynamic partition fields in sink phase for table store.</td>
+            <td>The option to enable shuffle data by dynamic partition fields in sink phase for paimon.</td>
         </tr>
         <tr>
             <td><h5>streaming-read-atomic</h5></td>
diff --git a/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/metric_client.sh b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/metric_client.sh
index 57d837b24..b4c02f5f4 100644
--- a/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/metric_client.sh
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/metric_client.sh
@@ -34,7 +34,7 @@ case $STARTSTOP in
     (start)
         log=$BENCHMARK_LOG_DIR/metric-client.log
         log_setting=(-Dlog.file="$log" -Dlog4j.configuration=file:"$BENCHMARK_CONF_DIR"/log4j.properties -Dlog4j.configurationFile=file:"$BENCHMARK_CONF_DIR"/log4j.properties)
-        java "${log_setting[@]}" -cp "$BENCHMARK_HOME/lib/*:$FLINK_HOME/lib/*" org.apache.flink.table.store.benchmark.metric.cpu.CpuMetricSender &
+        java "${log_setting[@]}" -cp "$BENCHMARK_HOME/lib/*:$FLINK_HOME/lib/*" org.apache.paimon.benchmark.metric.cpu.CpuMetricSender &
     ;;
 
     (stop)
diff --git a/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/run_benchmark.sh b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/run_benchmark.sh
index 492d2e51b..c31de0d84 100644
--- a/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/run_benchmark.sh
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/run_benchmark.sh
@@ -27,4 +27,4 @@ bin=`cd "$bin"; pwd`
 log=$BENCHMARK_LOG_DIR/benchmark.log
 log_setting=(-Dlog.file="$log" -Dlog4j.configuration=file:"$BENCHMARK_CONF_DIR"/log4j.properties -Dlog4j.configurationFile=file:"$BENCHMARK_CONF_DIR"/log4j.properties)
 
-java "${log_setting[@]}" -cp "$BENCHMARK_HOME/lib/*:$FLINK_HOME/lib/*" org.apache.flink.table.store.benchmark.Benchmark --location $BENCHMARK_HOME --queries $1 --sinks $2
\ No newline at end of file
+java "${log_setting[@]}" -cp "$BENCHMARK_HOME/lib/*:$FLINK_HOME/lib/*" org.apache.paimon.benchmark.Benchmark --location $BENCHMARK_HOME --queries $1 --sinks $2
\ No newline at end of file
diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
index f31e14729..023e37f89 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.benchmark;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.commons.math3.random.RandomDataGenerator;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.catalog.CatalogFactory;
 import org.apache.paimon.catalog.Identifier;
 import org.apache.paimon.data.BinaryString;
diff --git a/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java b/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
index a4411e9da..ae94b3e58 100644
--- a/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
+++ b/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.catalog;
+package org.apache.paimon.catalog;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.paimon.annotation.Experimental;
diff --git a/paimon-common/src/main/java/org/apache/paimon/fs/FileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/FileIO.java
index fcf757ce8..9fff5a49d 100644
--- a/paimon-common/src/main/java/org/apache/paimon/fs/FileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/FileIO.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.fs;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-common/src/main/java/org/apache/paimon/fs/PluginFileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/PluginFileIO.java
index b0b660e49..cbde728a3 100644
--- a/paimon-common/src/main/java/org/apache/paimon/fs/PluginFileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/PluginFileIO.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.fs;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.options.Options;
 
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIO.java
index c7dfaae3d..f113a0347 100644
--- a/paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIO.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.fs.hadoop;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.hadoop.fs.FSDataInputStream;
 import org.apache.hadoop.fs.FSDataOutputStream;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
index c66ec95d1..3f19bf316 100644
--- a/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.fs.local;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-common/src/main/java/org/apache/paimon/options/CatalogOptions.java b/paimon-common/src/main/java/org/apache/paimon/options/CatalogOptions.java
index e4a3f26bf..e853b67c5 100644
--- a/paimon-common/src/main/java/org/apache/paimon/options/CatalogOptions.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/CatalogOptions.java
@@ -37,8 +37,7 @@ public class CatalogOptions {
             ConfigOptions.key("metastore")
                     .stringType()
                     .defaultValue("filesystem")
-                    .withDescription(
-                            "Metastore of table store catalog, supports filesystem and hive.");
+                    .withDescription("Metastore of paimon catalog, supports filesystem and hive.");
 
     public static final ConfigOption<String> URI =
             ConfigOptions.key("uri")
diff --git a/paimon-common/src/main/java/org/apache/paimon/types/DataType.java b/paimon-common/src/main/java/org/apache/paimon/types/DataType.java
index 89fe7fea1..59d362605 100644
--- a/paimon-common/src/main/java/org/apache/paimon/types/DataType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataType.java
@@ -32,7 +32,7 @@ import java.util.Objects;
 import java.util.Set;
 
 /**
- * Describes the data type in the table store ecosystem.
+ * Describes the data type in the paimon ecosystem.
  *
  * @see DataTypes
  * @since 0.4.0
diff --git a/paimon-common/src/test/java/org/apache/paimon/fs/FileIOFinder.java b/paimon-common/src/test/java/org/apache/paimon/fs/FileIOFinder.java
index b4d13e3ac..178129daa 100644
--- a/paimon-common/src/test/java/org/apache/paimon/fs/FileIOFinder.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/FileIOFinder.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.fs;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.options.Options;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java b/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java
index 4a046c7f0..9da783634 100644
--- a/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java
+++ b/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java
@@ -44,7 +44,7 @@ import java.util.stream.Collectors;
 import static org.apache.paimon.options.ConfigOptions.key;
 import static org.apache.paimon.options.description.TextElement.text;
 
-/** Core options for table store. */
+/** Core options for paimon. */
 public class CoreOptions implements Serializable {
 
     public static final ConfigOption<Integer> BUCKET =
@@ -61,7 +61,7 @@ public class CoreOptions implements Serializable {
                     .withDescription(
                             Description.builder()
                                     .text(
-                                            "Specify the table store distribution policy. Data is assigned"
+                                            "Specify the paimon distribution policy. Data is assigned"
                                                     + " to each bucket according to the hash value of bucket-key.")
                                     .linebreak()
                                     .text("If you specify multiple fields, delimiter is ','.")
diff --git a/paimon-core/src/main/java/org/apache/paimon/Snapshot.java b/paimon-core/src/main/java/org/apache/paimon/Snapshot.java
index e953a1b0c..a51ce69ca 100644
--- a/paimon-core/src/main/java/org/apache/paimon/Snapshot.java
+++ b/paimon-core/src/main/java/org/apache/paimon/Snapshot.java
@@ -44,21 +44,19 @@ import java.util.Map;
  * <p>Versioned change list:
  *
  * <ul>
- *   <li>Version 1: Initial version for table store <= 0.2. There is no "version" field in json
- *       file.
- *   <li>Version 2: Introduced in table store 0.3. Add "version" field and "changelogManifestList"
- *       field.
- *   <li>Version 3: Introduced in table store 0.4. Add "baseRecordCount" field, "deltaRecordCount"
- *       field and "changelogRecordCount" field.
+ *   <li>Version 1: Initial version for paimon <= 0.2. There is no "version" field in json file.
+ *   <li>Version 2: Introduced in paimon 0.3. Add "version" field and "changelogManifestList" field.
+ *   <li>Version 3: Introduced in paimon 0.4. Add "baseRecordCount" field, "deltaRecordCount" field
+ *       and "changelogRecordCount" field.
  * </ul>
  *
  * <p>Unversioned change list:
  *
  * <ul>
- *   <li>Since table store 0.22 and table store 0.3, commitIdentifier is changed from a String to a
- *       long value. For table store < 0.22, only Flink connectors have table store sink and they
- *       use checkpointId as commitIdentifier (which is a long value). Json can automatically
- *       perform type conversion so there is no compatibility issue.
+ *   <li>Since paimon 0.22 and paimon 0.3, commitIdentifier is changed from a String to a long
+ *       value. For paimon < 0.22, only Flink connectors have paimon sink and they use checkpointId
+ *       as commitIdentifier (which is a long value). Json can automatically perform type conversion
+ *       so there is no compatibility issue.
  * </ul>
  */
 public class Snapshot {
@@ -85,7 +83,7 @@ public class Snapshot {
     private static final String FILED_WATERMARK = "watermark";
 
     // version of snapshot
-    // null for table store <= 0.2
+    // null for paimon <= 0.2
     @JsonProperty(FIELD_VERSION)
     @Nullable
     private final Integer version;
@@ -106,7 +104,7 @@ public class Snapshot {
     private final String deltaManifestList;
 
     // a manifest list recording all changelog produced in this snapshot
-    // null if no changelog is produced, or for table store <= 0.2
+    // null if no changelog is produced, or for paimon <= 0.2
     @JsonProperty(FIELD_CHANGELOG_MANIFEST_LIST)
     @Nullable
     private final String changelogManifestList;
@@ -134,25 +132,25 @@ public class Snapshot {
     private final Map<Integer, Long> logOffsets;
 
     // record count of all changes occurred in this snapshot
-    // null for table store <= 0.3
+    // null for paimon <= 0.3
     @JsonProperty(FIELD_TOTAL_RECORD_COUNT)
     @Nullable
     private final Long totalRecordCount;
 
     // record count of all new changes occurred in this snapshot
-    // null for table store <= 0.3
+    // null for paimon <= 0.3
     @JsonProperty(FIELD_DELTA_RECORD_COUNT)
     @Nullable
     private final Long deltaRecordCount;
 
     // record count of all changelog produced in this snapshot
-    // null for table store <= 0.3
+    // null for paimon <= 0.3
     @JsonProperty(FIELD_CHANGELOG_RECORD_COUNT)
     @Nullable
     private final Long changelogRecordCount;
 
     // watermark for input records
-    // null for table store <= 0.3
+    // null for paimon <= 0.3
     // null if there is no watermark in new committing, and the previous snapshot does not have a
     // watermark
     @JsonProperty(FILED_WATERMARK)
@@ -228,7 +226,7 @@ public class Snapshot {
 
     @JsonGetter(FIELD_VERSION)
     public int version() {
-        // there is no version field for table store <= 0.2
+        // there is no version field for paimon <= 0.2
         return version == null ? TABLE_STORE_02_VERSION : version;
     }
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/WriteMode.java b/paimon-core/src/main/java/org/apache/paimon/WriteMode.java
index ea353845f..13d221e7c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/WriteMode.java
+++ b/paimon-core/src/main/java/org/apache/paimon/WriteMode.java
@@ -23,12 +23,12 @@ import org.apache.paimon.options.description.InlineElement;
 
 import static org.apache.paimon.options.description.TextElement.text;
 
-/** Defines the write mode for flink table store. */
+/** Defines the write mode for flink paimon. */
 public enum WriteMode implements DescribedEnum {
     APPEND_ONLY(
             "append-only",
             "The table can only accept append-only insert operations. Neither data deduplication nor any "
-                    + "primary key constraints will be done when inserting rows into table store."),
+                    + "primary key constraints will be done when inserting rows into paimon."),
     CHANGE_LOG("change-log", "The table can accept insert/delete/update operations.");
 
     private final String value;
diff --git a/paimon-core/src/main/java/org/apache/paimon/catalog/Catalog.java b/paimon-core/src/main/java/org/apache/paimon/catalog/Catalog.java
index 29d561df0..8e2814e0a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/catalog/Catalog.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/Catalog.java
@@ -28,7 +28,7 @@ import java.util.Optional;
 
 /**
  * This interface is responsible for reading and writing metadata such as database/table from a
- * table store catalog.
+ * paimon catalog.
  *
  * @see CatalogFactory
  * @since 0.4.0
diff --git a/paimon-core/src/main/java/org/apache/paimon/catalog/CatalogFactory.java b/paimon-core/src/main/java/org/apache/paimon/catalog/CatalogFactory.java
index 611da3e18..25717c6cb 100644
--- a/paimon-core/src/main/java/org/apache/paimon/catalog/CatalogFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/CatalogFactory.java
@@ -18,8 +18,6 @@
 
 package org.apache.paimon.catalog;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
@@ -52,7 +50,7 @@ public interface CatalogFactory {
         String warehouse =
                 Preconditions.checkNotNull(
                         context.options().get(WAREHOUSE),
-                        "Table store '" + WAREHOUSE.key() + "' path must be set");
+                        "Paimon '" + WAREHOUSE.key() + "' path must be set");
         return new Path(warehouse);
     }
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalogFactory.java b/paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalogFactory.java
index 84afbaa53..bb09de29d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalogFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalogFactory.java
@@ -18,8 +18,6 @@
 
 package org.apache.paimon.catalog;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.table.TableType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/sort/BinaryInMemorySortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/sort/BinaryInMemorySortBuffer.java
index 3692157f8..88c632f90 100644
--- a/paimon-core/src/main/java/org/apache/paimon/sort/BinaryInMemorySortBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/BinaryInMemorySortBuffer.java
@@ -45,7 +45,7 @@ import static org.apache.paimon.utils.Preconditions.checkArgument;
  *   <li>1. Add clear method to clean all memory.
  *   <li>2. Add tryInitialized() method to initialize memory before write and read in buffer, while
  *       the old buffer will do it in the constructor and reset().
- *   <li>3. Remove reset() and etc. methods which are not used in flink table store.
+ *   <li>3. Remove reset() and etc. methods which are not used in flink paimon.
  * </ul>
  */
 public class BinaryInMemorySortBuffer extends BinaryIndexedSortable implements SortBuffer {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
index 3819924b8..9f19331ae 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
@@ -119,7 +119,7 @@ public abstract class AbstractFileStoreTable implements FileStoreTable {
         // set dynamic options with default values
         CoreOptions.setDefaultValues(newOptions);
 
-        // copy a new table store to contain dynamic options
+        // copy a new paimon to contain dynamic options
         TableSchema newTableSchema = tableSchema.copy(newOptions.toMap());
 
         // validate schema wit new options
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
index 886a4fcca..7a0d099b8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.WriteMode;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
diff --git a/paimon-core/src/main/java/org/apache/paimon/utils/JsonSerdeUtil.java b/paimon-core/src/main/java/org/apache/paimon/utils/JsonSerdeUtil.java
index d088ea060..4a61dde66 100644
--- a/paimon-core/src/main/java/org/apache/paimon/utils/JsonSerdeUtil.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/JsonSerdeUtil.java
@@ -77,7 +77,7 @@ public class JsonSerdeUtil {
     }
 
     private static Module createTableStoreJacksonModule() {
-        SimpleModule module = new SimpleModule("Table store");
+        SimpleModule module = new SimpleModule("Paimon");
         registerJsonObjects(
                 module, TableSchema.class, SchemaSerializer.INSTANCE, SchemaSerializer.INSTANCE);
         registerJsonObjects(
diff --git a/paimon-core/src/main/resources/META-INF/services/org.apache.paimon.file.org.apache.paimon.catalog.CatalogFactory b/paimon-core/src/main/resources/META-INF/services/org.apache.paimon.catalog.CatalogFactory
similarity index 100%
rename from paimon-core/src/main/resources/META-INF/services/org.apache.paimon.file.org.apache.paimon.catalog.CatalogFactory
rename to paimon-core/src/main/resources/META-INF/services/org.apache.paimon.catalog.CatalogFactory
diff --git a/paimon-core/src/test/java/org/apache/paimon/catalog/CatalogFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/catalog/CatalogFactoryTest.java
index f9076427e..0123c2cc4 100644
--- a/paimon-core/src/test/java/org/apache/paimon/catalog/CatalogFactoryTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/catalog/CatalogFactoryTest.java
@@ -18,8 +18,6 @@
 
 package org.apache.paimon.catalog;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hdfs.HdfsConfiguration;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-core/src/test/java/org/apache/paimon/utils/TraceableFileIO.java b/paimon-core/src/test/java/org/apache/paimon/utils/TraceableFileIO.java
index 4418fdd10..b3d3a937c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/utils/TraceableFileIO.java
+++ b/paimon-core/src/test/java/org/apache/paimon/utils/TraceableFileIO.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.utils;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOLoader;
 import org.apache.paimon.fs.FileStatus;
diff --git a/paimon-e2e-tests/pom.xml b/paimon-e2e-tests/pom.xml
index 6833e4195..dc367fdf0 100644
--- a/paimon-e2e-tests/pom.xml
+++ b/paimon-e2e-tests/pom.xml
@@ -150,7 +150,7 @@ under the License.
                             <outputDirectory>/tmp/paimon-e2e-tests-jars
                             </outputDirectory>
                         </artifactItem>
-                        <!-- test table store with kafka sql jar -->
+                        <!-- test paimon with kafka sql jar -->
                         <artifactItem>
                             <groupId>org.apache.flink</groupId>
                             <artifactId>${flink.sql.connector.kafka}</artifactId>
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
index 9c6554991..aed5b0686 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
@@ -92,7 +92,7 @@ public class FileStoreBatchE2eTest extends E2eTestBase {
         // prepare test data
         writeSharedFile(testDataSourceFile, String.join("\n", data));
 
-        // insert data into table store
+        // insert data into paimon
         runSql(
                 "INSERT INTO ts_table SELECT * FROM test_source;",
                 catalogDdl,
@@ -100,7 +100,7 @@ public class FileStoreBatchE2eTest extends E2eTestBase {
                 testDataSourceDdl,
                 tableStoreDdl);
 
-        // test #1: read all data from table store
+        // test #1: read all data from paimon
         runSql(
                 "INSERT INTO result1 SELECT * FROM ts_table;",
                 catalogDdl,
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreStreamE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreStreamE2eTest.java
index de86aa9db..c7273daf9 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreStreamE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreStreamE2eTest.java
@@ -78,7 +78,7 @@ public class FileStoreStreamE2eTest extends E2eTestBase {
                         + "    'bucket' = '3'\n"
                         + ");";
 
-        // insert data into table store
+        // insert data into paimon
         runSql(
                 "SET 'execution.checkpointing.interval' = '5s';\n"
                         + "INSERT INTO ts_table SELECT a, b, rn FROM (\n"
@@ -89,7 +89,7 @@ public class FileStoreStreamE2eTest extends E2eTestBase {
                 tableDdl,
                 testDataSourceDdl);
 
-        // read all data from table store
+        // read all data from paimon
         runSql(
                 "INSERT INTO result1 SELECT * FROM ts_table;",
                 catalogDdl,
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
index 51dba9c39..5c82e5195 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
@@ -88,7 +88,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         + "    'write-only' = 'true'\n"
                         + ");";
 
-        // insert data into table store
+        // insert data into paimon
         runSql(
                 "SET 'execution.checkpointing.interval' = '1s';\n"
                         + "INSERT INTO ts_table SELECT * FROM test_source;",
@@ -123,7 +123,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
         LOG.info(execResult.getStdout());
         LOG.info(execResult.getStderr());
 
-        // read all data from table store
+        // read all data from paimon
         runSql(
                 "INSERT INTO result1 SELECT * FROM ts_table;",
                 catalogDdl,
@@ -185,7 +185,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
         LOG.info(execResult.getStdout());
         LOG.info(execResult.getStderr());
 
-        // read all data from table store
+        // read all data from paimon
         runSql(
                 "INSERT INTO result1 SELECT * FROM ts_table;",
                 catalogDdl,
@@ -244,7 +244,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
         LOG.info(execResult.getStdout());
         LOG.info(execResult.getStderr());
 
-        // read all data from table store
+        // read all data from paimon
         runSql(
                 "INSERT INTO result1 SELECT * FROM ts_table;",
                 catalogDdl,
@@ -318,7 +318,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
         LOG.info(execResult.getStdout());
         LOG.info(execResult.getStderr());
 
-        // read all data from table store
+        // read all data from paimon
         runSql(
                 "INSERT INTO result1 SELECT * FROM T;",
                 catalogDdl,
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
index 1a8215ac9..a3378b2ab 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
@@ -27,7 +27,7 @@ import org.testcontainers.containers.ContainerState;
 import java.util.UUID;
 
 /**
- * Tests for reading table store from Hive.
+ * Tests for reading paimon from Hive.
  *
  * <p>NOTE: This test runs a complete Hadoop cluster in Docker, which requires a lot of memory. If
  * you're running this test locally, make sure that the memory limit of your Docker is at least 8GB.
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/LogStoreE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/LogStoreE2eTest.java
index bc6c074cd..ec06bd2eb 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/LogStoreE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/LogStoreE2eTest.java
@@ -101,7 +101,7 @@ public class LogStoreE2eTest extends E2eTestBase {
                                 + ");",
                         testTopicName);
 
-        // insert data into table store
+        // insert data into paimon
         runSql(
                 // long checkpoint interval ensures that new data are only visible from log store
                 "SET 'execution.checkpointing.interval' = '9999s';\n"
@@ -111,7 +111,7 @@ public class LogStoreE2eTest extends E2eTestBase {
                 streamTableDdl,
                 testDataSourceDdl);
 
-        // read all data from table store
+        // read all data from paimon
         runSql(
                 "INSERT INTO result1 SELECT * FROM ts_table;",
                 catalogDdl,
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/SparkE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/SparkE2eTest.java
index 61dd25c8d..b8e875216 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/SparkE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/SparkE2eTest.java
@@ -29,7 +29,7 @@ import java.util.Arrays;
 import java.util.UUID;
 import java.util.stream.Collectors;
 
-/** Tests for reading table store from Spark3. */
+/** Tests for reading paimon from Spark3. */
 @DisabledIfSystemProperty(named = "test.flink.version", matches = "1.14.*")
 public class SparkE2eTest extends E2eReaderTestBase {
 
@@ -43,7 +43,7 @@ public class SparkE2eTest extends E2eReaderTestBase {
     public void testFlinkWriteAndSparkRead() throws Exception {
         String warehousePath = TEST_DATA_DIR + "/" + UUID.randomUUID().toString() + "_warehouse";
         final String table = "T";
-        final String sparkTable = String.format("tablestore.default.%s", table);
+        final String sparkTable = String.format("paimon.default.%s", table);
         runSql(
                 String.join(
                         "\n",
@@ -60,9 +60,9 @@ public class SparkE2eTest extends E2eReaderTestBase {
                                             "--master",
                                             "spark://spark-master:7077",
                                             "--conf",
-                                            "spark.sql.catalog.tablestore=org.apache.paimon.spark.SparkCatalog",
+                                            "spark.sql.catalog.paimon=org.apache.paimon.spark.SparkCatalog",
                                             "--conf",
-                                            "spark.sql.catalog.tablestore.warehouse=file:"
+                                            "spark.sql.catalog.paimon.warehouse=file:"
                                                     + warehousePath,
                                             "-f",
                                             TEST_DATA_DIR + "/" + sql);
diff --git a/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
index 1d62acab3..9f7053786 100644
--- a/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
+++ b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.oss;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.aliyun.oss.AliyunOSSFileSystem;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.options.Options;
 import org.slf4j.Logger;
diff --git a/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java b/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
index 9a5c4cdd4..1bc160ca5 100644
--- a/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
+++ b/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.oss;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOLoader;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
index 82bdd54b4..4222f0d32 100644
--- a/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
+++ b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.s3;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.s3a.S3AFileSystem;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.options.Options;
 import org.slf4j.Logger;
diff --git a/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java b/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
index a82367373..98c39e170 100644
--- a/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
+++ b/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.s3;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOLoader;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
index e1da476aa..d4431e616 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
@@ -28,12 +28,12 @@ import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.factories.DynamicTableSinkFactory;
 import org.apache.flink.table.factories.DynamicTableSourceFactory;
-import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.paimon.CoreOptions.LogChangelogMode;
 import org.apache.paimon.CoreOptions.LogConsistency;
 import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.connector.log.LogStoreTableFactory;
 import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.connector.source.SystemTableSource;
@@ -59,7 +59,7 @@ import static org.apache.paimon.connector.FlinkConnectorOptions.NONE;
 import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
 import static org.apache.paimon.connector.log.LogStoreTableFactory.discoverLogStoreFactory;
 
-/** Abstract table store factory to create table source and table sink. */
+/** Abstract paimon factory to create table source and table sink. */
 public abstract class AbstractTableStoreFactory
         implements DynamicTableSourceFactory, DynamicTableSinkFactory {
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
index 90bb7b537..ee71bbf5c 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
@@ -67,7 +67,7 @@ import static org.apache.paimon.CoreOptions.PATH;
 import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
 import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
 
-/** Catalog for table store. */
+/** Catalog for paimon. */
 public class FlinkCatalog extends AbstractCatalog {
 
     private final Catalog catalog;
@@ -204,7 +204,7 @@ public class FlinkCatalog extends AbstractCatalog {
         if (options.containsKey(CONNECTOR.key())) {
             throw new CatalogException(
                     String.format(
-                            "Table Store Catalog only supports table store tables, not '%s' connector."
+                            "Table Store Catalog only supports paimon tables, not '%s' connector."
                                     + " You can create TEMPORARY table instead.",
                             options.get(CONNECTOR.key())));
         }
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
index 9474c667b..4620afa43 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.catalog.CatalogFactory;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.ConfigOptions;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
index bc1b75a44..644a2f1b7 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
@@ -71,7 +71,7 @@ public class FlinkConnectorOptions {
                     .booleanType()
                     .defaultValue(false)
                     .withDescription(
-                            "The option to enable shuffle data by dynamic partition fields in sink phase for table store.");
+                            "The option to enable shuffle data by dynamic partition fields in sink phase for paimon.");
 
     public static final ConfigOption<Integer> SCAN_PARALLELISM =
             ConfigOptions.key("scan.parallelism")
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java
index f3272fb50..42e62893d 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java
@@ -23,8 +23,8 @@ import org.apache.flink.core.fs.FSDataOutputStream;
 import org.apache.flink.core.fs.FileSystem;
 import org.apache.flink.core.fs.FileSystem.WriteMode;
 import org.apache.flink.core.fs.FileSystemKind;
-import org.apache.flink.table.store.catalog.CatalogContext;
 
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
index 462578c29..7ac866373 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.connector;
 
 import org.apache.flink.configuration.ReadableConfig;
-import org.apache.flink.table.store.catalog.CatalogContext;
 
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.options.Options;
 
 import java.util.Map;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
index a78e38c52..4159bba8f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
@@ -37,7 +37,7 @@ import javax.annotation.Nullable;
 import static org.apache.paimon.CoreOptions.AUTO_CREATE;
 import static org.apache.paimon.connector.FlinkCatalogFactory.IDENTIFIER;
 
-/** A table store {@link DynamicTableFactory} to create source and sink. */
+/** A paimon {@link DynamicTableFactory} to create source and sink. */
 public class TableStoreConnectorFactory extends AbstractTableStoreFactory {
 
     @Nullable private final CatalogLock.Factory lockFactory;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
index 385b0612c..f29b0443f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
@@ -24,10 +24,10 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.bridge.java.StreamTableEnvironment;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.types.logical.LogicalType;
 
 import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.catalog.CatalogFactory;
 import org.apache.paimon.catalog.Identifier;
 import org.apache.paimon.connector.FlinkCatalog;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
index 2b6e86a9a..b1a3bfaa6 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
@@ -31,7 +31,7 @@ import javax.annotation.Nullable;
 
 import java.util.Map;
 
-/** {@link FlinkSink} for writing records into table store. */
+/** {@link FlinkSink} for writing records into paimon. */
 public class FileStoreSink extends FlinkSink {
 
     private static final long serialVersionUID = 1L;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
index 2e39d76e3..e7097c416 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
@@ -44,7 +44,7 @@ import java.util.UUID;
 import static org.apache.paimon.connector.FlinkConnectorOptions.CHANGELOG_PRODUCER_FULL_COMPACTION_TRIGGER_INTERVAL;
 import static org.apache.paimon.connector.FlinkConnectorOptions.CHANGELOG_PRODUCER_LOOKUP_WAIT;
 
-/** Abstract sink of table store. */
+/** Abstract sink of paimon. */
 public abstract class FlinkSink implements Serializable {
 
     private static final long serialVersionUID = 1L;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
index efd4f71b4..5cb6af328 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
@@ -32,7 +32,7 @@ import java.io.IOException;
 import java.io.Serializable;
 import java.util.List;
 
-/** Helper class of {@link StoreWriteOperator} for different types of table store sinks. */
+/** Helper class of {@link StoreWriteOperator} for different types of paimon sinks. */
 interface StoreSinkWrite {
 
     SinkRecord write(InternalRow rowData) throws Exception;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
index f88f94745..9dff38a6f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
@@ -116,7 +116,7 @@ public class TableStoreSink implements DynamicTableSink, SupportsOverwrite, Supp
     public SinkRuntimeProvider getSinkRuntimeProvider(Context context) {
         if (overwrite && !context.isBounded()) {
             throw new UnsupportedOperationException(
-                    "Table store doesn't support streaming INSERT OVERWRITE.");
+                    "Paimon doesn't support streaming INSERT OVERWRITE.");
         }
 
         LogSinkProvider logSinkProvider = null;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSource.java
index 493ef56dc..871529869 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSource.java
@@ -30,7 +30,7 @@ import org.apache.paimon.table.source.TableRead;
 
 import javax.annotation.Nullable;
 
-/** A Flink {@link Source} for table store. */
+/** A Flink {@link Source} for paimon. */
 public abstract class FlinkSource
         implements Source<RowData, FileStoreSourceSplit, PendingSplitsCheckpoint> {
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
index cf04c07ca..2bd77a218 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
@@ -36,7 +36,7 @@ import javax.annotation.Nullable;
 import java.util.ArrayList;
 import java.util.List;
 
-/** A Flink {@link ScanTableSource} for table store. */
+/** A Flink {@link ScanTableSource} for paimon. */
 public abstract class FlinkTableSource
         implements ScanTableSource,
                 SupportsFilterPushDown,
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableITCase.java
index 86ceaf33f..7f3a1d95a 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableITCase.java
@@ -41,7 +41,7 @@ import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertOver
 import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertOverwritePartition;
 import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
 
-/** Table store IT case when the table has composite primary keys and multiple partition fields. */
+/** Paimon IT case when the table has composite primary keys and multiple partition fields. */
 public class CompositePkAndMultiPartitionedTableITCase extends AbstractTestBase {
 
     @BeforeEach
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ComputedColumnAndWatermarkTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ComputedColumnAndWatermarkTableITCase.java
index 07a49645d..94eb61dc5 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ComputedColumnAndWatermarkTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ComputedColumnAndWatermarkTableITCase.java
@@ -44,7 +44,7 @@ import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchR
 import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
 import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
 
-/** Table store IT case when the table has computed column and watermark spec. */
+/** Paimon IT case when the table has computed column and watermark spec. */
 public class ComputedColumnAndWatermarkTableITCase extends KafkaTableTestBase {
 
     @BeforeEach
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CreateTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CreateTableITCase.java
index 40e1fbbc9..fca851ef1 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CreateTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CreateTableITCase.java
@@ -93,7 +93,7 @@ public class CreateTableITCase extends TableStoreTestBase {
             // check catalog
             assertThat(((TableEnvironmentImpl) tEnv).getCatalogManager().getTable(tableIdentifier))
                     .isPresent();
-            // check table store
+            // check paimon
             assertThat(Paths.get(rootPath, relativeTablePath(tableIdentifier)).toFile()).exists();
         } else {
             // check inconsistency
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/DropTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/DropTableITCase.java
index a6086632e..29451b4c6 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/DropTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/DropTableITCase.java
@@ -95,7 +95,7 @@ public class DropTableITCase extends TableStoreTestBase {
             // check catalog
             assertThat(((TableEnvironmentImpl) tEnv).getCatalogManager().getTable(tableIdentifier))
                     .isNotPresent();
-            // check table store
+            // check paimon
             assertThat(Paths.get(rootPath, relativeTablePath(tableIdentifier)).toFile())
                     .doesNotExist();
         } else {
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
index 795848ef9..ab154f6f6 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
@@ -51,8 +51,7 @@ public class FileSystemCatalogITCase extends KafkaTableTestBase {
     public void before() throws IOException {
         path = getTempDirPath();
         tEnv.executeSql(
-                String.format(
-                        "CREATE CATALOG fs WITH ('type'='paimon', 'warehouse'='%s')", path));
+                String.format("CREATE CATALOG fs WITH ('type'='paimon', 'warehouse'='%s')", path));
         tEnv.useCatalog("fs");
         env.setParallelism(1);
     }
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
index 0a6aa19b8..c7c4cbc4f 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
@@ -35,9 +35,9 @@ import org.apache.flink.table.catalog.exceptions.DatabaseNotEmptyException;
 import org.apache.flink.table.catalog.exceptions.DatabaseNotExistException;
 import org.apache.flink.table.catalog.exceptions.TableAlreadyExistException;
 import org.apache.flink.table.catalog.exceptions.TableNotExistException;
-import org.apache.flink.table.store.catalog.CatalogContext;
 
 import org.apache.paimon.catalog.AbstractCatalog;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
 import org.junit.jupiter.api.BeforeEach;
@@ -212,7 +212,7 @@ public class FlinkCatalogTest {
         assertThatThrownBy(() -> catalog.createTable(this.path1, newTable, false))
                 .isInstanceOf(CatalogException.class)
                 .hasMessageContaining(
-                        "Table Store Catalog only supports table store tables,"
+                        "Table Store Catalog only supports paimon tables,"
                                 + " not 'filesystem' connector. You can create TEMPORARY table instead.");
     }
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
index e00b709e5..bc9b196fb 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
@@ -38,8 +38,7 @@ public class LogSystemITCase extends KafkaTableTestBase {
     public void before() throws IOException {
         tEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG TABLE_STORE WITH ("
-                                + "'type'='paimon', 'warehouse'='%s')",
+                        "CREATE CATALOG TABLE_STORE WITH (" + "'type'='paimon', 'warehouse'='%s')",
                         getTempDirPath()));
         tEnv.useCatalog("TABLE_STORE");
     }
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
index 40eefc034..cca08b28b 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
@@ -1078,7 +1078,7 @@ public class ReadWriteTableITCase extends AbstractTestBase {
                                                 "INSERT OVERWRITE `%s` VALUES('US Dollar', 102, '2022-06-20')",
                                                 table)))
                 .isInstanceOf(UnsupportedOperationException.class)
-                .hasMessage("Table store doesn't support streaming INSERT OVERWRITE.");
+                .hasMessage("Paimon doesn't support streaming INSERT OVERWRITE.");
     }
 
     // ----------------------------------------------------------------------------------------------------------------
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
index 0acfc9b69..666c90d1b 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
@@ -34,7 +34,7 @@ import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
 import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.sEnv;
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Table store IT case to test concurrent batch overwrite and streaming insert into. */
+/** Paimon IT case to test concurrent batch overwrite and streaming insert into. */
 public class StreamingWarehouseITCase extends KafkaTableTestBase {
 
     @Test
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java
index bd2185b4e..86d5215e2 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java
@@ -49,7 +49,7 @@ import java.util.Map;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
-/** End-to-end test base for table store. */
+/** End-to-end test base for paimon. */
 public abstract class TableStoreTestBase extends AbstractTestBase {
 
     public static final String CURRENT_CATALOG = "catalog";
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
index a1cd5bce9..9fef09af2 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.connector.action;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.catalog.CatalogFactory;
 import org.apache.paimon.catalog.Identifier;
 import org.apache.paimon.connector.util.AbstractTestBase;
diff --git a/paimon-format/pom.xml b/paimon-format/pom.xml
index eb8f140b2..8c8a9507e 100644
--- a/paimon-format/pom.xml
+++ b/paimon-format/pom.xml
@@ -47,6 +47,12 @@ under the License.
             <scope>provided</scope>
         </dependency>
 
+        <dependency>
+            <groupId>org.xerial.snappy</groupId>
+            <artifactId>snappy-java</artifactId>
+            <version>${snappy.version}</version>
+        </dependency>
+
         <!-- Hadoop -->
 
         <dependency>
@@ -138,6 +144,12 @@ under the License.
             <groupId>org.apache.parquet</groupId>
             <artifactId>parquet-hadoop</artifactId>
             <version>${parquet.version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.xerial.snappy</groupId>
+                    <artifactId>snappy-java</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
 
         <dependency>
@@ -286,49 +298,49 @@ under the License.
                                 <!-- Relocate Orc -->
                                 <relocation>
                                     <pattern>org.apache.orc</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.apache.orc</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.apache.orc</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>org.apache.hive</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.apache.hive</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.apache.hive</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>org.apache.hadoop.hive</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.apache.hadoop.hive</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.apache.hadoop.hive</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>io.airlift</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.io.airlift</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.io.airlift</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>com.google.protobuf</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.com.google.protobuf</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.com.google.protobuf</shadedPattern>
                                 </relocation>
 
                                 <!-- Relocate Avro. -->
                                 <relocation>
                                     <pattern>org.apache.avro</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.apache.avro</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.apache.avro</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>com.fasterxml.jackson</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.com.fasterxml.jackson</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.com.fasterxml.jackson</shadedPattern>
                                 </relocation>
 
                                 <!-- Relocate parquet. -->
                                 <relocation>
                                     <pattern>org.apache.parquet</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.apache.parquet</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.apache.parquet</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>shaded.parquet</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.parquet</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.parquet</shadedPattern>
                                 </relocation>
 
                                 <!-- Relocate Common. -->
                                 <relocation>
                                     <pattern>org.apache.commons</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.apache.commons</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.apache.commons</shadedPattern>
                                 </relocation>
                             </relocations>
                         </configuration>
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputFile.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputFile.java
index c2c6d014f..812d9ec5d 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputFile.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputFile.java
@@ -26,7 +26,7 @@ import org.apache.parquet.io.SeekableInputStream;
 
 import java.io.IOException;
 
-/** A {@link InputFile} for table store. */
+/** A {@link InputFile} for paimon. */
 public class ParquetInputFile implements InputFile {
 
     private final FileIO fileIO;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputStream.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputStream.java
index 0728aa666..d9331383c 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputStream.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetInputStream.java
@@ -23,7 +23,7 @@ import org.apache.parquet.io.DelegatingSeekableInputStream;
 
 import java.io.IOException;
 
-/** A {@link SeekableInputStream} for table store. */
+/** A {@link SeekableInputStream} for paimon. */
 public class ParquetInputStream extends DelegatingSeekableInputStream {
 
     private final SeekableInputStream in;
diff --git a/paimon-hive/paimon-hive-catalog/pom.xml b/paimon-hive/paimon-hive-catalog/pom.xml
index 8413984d8..d6426e17b 100644
--- a/paimon-hive/paimon-hive-catalog/pom.xml
+++ b/paimon-hive/paimon-hive-catalog/pom.xml
@@ -592,35 +592,35 @@ under the License.
                             <relocations>
                                 <relocation>
                                     <pattern>com.facebook.fb303</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.com.facebook.fb303</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.com.facebook.fb303</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>com.google.common</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.com.google.common</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.com.google.common</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>org.apache.hadoop.fs.ProxyLocalFileSystem</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.apache.hadoop.fs.ProxyLocalFileSystem</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.apache.hadoop.fs.ProxyLocalFileSystem</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>org.apache.hadoop.fs.ProxyFileSystem</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.apache.hadoop.fs.ProxyFileSystem</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.apache.hadoop.fs.ProxyFileSystem</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>org.apache.hadoop.fs.DefaultFileAccess</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.apache.hadoop.fs.DefaultFileAccess</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.apache.hadoop.fs.DefaultFileAccess</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>org.apache.hadoop.mapred.WebHCatJTShim23</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.apache.hadoop.mapred.WebHCatJTShim23</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.apache.hadoop.mapred.WebHCatJTShim23</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>org.apache.hadoop.security.token.delegation.HiveDelegationTokenSupport</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.apache.hadoop.security.token.delegation.HiveDelegationTokenSupport</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.apache.hadoop.security.token.delegation.HiveDelegationTokenSupport</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>org.apache.thrift</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.apache.thrift</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.apache.thrift</shadedPattern>
                                 </relocation>
                             </relocations>
                         </configuration>
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
index 7d719ccba..fa35cff2b 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
@@ -184,8 +184,7 @@ public class HiveCatalog extends AbstractCatalog {
         Path tableLocation = getDataTableLocation(identifier);
         return new SchemaManager(fileIO, tableLocation)
                 .latest()
-                .orElseThrow(
-                        () -> new RuntimeException("There is no table stored in " + tableLocation));
+                .orElseThrow(() -> new RuntimeException("There is no paimond in " + tableLocation));
     }
 
     @Override
@@ -431,9 +430,7 @@ public class HiveCatalog extends AbstractCatalog {
             return false;
         } catch (TException e) {
             throw new RuntimeException(
-                    "Cannot determine if table "
-                            + identifier.getFullName()
-                            + " is a table store table.",
+                    "Cannot determine if table " + identifier.getFullName() + " is a paimon table.",
                     e);
         }
 
@@ -443,7 +440,7 @@ public class HiveCatalog extends AbstractCatalog {
                 throw new IllegalArgumentException(
                         "Table "
                                 + identifier.getFullName()
-                                + " is not a table store table. It's input format is "
+                                + " is not a paimon table. It's input format is "
                                 + table.getSd().getInputFormat()
                                 + " and its output format is "
                                 + table.getSd().getOutputFormat());
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
index 1c97929f3..120502e86 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.HiveMetaStoreClient;
 import org.apache.hadoop.hive.metastore.IMetaStoreClient;
 import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.catalog.CatalogFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
@@ -59,7 +58,7 @@ public class HiveCatalogFactory implements CatalogFactory {
                 Preconditions.checkNotNull(
                         context.options().get(CatalogOptions.URI),
                         CatalogOptions.URI.key()
-                                + " must be set for table store "
+                                + " must be set for paimon "
                                 + IDENTIFIER
                                 + " catalog");
 
diff --git a/paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.paimon.file.org.apache.paimon.catalog.CatalogFactory b/paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.paimon.catalog.CatalogFactory
similarity index 100%
rename from paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.paimon.file.org.apache.paimon.catalog.CatalogFactory
rename to paimon-hive/paimon-hive-catalog/src/main/resources/META-INF/services/org.apache.paimon.catalog.CatalogFactory
diff --git a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
index a333863cd..5e9ce987d 100644
--- a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
@@ -211,7 +211,7 @@ public class HiveCatalogITCase {
             Assert.fail("No exception is thrown");
         } catch (Throwable t) {
             ExceptionUtils.assertThrowableWithMessage(
-                    t, "Table test_db.hive_table is not a table store table");
+                    t, "Table test_db.hive_table is not a paimon table");
         }
 
         // alter table
@@ -236,7 +236,7 @@ public class HiveCatalogITCase {
             Assert.fail("No exception is thrown");
         } catch (Throwable t) {
             ExceptionUtils.assertThrowableWithMessage(
-                    t, "Table test_db.hive_table is not a table store table");
+                    t, "Table test_db.hive_table is not a paimon table");
         }
     }
 
@@ -281,7 +281,7 @@ public class HiveCatalogITCase {
             Assert.fail("No exception is thrown");
         } catch (Throwable t) {
             ExceptionUtils.assertThrowableWithMessage(
-                    t, "Table test_db.hive_table is not a table store table");
+                    t, "Table test_db.hive_table is not a paimon table");
         }
     }
 
@@ -454,7 +454,7 @@ public class HiveCatalogITCase {
         // TODO: the hiverunner (4.0) has a bug ,it can not rename the table path correctly ,
         // we should upgrade it to the 6.0 later ,and  update the test case for query.
         assertThatThrownBy(() -> tEnv.executeSql("SELECT * FROM t3"))
-                .hasMessageContaining("SQL validation failed. There is no table stored in");
+                .hasMessageContaining("SQL validation failed. There is no paimond in");
     }
 
     @Test
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
index ed9be151f..06e3e77e9 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
@@ -18,8 +18,6 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.metastore.api.hive_metastoreConstants;
 import org.apache.hadoop.hive.serde.serdeConstants;
@@ -27,6 +25,7 @@ import org.apache.hadoop.hive.serde2.SerDeUtils;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfo;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoUtils;
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.schema.TableSchema;
@@ -74,7 +73,7 @@ public class HiveSchema {
             throw new UnsupportedOperationException(
                     "Location property is missing for table "
                             + tableName
-                            + ". Currently Flink table store only supports external table for Hive "
+                            + ". Currently Flink paimon only supports external table for Hive "
                             + "so location property must be set.");
         }
         Path path = new Path(location);
@@ -152,9 +151,9 @@ public class HiveSchema {
 
         if (mismatched.size() > 0) {
             throw new IllegalArgumentException(
-                    "Hive DDL and table store schema mismatched! "
+                    "Hive DDL and paimon schema mismatched! "
                             + "It is recommended not to write any column definition "
-                            + "as Flink table store external table can read schema from the specified location.\n"
+                            + "as Flink paimon external table can read schema from the specified location.\n"
                             + "Mismatched fields are:\n"
                             + String.join("--------------------\n", mismatched));
         }
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java
index 48bd76874..c793e9688 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java
@@ -26,7 +26,7 @@ import org.apache.paimon.hive.mapred.TableStoreOutputFormat;
 import org.apache.paimon.utils.Preconditions;
 
 /**
- * {@link HiveMetaHook} for table store. Currently this class is only used to set input and output
+ * {@link HiveMetaHook} for paimon. Currently this class is only used to set input and output
  * formats.
  */
 public class TableStoreHiveMetaHook implements HiveMetaHook {
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveStorageHandler.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveStorageHandler.java
index 2f95b90d6..1f66aa92a 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveStorageHandler.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveStorageHandler.java
@@ -38,7 +38,7 @@ import org.apache.paimon.hive.mapred.TableStoreOutputFormat;
 import java.util.Map;
 import java.util.Properties;
 
-/** {@link HiveStorageHandler} for table store. This is the entrance class of Hive API. */
+/** {@link HiveStorageHandler} for paimon. This is the entrance class of Hive API. */
 public class TableStoreHiveStorageHandler
         implements HiveStoragePredicateHandler, HiveStorageHandler {
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
index 3131cf80e..6ddded952 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
@@ -37,7 +37,7 @@ public class TableStoreJobConf {
     private static final String INTERNAL_LOCATION = "paimon.internal.location";
     private static final String INTERNAL_CATALOG_CONFIG = "paimon.catalog.config";
 
-    private static final String TABLE_STORE_PREFIX = "tablestore.";
+    private static final String TABLE_STORE_PREFIX = "paimon.";
 
     private final JobConf jobConf;
 
@@ -59,7 +59,7 @@ public class TableStoreJobConf {
         return jobConf.get(INTERNAL_LOCATION);
     }
 
-    /** Extract table store catalog conf from Hive conf. */
+    /** Extract paimon catalog conf from Hive conf. */
     public static Options extractCatalogConfig(Configuration hiveConf) {
         Map<String, String> configMap = new HashMap<>();
         for (Map.Entry<String, String> entry : hiveConf) {
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreSerDe.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreSerDe.java
index eba57de5b..c2818a7b2 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreSerDe.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreSerDe.java
@@ -31,7 +31,7 @@ import javax.annotation.Nullable;
 import java.util.Properties;
 
 /**
- * {@link AbstractSerDe} for table store. It transforms map-reduce values to Hive objects.
+ * {@link AbstractSerDe} for paimon. It transforms map-reduce values to Hive objects.
  *
  * <p>Currently this class only supports deserialization.
  */
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
index f769ed652..09258b3fb 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
@@ -18,8 +18,6 @@
 
 package org.apache.paimon.hive.mapred;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.hadoop.hive.ql.io.sarg.ConvertAstToSearchArg;
 import org.apache.hadoop.hive.ql.io.sarg.SearchArgument;
 import org.apache.hadoop.hive.serde2.ColumnProjectionUtils;
@@ -29,6 +27,7 @@ import org.apache.hadoop.mapred.JobConf;
 import org.apache.hadoop.mapred.RecordReader;
 import org.apache.hadoop.mapred.Reporter;
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.hive.RowDataContainer;
 import org.apache.paimon.hive.SearchArgumentToPredicateConverter;
 import org.apache.paimon.hive.TableStoreJobConf;
@@ -45,7 +44,7 @@ import java.util.Arrays;
 import java.util.Optional;
 
 /**
- * {@link InputFormat} for table store. It divides all files into {@link InputSplit}s (one split per
+ * {@link InputFormat} for paimon. It divides all files into {@link InputSplit}s (one split per
  * bucket) and creates {@link RecordReader} for each split.
  */
 public class TableStoreInputFormat implements InputFormat<Void, RowDataContainer> {
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
index 1a43d1b0d..a7fe4e6ef 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
@@ -31,8 +31,7 @@ import java.io.IOException;
 import java.util.Objects;
 
 /**
- * {@link FileSplit} for table store. It contains all files to read from a certain partition and
- * bucket.
+ * {@link FileSplit} for paimon. It contains all files to read from a certain partition and bucket.
  */
 public class TableStoreInputSplit extends FileSplit {
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreOutputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreOutputFormat.java
index 0b318ab87..b1119993d 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreOutputFormat.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreOutputFormat.java
@@ -35,7 +35,7 @@ public class TableStoreOutputFormat implements OutputFormat<InternalRow, Interna
             FileSystem fileSystem, JobConf jobConf, String s, Progressable progressable)
             throws IOException {
         throw new UnsupportedOperationException(
-                "Flink table store currently can only be used as an input format for Hive.");
+                "Flink paimon currently can only be used as an input format for Hive.");
     }
 
     @Override
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
index e208f8b17..5485b620a 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
@@ -32,7 +32,7 @@ import java.io.IOException;
 import java.util.List;
 
 /**
- * Base {@link RecordReader} for table store. Reads {@link KeyValue}s from data files and picks out
+ * Base {@link RecordReader} for paimon. Reads {@link KeyValue}s from data files and picks out
  * {@link InternalRow} for Hive to consume.
  *
  * <p>NOTE: To support projection push down, when {@code selectedColumns} does not match {@code
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
index f61b0ce3d..0f2f9d775 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
@@ -113,9 +113,9 @@ public class HiveTableSchemaTest {
         String expected =
                 String.join(
                         "\n",
-                        "Hive DDL and table store schema mismatched! "
+                        "Hive DDL and paimon schema mismatched! "
                                 + "It is recommended not to write any column definition "
-                                + "as Flink table store external table can read schema from the specified location.",
+                                + "as Flink paimon external table can read schema from the specified location.",
                         "Mismatched fields are:",
                         "Field #1",
                         "Hive DDL          : mismatched string",
@@ -142,9 +142,9 @@ public class HiveTableSchemaTest {
         String expected =
                 String.join(
                         "\n",
-                        "Hive DDL and table store schema mismatched! "
+                        "Hive DDL and paimon schema mismatched! "
                                 + "It is recommended not to write any column definition "
-                                + "as Flink table store external table can read schema from the specified location.",
+                                + "as Flink paimon external table can read schema from the specified location.",
                         "Mismatched fields are:",
                         "Field #1",
                         "Hive DDL          : null",
@@ -180,9 +180,9 @@ public class HiveTableSchemaTest {
         String expected =
                 String.join(
                         "\n",
-                        "Hive DDL and table store schema mismatched! "
+                        "Hive DDL and paimon schema mismatched! "
                                 + "It is recommended not to write any column definition "
-                                + "as Flink table store external table can read schema from the specified location.",
+                                + "as Flink paimon external table can read schema from the specified location.",
                         "Mismatched fields are:",
                         "Field #3",
                         "Hive DDL          : d int",
diff --git a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
index 2203b4d85..bad4b6a7f 100644
--- a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
+++ b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
@@ -39,7 +39,7 @@ import java.util.List;
 import java.util.OptionalLong;
 import java.util.stream.Collectors;
 
-/** A Spark {@link DataSourceReader} for table store. */
+/** A Spark {@link DataSourceReader} for paimon. */
 public class SparkDataSourceReader
         implements SupportsPushDownFilters,
                 SupportsPushDownRequiredColumns,
diff --git a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkInputPartition.java b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
index e922dd9a2..12501f2de 100644
--- a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
+++ b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
@@ -29,7 +29,7 @@ import org.apache.spark.sql.sources.v2.reader.InputPartitionReader;
 import java.io.IOException;
 import java.io.UncheckedIOException;
 
-/** A Spark {@link InputPartition} for table store. */
+/** A Spark {@link InputPartition} for paimon. */
 public class SparkInputPartition
         implements InputPartition<org.apache.spark.sql.catalyst.InternalRow> {
 
diff --git a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
index c60d68797..cc743b483 100644
--- a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
+++ b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.spark.sql.SparkSession;
@@ -30,11 +29,11 @@ import org.apache.spark.sql.sources.v2.SessionConfigSupport;
 import org.apache.spark.sql.sources.v2.reader.DataSourceReader;
 import org.apache.spark.sql.types.StructType;
 
-/** The Spark source for table store. */
+/** The Spark source for paimon. */
 public class SparkSource implements DataSourceRegister, ReadSupport, SessionConfigSupport {
 
     /** Not use 'paimon' here, the '-' is not allowed in SQL. */
-    private static final String SHORT_NAME = "tablestore";
+    private static final String SHORT_NAME = "paimon";
 
     @Override
     public String shortName() {
diff --git a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkReadITCase.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
index 51f7e9fbc..e222dc545 100644
--- a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
@@ -103,14 +103,13 @@ public class SparkReadITCase {
 
     @Test
     public void testNormal() {
-        innerTestNormal(
-                spark.read().format("tablestore").option("path", tablePath1.toString()).load());
+        innerTestNormal(spark.read().format("paimon").option("path", tablePath1.toString()).load());
     }
 
     @Test
     public void testFilterPushDown() {
         innerTestFilterPushDown(
-                spark.read().format("tablestore").option("path", tablePath2.toString()).load());
+                spark.read().format("paimon").option("path", tablePath2.toString()).load());
     }
 
     private void innerTestNormal(Dataset<Row> dataset) {
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
index 1741f7eea..3851e1b9c 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
 import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.catalog.CatalogFactory;
 import org.apache.paimon.operation.Lock;
 import org.apache.paimon.options.Options;
@@ -63,7 +62,7 @@ import java.util.stream.Collectors;
 
 import static org.apache.paimon.spark.SparkTypeUtils.toFlinkType;
 
-/** Spark {@link TableCatalog} for table store. */
+/** Spark {@link TableCatalog} for paimon. */
 public class SparkCatalog implements TableCatalog, SupportsNamespaces {
 
     private static final String PRIMARY_KEY_IDENTIFIER = "primary-key";
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkInputPartition.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
index 407f312ce..d5bbf9863 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
@@ -21,7 +21,7 @@ package org.apache.paimon.spark;
 import org.apache.paimon.table.source.Split;
 import org.apache.spark.sql.connector.read.InputPartition;
 
-/** A Spark {@link InputPartition} for table store. */
+/** A Spark {@link InputPartition} for paimon. */
 public class SparkInputPartition implements InputPartition {
 
     private static final long serialVersionUID = 1L;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkReaderFactory.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkReaderFactory.java
index d8ac74ec7..acd49feef 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkReaderFactory.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkReaderFactory.java
@@ -28,7 +28,7 @@ import org.apache.spark.sql.connector.read.PartitionReaderFactory;
 import java.io.IOException;
 import java.io.UncheckedIOException;
 
-/** A Spark {@link PartitionReaderFactory} for table store. */
+/** A Spark {@link PartitionReaderFactory} for paimon. */
 public class SparkReaderFactory implements PartitionReaderFactory {
 
     private static final long serialVersionUID = 1L;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScan.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScan.java
index 9b3af437f..a84c2b80b 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScan.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScan.java
@@ -32,7 +32,7 @@ import java.util.List;
 import java.util.OptionalLong;
 
 /**
- * A Spark {@link Scan} for table store.
+ * A Spark {@link Scan} for paimon.
  *
  * <p>TODO Introduce a SparkRFScan to implement SupportsRuntimeFiltering.
  */
@@ -49,7 +49,7 @@ public class SparkScan implements Scan, SupportsReportStatistics {
     @Override
     public String description() {
         // TODO add filters
-        return String.format("tablestore(%s)", readBuilder.tableName());
+        return String.format("paimon(%s)", readBuilder.tableName());
     }
 
     @Override
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
index 65ed57124..735b7a944 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
@@ -30,7 +30,7 @@ import org.apache.spark.sql.types.StructType;
 import java.util.ArrayList;
 import java.util.List;
 
-/** A Spark {@link ScanBuilder} for table store. */
+/** A Spark {@link ScanBuilder} for paimon. */
 public class SparkScanBuilder
         implements ScanBuilder, SupportsPushDownFilters, SupportsPushDownRequiredColumns {
 
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
index 433df840b..2b6cc3368 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
@@ -18,8 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.catalog.CatalogContext;
-
+import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.operation.Lock;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTableFactory;
@@ -33,11 +32,11 @@ import org.apache.spark.sql.util.CaseInsensitiveStringMap;
 
 import java.util.Map;
 
-/** The spark source for table store. */
+/** The spark source for paimon. */
 public class SparkSource implements DataSourceRegister, SessionConfigSupport {
 
     /** Not use 'paimon' here, the '-' is not allowed in SQL. */
-    private static final String SHORT_NAME = "tablestore";
+    private static final String SHORT_NAME = "paimon";
 
     @Override
     public String shortName() {
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
index b0aef728f..6630113a2 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
@@ -45,7 +45,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
-/** A spark {@link org.apache.spark.sql.connector.catalog.Table} for table store. */
+/** A spark {@link org.apache.spark.sql.connector.catalog.Table} for paimon. */
 public class SparkTable
         implements org.apache.spark.sql.connector.catalog.Table,
                 SupportsRead,
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
index d0eae1fa0..81200543a 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
@@ -52,42 +52,41 @@ public class SparkReadITCase extends SparkReadTestBase {
 
     @Test
     public void testNormal() {
-        innerTestSimpleType(spark.table("tablestore.default.t1"));
+        innerTestSimpleType(spark.table("paimon.default.t1"));
 
-        innerTestNestedType(spark.table("tablestore.default.t2"));
+        innerTestNestedType(spark.table("paimon.default.t2"));
     }
 
     @Test
     public void testFilterPushDown() {
-        innerTestSimpleTypeFilterPushDown(spark.table("tablestore.default.t1"));
+        innerTestSimpleTypeFilterPushDown(spark.table("paimon.default.t1"));
 
-        innerTestNestedTypeFilterPushDown(spark.table("tablestore.default.t2"));
+        innerTestNestedTypeFilterPushDown(spark.table("paimon.default.t2"));
     }
 
     @Test
     public void testCatalogNormal() {
-        innerTestSimpleType(spark.table("tablestore.default.t1"));
-        innerTestNestedType(spark.table("tablestore.default.t2"));
+        innerTestSimpleType(spark.table("paimon.default.t1"));
+        innerTestNestedType(spark.table("paimon.default.t2"));
     }
 
     @Test
     public void testSnapshotsTable() {
         List<Row> rows =
-                spark.table("tablestore.default.`t1$snapshots`")
+                spark.table("paimon.default.`t1$snapshots`")
                         .select("snapshot_id", "schema_id", "commit_user", "commit_kind")
                         .collectAsList();
         assertThat(rows.toString()).isEqualTo("[[1,0,user,APPEND]]");
 
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         spark.sql(
                 "CREATE TABLE default.schemasTable (\n"
                         + "a BIGINT,\n"
-                        + "b STRING) USING tablestore\n"
+                        + "b STRING) USING paimon\n"
                         + "COMMENT 'table comment'\n"
                         + "TBLPROPERTIES ('primary-key' = 'a')");
         spark.sql("ALTER TABLE default.schemasTable ADD COLUMN c STRING");
-        List<Row> schemas =
-                spark.table("tablestore.default.`schemasTable$schemas`").collectAsList();
+        List<Row> schemas = spark.table("paimon.default.`schemasTable$schemas`").collectAsList();
         List<?> fieldsList = schemas.stream().map(row -> row.get(1)).collect(Collectors.toList());
         assertThat(fieldsList.stream().map(Object::toString).collect(Collectors.toList()))
                 .containsExactlyInAnyOrder(
@@ -101,7 +100,7 @@ public class SparkReadITCase extends SparkReadTestBase {
     @Test
     public void testSnapshotsTableWithRecordCount() {
         List<Row> rows =
-                spark.table("tablestore.default.`t1$snapshots`")
+                spark.table("paimon.default.`t1$snapshots`")
                         .select(
                                 "snapshot_id",
                                 "total_record_count",
@@ -113,27 +112,27 @@ public class SparkReadITCase extends SparkReadTestBase {
 
     @Test
     public void testCatalogFilterPushDown() {
-        innerTestSimpleTypeFilterPushDown(spark.table("tablestore.default.t1"));
+        innerTestSimpleTypeFilterPushDown(spark.table("paimon.default.t1"));
 
-        innerTestNestedTypeFilterPushDown(spark.table("tablestore.default.t2"));
+        innerTestNestedTypeFilterPushDown(spark.table("paimon.default.t2"));
     }
 
     @Test
     public void testDefaultNamespace() {
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         assertThat(spark.sql("SHOW CURRENT NAMESPACE").collectAsList().toString())
-                .isEqualTo("[[tablestore,default]]");
+                .isEqualTo("[[paimon,default]]");
     }
 
     @Test
     public void testCreateTable() {
         spark.sql(
-                "CREATE TABLE tablestore.default.testCreateTable(\n"
+                "CREATE TABLE paimon.default.testCreateTable(\n"
                         + "a BIGINT,\n"
                         + "b VARCHAR(10),\n"
                         + "c CHAR(10))");
         assertThat(
-                        spark.sql("SELECT fields FROM tablestore.default.`testCreateTable$schemas`")
+                        spark.sql("SELECT fields FROM paimon.default.`testCreateTable$schemas`")
                                 .collectAsList()
                                 .toString())
                 .isEqualTo(
@@ -162,7 +161,7 @@ public class SparkReadITCase extends SparkReadTestBase {
                 "CREATE TABLE default.partitionedTable (\n"
                         + "a BIGINT,\n"
                         + "b STRING,"
-                        + "c STRING) USING tablestore\n"
+                        + "c STRING) USING paimon\n"
                         + "COMMENT 'table comment'\n"
                         + "PARTITIONED BY (a,b)");
         spark.sql("INSERT INTO default.partitionedTable VALUES(1,'aaa','bbb')");
@@ -279,11 +278,11 @@ public class SparkReadITCase extends SparkReadTestBase {
 
     @Test
     public void testCreateTableWithNullablePk() {
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         spark.sql(
                 "CREATE TABLE default.PkTable (\n"
                         + "a BIGINT,\n"
-                        + "b STRING) USING tablestore\n"
+                        + "b STRING) USING paimon\n"
                         + "COMMENT 'table comment'\n"
                         + "TBLPROPERTIES ('primary-key' = 'a')");
         Path tablePath = new Path(warehousePath, "default.db/PkTable");
@@ -293,11 +292,11 @@ public class SparkReadITCase extends SparkReadTestBase {
 
     @Test
     public void testDescribeTable() {
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         spark.sql(
                 "CREATE TABLE default.PartitionedTable (\n"
                         + "a BIGINT,\n"
-                        + "b STRING) USING tablestore\n"
+                        + "b STRING) USING paimon\n"
                         + "COMMENT 'table comment'\n"
                         + "PARTITIONED BY (a)\n"
                         + "TBLPROPERTIES ('foo' = 'bar')");
@@ -307,7 +306,7 @@ public class SparkReadITCase extends SparkReadTestBase {
 
     @Test
     public void testShowTableProperties() {
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         spark.sql(
                 "CREATE TABLE default.tbl (\n"
                         + "a INT\n"
@@ -325,14 +324,14 @@ public class SparkReadITCase extends SparkReadTestBase {
 
     @Test
     public void testCreateTableWithInvalidPk() {
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         assertThatThrownBy(
                         () ->
                                 spark.sql(
                                         "CREATE TABLE default.PartitionedPkTable (\n"
                                                 + "a BIGINT,\n"
                                                 + "b STRING,\n"
-                                                + "c DOUBLE) USING tablestore\n"
+                                                + "c DOUBLE) USING paimon\n"
                                                 + "COMMENT 'table comment'\n"
                                                 + "PARTITIONED BY (b)"
                                                 + "TBLPROPERTIES ('primary-key' = 'a')"))
@@ -343,14 +342,14 @@ public class SparkReadITCase extends SparkReadTestBase {
 
     @Test
     public void testCreateTableWithNonexistentPk() {
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         assertThatThrownBy(
                         () ->
                                 spark.sql(
                                         "CREATE TABLE default.PartitionedPkTable (\n"
                                                 + "a BIGINT,\n"
                                                 + "b STRING,\n"
-                                                + "c DOUBLE) USING tablestore\n"
+                                                + "c DOUBLE) USING paimon\n"
                                                 + "COMMENT 'table comment'\n"
                                                 + "PARTITIONED BY (b)"
                                                 + "TBLPROPERTIES ('primary-key' = 'd')"))
@@ -361,14 +360,14 @@ public class SparkReadITCase extends SparkReadTestBase {
 
     @Test
     public void testCreateTableWithNonexistentPartition() {
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         assertThatThrownBy(
                         () ->
                                 spark.sql(
                                         "CREATE TABLE default.PartitionedPkTable (\n"
                                                 + "a BIGINT,\n"
                                                 + "b STRING,\n"
-                                                + "c DOUBLE) USING tablestore\n"
+                                                + "c DOUBLE) USING paimon\n"
                                                 + "COMMENT 'table comment'\n"
                                                 + "PARTITIONED BY (d)"
                                                 + "TBLPROPERTIES ('primary-key' = 'a')"))
@@ -388,7 +387,7 @@ public class SparkReadITCase extends SparkReadTestBase {
 
     private void innerTest(
             String tableName, boolean hasPk, boolean partitioned, boolean appendOnly) {
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         String ddlTemplate =
                 "CREATE TABLE default.%s (\n"
                         + "order_id BIGINT NOT NULL comment 'order_id',\n"
@@ -396,7 +395,7 @@ public class SparkReadITCase extends SparkReadTestBase {
                         + "coupon_info ARRAY<STRING> NOT NULL COMMENT 'coupon_info',\n"
                         + "order_amount DOUBLE NOT NULL COMMENT 'order_amount',\n"
                         + "dt STRING NOT NULL COMMENT 'dt',\n"
-                        + "hh STRING NOT NULL COMMENT 'hh') USING tablestore\n"
+                        + "hh STRING NOT NULL COMMENT 'hh') USING paimon\n"
                         + "COMMENT 'table comment'\n"
                         + "%s\n"
                         + "TBLPROPERTIES (%s)";
@@ -503,7 +502,7 @@ public class SparkReadITCase extends SparkReadTestBase {
                 tableName,
                 "(1L, 10L, array('loyalty_discount', 'shipping_discount'), 199.0d, '2022-07-20', '12')");
 
-        Dataset<Row> dataset = spark.read().format("tablestore").load(tablePath.toString());
+        Dataset<Row> dataset = spark.read().format("paimon").load(tablePath.toString());
         assertThat(dataset.select("order_id", "buyer_id", "dt").collectAsList().toString())
                 .isEqualTo("[[1,10,2022-07-20]]");
         assertThat(dataset.select("coupon_info").collectAsList().toString())
@@ -513,19 +512,19 @@ public class SparkReadITCase extends SparkReadTestBase {
         assertThat(
                         spark.sql(
                                         String.format(
-                                                "SHOW TABLES IN tablestore.default LIKE '%s'",
+                                                "SHOW TABLES IN paimon.default LIKE '%s'",
                                                 tableName))
                                 .select("namespace", "tableName")
                                 .collectAsList()
                                 .toString())
                 .isEqualTo(String.format("[[default,%s]]", tableName));
 
-        spark.sql(String.format("DROP TABLE tablestore.default.%s", tableName));
+        spark.sql(String.format("DROP TABLE paimon.default.%s", tableName));
 
         assertThat(
                         spark.sql(
                                         String.format(
-                                                "SHOW TABLES IN tablestore.default LIKE '%s'",
+                                                "SHOW TABLES IN paimon.default LIKE '%s'",
                                                 tableName))
                                 .select("namespace", "tableName")
                                 .collectAsList()
@@ -538,7 +537,7 @@ public class SparkReadITCase extends SparkReadTestBase {
     @Test
     public void testCreateAndDropNamespace() {
         // create namespace
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         spark.sql("CREATE NAMESPACE bar");
 
         assertThatThrownBy(() -> spark.sql("CREATE NAMESPACE bar"))
@@ -631,9 +630,9 @@ public class SparkReadITCase extends SparkReadTestBase {
     @Test
     public void testCreateNestedField() {
         spark.sql(
-                "CREATE TABLE tablestore.default.nested_table ( a INT, b STRUCT<b1: STRUCT<b11: INT, b12 INT>, b2 BIGINT>)");
+                "CREATE TABLE paimon.default.nested_table ( a INT, b STRUCT<b1: STRUCT<b11: INT, b12 INT>, b2 BIGINT>)");
         assertThat(
-                        spark.sql("SHOW CREATE TABLE tablestore.default.nested_table")
+                        spark.sql("SHOW CREATE TABLE paimon.default.nested_table")
                                 .collectAsList()
                                 .toString())
                 .isEqualTo(
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
index e2d12c420..eb76e8149 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
@@ -61,9 +61,9 @@ public abstract class SparkReadTestBase {
     public static void startMetastoreAndSpark(@TempDir java.nio.file.Path tempDir) {
         warehousePath = new Path("file:" + tempDir.toString());
         spark = SparkSession.builder().master("local[2]").getOrCreate();
-        spark.conf().set("spark.sql.catalog.tablestore", SparkCatalog.class.getName());
-        spark.conf().set("spark.sql.catalog.tablestore.warehouse", warehousePath.toString());
-        spark.sql("USE tablestore");
+        spark.conf().set("spark.sql.catalog.paimon", SparkCatalog.class.getName());
+        spark.conf().set("spark.sql.catalog.paimon.warehouse", warehousePath.toString());
+        spark.sql("USE paimon");
         spark.sql("CREATE NAMESPACE default");
     }
 
@@ -93,7 +93,7 @@ public abstract class SparkReadTestBase {
         // c row<row<double, array<boolean> not null> not null, bigint> not null
         tablePath2 = new Path(warehousePath, "default.db/t2");
         spark.sql(
-                "CREATE TABLE tablestore.default.t2 ("
+                "CREATE TABLE paimon.default.t2 ("
                         + "a INT NOT NULL COMMENT 'comment about a', "
                         + "b ARRAY<STRING> NOT NULL, "
                         + "c STRUCT<c1: STRUCT<c11: DOUBLE, c12: ARRAY<BOOLEAN> NOT NULL> NOT NULL, "
@@ -161,7 +161,7 @@ public abstract class SparkReadTestBase {
     protected static void createTable(String tableName) {
         spark.sql(
                 String.format(
-                        "CREATE TABLE tablestore.default.%s (a INT NOT NULL, b BIGINT, c STRING) TBLPROPERTIES ('file.format'='avro')",
+                        "CREATE TABLE paimon.default.%s (a INT NOT NULL, b BIGINT, c STRING) TBLPROPERTIES ('file.format'='avro')",
                         tableName));
     }
 
@@ -182,7 +182,7 @@ public abstract class SparkReadTestBase {
     protected static void writeTable(String tableName, String... values) {
         spark.sql(
                 String.format(
-                        "INSERT INTO tablestore.default.%s VALUES %s",
+                        "INSERT INTO paimon.default.%s VALUES %s",
                         tableName, StringUtils.join(values, ",")));
     }
 }
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkS3ITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkS3ITCase.java
index b648b54de..83a7c9ddb 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkS3ITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkS3ITCase.java
@@ -51,13 +51,13 @@ public class SparkS3ITCase {
         String path = MINIO_CONTAINER.getS3UriForDefaultBucket() + "/" + UUID.randomUUID();
         Path warehousePath = new Path(path);
         spark = SparkSession.builder().master("local[2]").getOrCreate();
-        spark.conf().set("spark.sql.catalog.tablestore", SparkCatalog.class.getName());
-        spark.conf().set("spark.sql.catalog.tablestore.warehouse", warehousePath.toString());
+        spark.conf().set("spark.sql.catalog.paimon", SparkCatalog.class.getName());
+        spark.conf().set("spark.sql.catalog.paimon.warehouse", warehousePath.toString());
         MINIO_CONTAINER
                 .getS3ConfigOptions()
-                .forEach((k, v) -> spark.conf().set("spark.sql.catalog.tablestore." + k, v));
-        spark.sql("CREATE DATABASE tablestore.db");
-        spark.sql("USE tablestore.db");
+                .forEach((k, v) -> spark.conf().set("spark.sql.catalog.paimon." + k, v));
+        spark.sql("CREATE DATABASE paimon.db");
+        spark.sql("USE paimon.db");
     }
 
     @AfterAll
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkSchemaEvolutionITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkSchemaEvolutionITCase.java
index 983544847..e21df7adf 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkSchemaEvolutionITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkSchemaEvolutionITCase.java
@@ -37,24 +37,21 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
 
     @Test
     public void testSetAndRemoveOption() {
-        spark.sql("ALTER TABLE tablestore.default.t1 SET TBLPROPERTIES('xyc' 'unknown1')");
+        spark.sql("ALTER TABLE paimon.default.t1 SET TBLPROPERTIES('xyc' 'unknown1')");
 
         Map<String, String> options =
-                rowsToMap(
-                        spark.sql("SELECT * FROM tablestore.default.`t1$options`").collectAsList());
+                rowsToMap(spark.sql("SELECT * FROM paimon.default.`t1$options`").collectAsList());
         assertThat(options).containsEntry("xyc", "unknown1");
 
-        spark.sql("ALTER TABLE tablestore.default.t1 UNSET TBLPROPERTIES('xyc')");
+        spark.sql("ALTER TABLE paimon.default.t1 UNSET TBLPROPERTIES('xyc')");
 
-        options =
-                rowsToMap(
-                        spark.sql("SELECT * FROM tablestore.default.`t1$options`").collectAsList());
+        options = rowsToMap(spark.sql("SELECT * FROM paimon.default.`t1$options`").collectAsList());
         assertThat(options).doesNotContainKey("xyc");
 
         assertThatThrownBy(
                         () ->
                                 spark.sql(
-                                        "ALTER TABLE tablestore.default.t1 SET TBLPROPERTIES('primary-key' = 'a')"))
+                                        "ALTER TABLE paimon.default.t1 SET TBLPROPERTIES('primary-key' = 'a')"))
                 .isInstanceOf(UnsupportedOperationException.class)
                 .hasMessageContaining("Alter primary key is not supported");
     }
@@ -71,9 +68,9 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         createTable("testAddColumn");
         writeTable("testAddColumn", "(1, 2L, '1')", "(5, 6L, '3')");
 
-        spark.sql("ALTER TABLE tablestore.default.testAddColumn ADD COLUMN d STRING");
+        spark.sql("ALTER TABLE paimon.default.testAddColumn ADD COLUMN d STRING");
 
-        Dataset<Row> table = spark.table("tablestore.default.testAddColumn");
+        Dataset<Row> table = spark.table("paimon.default.testAddColumn");
         List<Row> results = table.collectAsList();
         assertThat(results.toString()).isEqualTo("[[1,2,1,null], [5,6,3,null]]");
 
@@ -89,8 +86,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         createTable("testAddNotNullColumn");
 
         List<Row> beforeAdd =
-                spark.sql("SHOW CREATE TABLE tablestore.default.testAddNotNullColumn")
-                        .collectAsList();
+                spark.sql("SHOW CREATE TABLE paimon.default.testAddNotNullColumn").collectAsList();
         assertThat(beforeAdd.toString())
                 .isEqualTo(
                         "[[CREATE TABLE testAddNotNullColumn (\n"
@@ -103,7 +99,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         assertThatThrownBy(
                         () ->
                                 spark.sql(
-                                        "ALTER TABLE tablestore.default.testAddNotNullColumn ADD COLUMNS (d INT NOT NULL)"))
+                                        "ALTER TABLE paimon.default.testAddNotNullColumn ADD COLUMNS (d INT NOT NULL)"))
                 .isInstanceOf(RuntimeException.class)
                 .hasMessage(
                         "java.lang.IllegalArgumentException: ADD COLUMN cannot specify NOT NULL.");
@@ -125,8 +121,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         assertThat(tables.stream().map(Row::toString))
                 .containsExactlyInAnyOrder("[default,t2,false]", "[default,t3,false]");
 
-        List<Row> afterRename =
-                spark.sql("SHOW CREATE TABLE tablestore.default.t3").collectAsList();
+        List<Row> afterRename = spark.sql("SHOW CREATE TABLE paimon.default.t3").collectAsList();
         assertThat(afterRename.toString())
                 .isEqualTo(
                         "[[CREATE TABLE t3 (\n"
@@ -146,7 +141,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         writeTable("testRenameColumn", "(1, 2L, '1')", "(5, 6L, '3')");
 
         List<Row> beforeRename =
-                spark.sql("SHOW CREATE TABLE tablestore.default.testRenameColumn").collectAsList();
+                spark.sql("SHOW CREATE TABLE paimon.default.testRenameColumn").collectAsList();
         assertThat(beforeRename.toString())
                 .isEqualTo(
                         "[[CREATE TABLE testRenameColumn (\n"
@@ -155,14 +150,14 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                                 + "  `c` STRING)\n"
                                 + buildTableProperties("default.db/testRenameColumn")
                                 + "]]");
-        Dataset<Row> table1 = spark.table("tablestore.default.testRenameColumn");
+        Dataset<Row> table1 = spark.table("paimon.default.testRenameColumn");
         List<Row> results = table1.select("a", "c").collectAsList();
         assertThat(results.toString()).isEqualTo("[[1,1], [5,3]]");
 
         // Rename "a" to "aa"
-        spark.sql("ALTER TABLE tablestore.default.testRenameColumn RENAME COLUMN a to aa");
+        spark.sql("ALTER TABLE paimon.default.testRenameColumn RENAME COLUMN a to aa");
         List<Row> afterRename =
-                spark.sql("SHOW CREATE TABLE tablestore.default.testRenameColumn").collectAsList();
+                spark.sql("SHOW CREATE TABLE paimon.default.testRenameColumn").collectAsList();
         assertThat(afterRename.toString())
                 .isEqualTo(
                         "[[CREATE TABLE testRenameColumn (\n"
@@ -171,7 +166,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                                 + "  `c` STRING)\n"
                                 + buildTableProperties("default.db/testRenameColumn")
                                 + "]]");
-        Dataset<Row> table2 = spark.table("tablestore.default.testRenameColumn");
+        Dataset<Row> table2 = spark.table("paimon.default.testRenameColumn");
         results = table2.select("aa", "c").collectAsList();
         assertThat(results.toString()).isEqualTo("[[1,1], [5,3]]");
         assertThatThrownBy(() -> table2.select("a", "c").collectAsList())
@@ -181,24 +176,24 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
 
     @Test
     public void testRenamePartitionKey() {
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         spark.sql(
                 "CREATE TABLE default.testRenamePartitionKey (\n"
                         + "a BIGINT,\n"
-                        + "b STRING) USING tablestore\n"
+                        + "b STRING) USING paimon\n"
                         + "COMMENT 'table comment'\n"
                         + "PARTITIONED BY (a)\n"
                         + "TBLPROPERTIES ('foo' = 'bar')");
 
         List<Row> beforeRename =
-                spark.sql("SHOW CREATE TABLE tablestore.default.testRenamePartitionKey")
+                spark.sql("SHOW CREATE TABLE paimon.default.testRenamePartitionKey")
                         .collectAsList();
         assertThat(beforeRename.toString())
                 .isEqualTo(
                         "[[CREATE TABLE testRenamePartitionKey (\n"
                                 + "  `a` BIGINT,\n"
                                 + "  `b` STRING)\n"
-                                + "USING tablestore\n"
+                                + "USING paimon\n"
                                 + "PARTITIONED BY (a)\n"
                                 + "COMMENT 'table comment'\n"
                                 + "TBLPROPERTIES(\n"
@@ -211,7 +206,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         assertThatThrownBy(
                         () ->
                                 spark.sql(
-                                        "ALTER TABLE tablestore.default.testRenamePartitionKey RENAME COLUMN a to aa"))
+                                        "ALTER TABLE paimon.default.testRenamePartitionKey RENAME COLUMN a to aa"))
                 .isInstanceOf(RuntimeException.class)
                 .hasMessage(
                         String.format(
@@ -225,8 +220,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         writeTable("testDropSingleColumn", "(1, 2L, '1')", "(5, 6L, '3')");
 
         List<Row> beforeDrop =
-                spark.sql("SHOW CREATE TABLE tablestore.default.testDropSingleColumn")
-                        .collectAsList();
+                spark.sql("SHOW CREATE TABLE paimon.default.testDropSingleColumn").collectAsList();
         assertThat(beforeDrop.toString())
                 .isEqualTo(
                         "[[CREATE TABLE testDropSingleColumn (\n"
@@ -236,11 +230,10 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                                 + buildTableProperties("default.db/testDropSingleColumn")
                                 + "]]");
 
-        spark.sql("ALTER TABLE tablestore.default.testDropSingleColumn DROP COLUMN a");
+        spark.sql("ALTER TABLE paimon.default.testDropSingleColumn DROP COLUMN a");
 
         List<Row> afterDrop =
-                spark.sql("SHOW CREATE TABLE tablestore.default.testDropSingleColumn")
-                        .collectAsList();
+                spark.sql("SHOW CREATE TABLE paimon.default.testDropSingleColumn").collectAsList();
         assertThat(afterDrop.toString())
                 .isEqualTo(
                         "[[CREATE TABLE testDropSingleColumn (\n"
@@ -249,7 +242,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                                 + buildTableProperties("default.db/testDropSingleColumn")
                                 + "]]");
 
-        Dataset<Row> table = spark.table("tablestore.default.testDropSingleColumn");
+        Dataset<Row> table = spark.table("paimon.default.testDropSingleColumn");
         List<Row> results = table.collectAsList();
         assertThat(results.toString()).isEqualTo("[[2,1], [6,3]]");
     }
@@ -259,7 +252,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         createTable("testDropColumns");
 
         List<Row> beforeRename =
-                spark.sql("SHOW CREATE TABLE tablestore.default.testDropColumns").collectAsList();
+                spark.sql("SHOW CREATE TABLE paimon.default.testDropColumns").collectAsList();
         assertThat(beforeRename.toString())
                 .isEqualTo(
                         "[[CREATE TABLE testDropColumns (\n"
@@ -269,10 +262,10 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                                 + buildTableProperties("default.db/testDropColumns")
                                 + "]]");
 
-        spark.sql("ALTER TABLE tablestore.default.testDropColumns DROP COLUMNS a, b");
+        spark.sql("ALTER TABLE paimon.default.testDropColumns DROP COLUMNS a, b");
 
         List<Row> afterRename =
-                spark.sql("SHOW CREATE TABLE tablestore.default.testDropColumns").collectAsList();
+                spark.sql("SHOW CREATE TABLE paimon.default.testDropColumns").collectAsList();
         assertThat(afterRename.toString())
                 .isEqualTo(
                         "[[CREATE TABLE testDropColumns (\n"
@@ -283,24 +276,23 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
 
     @Test
     public void testDropPartitionKey() {
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         spark.sql(
                 "CREATE TABLE default.testDropPartitionKey (\n"
                         + "a BIGINT,\n"
-                        + "b STRING) USING tablestore\n"
+                        + "b STRING) USING paimon\n"
                         + "COMMENT 'table comment'\n"
                         + "PARTITIONED BY (a)\n"
                         + "TBLPROPERTIES ('foo' = 'bar')");
 
         List<Row> beforeRename =
-                spark.sql("SHOW CREATE TABLE tablestore.default.testDropPartitionKey")
-                        .collectAsList();
+                spark.sql("SHOW CREATE TABLE paimon.default.testDropPartitionKey").collectAsList();
         assertThat(beforeRename.toString())
                 .isEqualTo(
                         "[[CREATE TABLE testDropPartitionKey (\n"
                                 + "  `a` BIGINT,\n"
                                 + "  `b` STRING)\n"
-                                + "USING tablestore\n"
+                                + "USING paimon\n"
                                 + "PARTITIONED BY (a)\n"
                                 + "COMMENT 'table comment'\n"
                                 + "TBLPROPERTIES(\n"
@@ -313,7 +305,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         assertThatThrownBy(
                         () ->
                                 spark.sql(
-                                        "ALTER TABLE tablestore.default.testDropPartitionKey DROP COLUMN a"))
+                                        "ALTER TABLE paimon.default.testDropPartitionKey DROP COLUMN a"))
                 .isInstanceOf(RuntimeException.class)
                 .hasMessage(
                         String.format(
@@ -323,24 +315,23 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
 
     @Test
     public void testDropPrimaryKey() {
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         spark.sql(
                 "CREATE TABLE default.testDropPrimaryKey (\n"
                         + "a BIGINT,\n"
-                        + "b STRING) USING tablestore\n"
+                        + "b STRING) USING paimon\n"
                         + "COMMENT 'table comment'\n"
                         + "PARTITIONED BY (a)\n"
                         + "TBLPROPERTIES ('primary-key' = 'a, b')");
 
         List<Row> beforeRename =
-                spark.sql("SHOW CREATE TABLE tablestore.default.testDropPrimaryKey")
-                        .collectAsList();
+                spark.sql("SHOW CREATE TABLE paimon.default.testDropPrimaryKey").collectAsList();
         assertThat(beforeRename.toString())
                 .isEqualTo(
                         "[[CREATE TABLE testDropPrimaryKey (\n"
                                 + "  `a` BIGINT NOT NULL,\n"
                                 + "  `b` STRING NOT NULL)\n"
-                                + "USING tablestore\n"
+                                + "USING paimon\n"
                                 + "PARTITIONED BY (a)\n"
                                 + "COMMENT 'table comment'\n"
                                 + "TBLPROPERTIES(\n"
@@ -352,7 +343,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         assertThatThrownBy(
                         () ->
                                 spark.sql(
-                                        "ALTER TABLE tablestore.default.testDropPrimaryKey DROP COLUMN b"))
+                                        "ALTER TABLE paimon.default.testDropPrimaryKey DROP COLUMN b"))
                 .isInstanceOf(RuntimeException.class)
                 .hasMessage(
                         String.format(
@@ -412,12 +403,11 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         // missing column
         spark.sql("CREATE TABLE tableMissing (a INT , b BIGINT, c STRING)");
         assertThatThrownBy(() -> spark.sql("ALTER TABLE tableMissing ALTER COLUMN d FIRST"))
-                .hasMessageContaining("Missing field d in table tablestore.default.tableMissing");
+                .hasMessageContaining("Missing field d in table paimon.default.tableMissing");
 
         spark.sql("CREATE TABLE tableMissingAfter (a INT , b BIGINT, c STRING)");
         assertThatThrownBy(() -> spark.sql("ALTER TABLE tableMissingAfter ALTER COLUMN a AFTER d"))
-                .hasMessageContaining(
-                        "Missing field d in table tablestore.default.tableMissingAfter");
+                .hasMessageContaining("Missing field d in table paimon.default.tableMissingAfter");
     }
 
     @Test
@@ -425,18 +415,16 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         createTable("testAlterColumnType");
         writeTable("testAlterColumnType", "(1, 2L, '1')", "(5, 6L, '3')");
 
-        spark.sql("ALTER TABLE tablestore.default.testAlterColumnType ALTER COLUMN b TYPE DOUBLE");
+        spark.sql("ALTER TABLE paimon.default.testAlterColumnType ALTER COLUMN b TYPE DOUBLE");
         assertThat(
-                        spark.table("tablestore.default.testAlterColumnType").collectAsList()
-                                .stream()
+                        spark.table("paimon.default.testAlterColumnType").collectAsList().stream()
                                 .map(Row::toString)
                                 .collect(Collectors.toList()))
                 .containsExactlyInAnyOrder("[1,2.0,1]", "[5,6.0,3]");
 
-        spark.sql("ALTER TABLE tablestore.default.testAlterColumnType DROP COLUMNS a");
+        spark.sql("ALTER TABLE paimon.default.testAlterColumnType DROP COLUMNS a");
         assertThat(
-                        spark.table("tablestore.default.testAlterColumnType").collectAsList()
-                                .stream()
+                        spark.table("paimon.default.testAlterColumnType").collectAsList().stream()
                                 .map(Row::toString)
                                 .collect(Collectors.toList()))
                 .containsExactlyInAnyOrder("[2.0,1]", "[6.0,3]");
@@ -455,30 +443,30 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                 .isFalse();
 
         // note: for Spark, it is illegal to change nullable column to non-nullable
-        spark.sql("ALTER TABLE tablestore.default.t2 ALTER COLUMN a DROP NOT NULL");
+        spark.sql("ALTER TABLE paimon.default.t2 ALTER COLUMN a DROP NOT NULL");
         assertThat(fieldIsNullable(getField(schema2(), 0))).isTrue();
 
-        spark.sql("ALTER TABLE tablestore.default.t2 ALTER COLUMN b DROP NOT NULL");
+        spark.sql("ALTER TABLE paimon.default.t2 ALTER COLUMN b DROP NOT NULL");
         assertThat(fieldIsNullable(getField(schema2(), 1))).isTrue();
 
-        spark.sql("ALTER TABLE tablestore.default.t2 ALTER COLUMN c DROP NOT NULL");
+        spark.sql("ALTER TABLE paimon.default.t2 ALTER COLUMN c DROP NOT NULL");
         assertThat(fieldIsNullable(getField(schema2(), 2))).isTrue();
 
-        spark.sql("ALTER TABLE tablestore.default.t2 ALTER COLUMN c.c1 DROP NOT NULL");
+        spark.sql("ALTER TABLE paimon.default.t2 ALTER COLUMN c.c1 DROP NOT NULL");
         assertThat(fieldIsNullable(getNestedField(getField(schema2(), 2), 0))).isTrue();
 
-        spark.sql("ALTER TABLE tablestore.default.t2 ALTER COLUMN c.c1.c12 DROP NOT NULL");
+        spark.sql("ALTER TABLE paimon.default.t2 ALTER COLUMN c.c1.c12 DROP NOT NULL");
         assertThat(fieldIsNullable(getNestedField(getNestedField(getField(schema2(), 2), 0), 1)))
                 .isTrue();
     }
 
     @Test
     public void testAlterPrimaryKeyNullability() {
-        spark.sql("USE tablestore");
+        spark.sql("USE paimon");
         spark.sql(
                 "CREATE TABLE default.testAlterPkNullability (\n"
                         + "a BIGINT,\n"
-                        + "b STRING) USING tablestore\n"
+                        + "b STRING) USING paimon\n"
                         + "COMMENT 'table comment'\n"
                         + "TBLPROPERTIES ('primary-key' = 'a')");
         assertThatThrownBy(
@@ -495,10 +483,10 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         createTable("testAlterTableColumnComment");
         assertThat(getField(schema1(), 0).description()).isNull();
 
-        spark.sql("ALTER TABLE tablestore.default.t1 ALTER COLUMN a COMMENT 'a new comment'");
+        spark.sql("ALTER TABLE paimon.default.t1 ALTER COLUMN a COMMENT 'a new comment'");
         assertThat(getField(schema1(), 0).description()).isEqualTo("a new comment");
 
-        spark.sql("ALTER TABLE tablestore.default.t1 ALTER COLUMN a COMMENT 'yet another comment'");
+        spark.sql("ALTER TABLE paimon.default.t1 ALTER COLUMN a COMMENT 'yet another comment'");
         assertThat(getField(schema1(), 0).description()).isEqualTo("yet another comment");
 
         assertThat(getField(schema2(), 2).description()).isEqualTo("comment about c");
@@ -511,13 +499,11 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                 .isNull();
 
         spark.sql(
-                "ALTER TABLE tablestore.default.t2 ALTER COLUMN c COMMENT 'yet another comment about c'");
-        spark.sql("ALTER TABLE tablestore.default.t2 ALTER COLUMN c.c1 COMMENT 'a nested type'");
-        spark.sql("ALTER TABLE tablestore.default.t2 ALTER COLUMN c.c2 COMMENT 'a bigint type'");
-        spark.sql(
-                "ALTER TABLE tablestore.default.t2 ALTER COLUMN c.c1.c11 COMMENT 'a double type'");
-        spark.sql(
-                "ALTER TABLE tablestore.default.t2 ALTER COLUMN c.c1.c12 COMMENT 'a boolean array'");
+                "ALTER TABLE paimon.default.t2 ALTER COLUMN c COMMENT 'yet another comment about c'");
+        spark.sql("ALTER TABLE paimon.default.t2 ALTER COLUMN c.c1 COMMENT 'a nested type'");
+        spark.sql("ALTER TABLE paimon.default.t2 ALTER COLUMN c.c2 COMMENT 'a bigint type'");
+        spark.sql("ALTER TABLE paimon.default.t2 ALTER COLUMN c.c1.c11 COMMENT 'a double type'");
+        spark.sql("ALTER TABLE paimon.default.t2 ALTER COLUMN c.c1.c12 COMMENT 'a boolean array'");
 
         assertThat(getField(schema2(), 2).description()).isEqualTo("yet another comment about c");
         assertThat(getNestedField(getField(schema2(), 2), 0).description())
@@ -551,7 +537,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
     public void testSchemaEvolution() {
         // Create table with fields [a, b, c] and insert 2 records
         spark.sql(
-                "CREATE TABLE tablestore.default.testSchemaEvolution(\n"
+                "CREATE TABLE paimon.default.testSchemaEvolution(\n"
                         + "a INT NOT NULL, \n"
                         + "b BIGINT NOT NULL, \n"
                         + "c VARCHAR(10), \n"
@@ -561,19 +547,18 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                         + "TBLPROPERTIES ('file.format'='avro')");
         writeTable("testSchemaEvolution", "(1, 2L, '3', 4, 5, 6)", "(7, 8L, '9', 10, 11, 12)");
         assertThat(
-                        spark.table("tablestore.default.testSchemaEvolution").collectAsList()
-                                .stream()
+                        spark.table("paimon.default.testSchemaEvolution").collectAsList().stream()
                                 .map(Row::toString)
                                 .collect(Collectors.toList()))
                 .containsExactlyInAnyOrder("[1,2,3,4,5,6]", "[7,8,9,10,11,12]");
         assertThat(
-                        spark.table("tablestore.default.testSchemaEvolution").select("a", "c", "e")
+                        spark.table("paimon.default.testSchemaEvolution").select("a", "c", "e")
                                 .collectAsList().stream()
                                 .map(Row::toString)
                                 .collect(Collectors.toList()))
                 .containsExactlyInAnyOrder("[1,3,5]", "[7,9,11]");
         assertThat(
-                        spark.table("tablestore.default.testSchemaEvolution").filter("a>1")
+                        spark.table("paimon.default.testSchemaEvolution").filter("a>1")
                                 .collectAsList().stream()
                                 .map(Row::toString)
                                 .collect(Collectors.toList()))
@@ -582,21 +567,20 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         // Rename (a, int)->(aa, bigint), c->a, b->c, (d, int)->(b, bigint), (f, int)->(ff, float),
         // the fields are [(1, aa, bigint), (2, c, bigint), (3, a, string), (4, b, bigint), (5, e,
         // int), (6, ff, float)] and insert 2 records
-        spark.sql("ALTER TABLE tablestore.default.testSchemaEvolution RENAME COLUMN a to aa");
-        spark.sql("ALTER TABLE tablestore.default.testSchemaEvolution ALTER COLUMN aa TYPE bigint");
-        spark.sql("ALTER TABLE tablestore.default.testSchemaEvolution RENAME COLUMN c to a");
-        spark.sql("ALTER TABLE tablestore.default.testSchemaEvolution RENAME COLUMN b to c");
-        spark.sql("ALTER TABLE tablestore.default.testSchemaEvolution RENAME COLUMN d to b");
-        spark.sql("ALTER TABLE tablestore.default.testSchemaEvolution ALTER COLUMN b TYPE bigint");
-        spark.sql("ALTER TABLE tablestore.default.testSchemaEvolution RENAME COLUMN f to ff");
-        spark.sql("ALTER TABLE tablestore.default.testSchemaEvolution ALTER COLUMN ff TYPE float");
+        spark.sql("ALTER TABLE paimon.default.testSchemaEvolution RENAME COLUMN a to aa");
+        spark.sql("ALTER TABLE paimon.default.testSchemaEvolution ALTER COLUMN aa TYPE bigint");
+        spark.sql("ALTER TABLE paimon.default.testSchemaEvolution RENAME COLUMN c to a");
+        spark.sql("ALTER TABLE paimon.default.testSchemaEvolution RENAME COLUMN b to c");
+        spark.sql("ALTER TABLE paimon.default.testSchemaEvolution RENAME COLUMN d to b");
+        spark.sql("ALTER TABLE paimon.default.testSchemaEvolution ALTER COLUMN b TYPE bigint");
+        spark.sql("ALTER TABLE paimon.default.testSchemaEvolution RENAME COLUMN f to ff");
+        spark.sql("ALTER TABLE paimon.default.testSchemaEvolution ALTER COLUMN ff TYPE float");
         writeTable(
                 "testSchemaEvolution",
                 "(13L, 14L, '15', 16L, 17, 18.0F)",
                 "(19L, 20L, '21', 22L, 23, 24.0F)");
         assertThat(
-                        spark.table("tablestore.default.testSchemaEvolution").collectAsList()
-                                .stream()
+                        spark.table("paimon.default.testSchemaEvolution").collectAsList().stream()
                                 .map(Row::toString)
                                 .collect(Collectors.toList()))
                 .containsExactlyInAnyOrder(
@@ -605,27 +589,26 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                         "[13,14,15,16,17,18.0]",
                         "[19,20,21,22,23,24.0]");
         assertThat(
-                        spark.table("tablestore.default.testSchemaEvolution")
-                                .select("aa", "b", "ff").collectAsList().stream()
+                        spark.table("paimon.default.testSchemaEvolution").select("aa", "b", "ff")
+                                .collectAsList().stream()
                                 .map(Row::toString)
                                 .collect(Collectors.toList()))
                 .containsExactlyInAnyOrder(
                         "[1,4,6.0]", "[7,10,12.0]", "[13,16,18.0]", "[19,22,24.0]");
         assertThat(
-                        spark.table("tablestore.default.testSchemaEvolution")
-                                .select("aa", "a", "ff").filter("b>10L").collectAsList().stream()
+                        spark.table("paimon.default.testSchemaEvolution").select("aa", "a", "ff")
+                                .filter("b>10L").collectAsList().stream()
                                 .map(Row::toString)
                                 .collect(Collectors.toList()))
                 .containsExactlyInAnyOrder("[13,15,18.0]", "[19,21,24.0]");
 
         // Drop fields aa, c, e, the fields are [(3, a, string), (4, b, bigint), (6, ff, float)] and
         // insert 2 records
-        spark.sql("ALTER TABLE tablestore.default.testSchemaEvolution DROP COLUMNS aa, c, e");
+        spark.sql("ALTER TABLE paimon.default.testSchemaEvolution DROP COLUMNS aa, c, e");
         writeTable("testSchemaEvolution", "('25', 26L, 27.0F)", "('28', 29L, 30.0)");
 
         assertThat(
-                        spark.table("tablestore.default.testSchemaEvolution").collectAsList()
-                                .stream()
+                        spark.table("paimon.default.testSchemaEvolution").collectAsList().stream()
                                 .map(Row::toString)
                                 .collect(Collectors.toList()))
                 .containsExactlyInAnyOrder(
@@ -636,7 +619,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                         "[25,26,27.0]",
                         "[28,29,30.0]");
         assertThat(
-                        spark.table("tablestore.default.testSchemaEvolution").select("a", "ff")
+                        spark.table("paimon.default.testSchemaEvolution").select("a", "ff")
                                 .filter("b>10L").collectAsList().stream()
                                 .map(Row::toString)
                                 .collect(Collectors.toList()))
@@ -645,15 +628,14 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         // Add new fields d, c, e, the fields are [(3, a, string), (4, b, bigint), (6, ff, float),
         // (7, d, int), (8, c, int), (9, e, int)] insert 2 records
         spark.sql(
-                "ALTER TABLE tablestore.default.testSchemaEvolution ADD COLUMNS (d INT, c INT, e INT)");
+                "ALTER TABLE paimon.default.testSchemaEvolution ADD COLUMNS (d INT, c INT, e INT)");
         writeTable(
                 "testSchemaEvolution",
                 "('31', 32L, 33.0F, 34, 35, 36)",
                 "('37', 38L, 39.0F, 40, 41, 42)");
 
         assertThat(
-                        spark.table("tablestore.default.testSchemaEvolution").collectAsList()
-                                .stream()
+                        spark.table("paimon.default.testSchemaEvolution").collectAsList().stream()
                                 .map(Row::toString)
                                 .collect(Collectors.toList()))
                 .containsExactlyInAnyOrder(
@@ -666,7 +648,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                         "[31,32,33.0,34,35,36]",
                         "[37,38,39.0,40,41,42]");
         assertThat(
-                        spark.table("tablestore.default.testSchemaEvolution").filter("b>10")
+                        spark.table("paimon.default.testSchemaEvolution").filter("b>10")
                                 .collectAsList().stream()
                                 .map(Row::toString)
                                 .collect(Collectors.toList()))
@@ -678,7 +660,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                         "[31,32,33.0,34,35,36]",
                         "[37,38,39.0,40,41,42]");
         assertThat(
-                        spark.table("tablestore.default.testSchemaEvolution")
+                        spark.table("paimon.default.testSchemaEvolution")
                                 .select("e", "a", "ff", "d", "b").filter("b>10L").collectAsList()
                                 .stream()
                                 .map(Row::toString)
@@ -691,7 +673,7 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
                         "[36,31,33.0,34,32]",
                         "[42,37,39.0,40,38]");
         assertThat(
-                        spark.table("tablestore.default.testSchemaEvolution")
+                        spark.table("paimon.default.testSchemaEvolution")
                                 .select("e", "a", "ff", "d", "b").filter("b>10 and e is not null")
                                 .collectAsList().stream()
                                 .map(Row::toString)
@@ -706,28 +688,27 @@ public class SparkSchemaEvolutionITCase extends SparkReadTestBase {
         writeTable("testFilesTable", "(1, 2L, '3')", "(4, 5L, '6')");
         assertThat(
                         getFieldStatsList(
-                                spark.sql("SELECT * FROM tablestore.default.`testFilesTable$files`")
+                                spark.sql("SELECT * FROM paimon.default.`testFilesTable$files`")
                                         .collectAsList()))
                 .containsExactlyInAnyOrder("{a=0, b=0, c=0},{a=1, b=2, c=3},{a=4, b=5, c=6}");
 
         // Add new fields d, e, f and the fields are [a, b, c, d, e, f], insert 2 records
-        spark.sql(
-                "ALTER TABLE tablestore.default.testFilesTable ADD COLUMNS (d INT, e INT, f INT)");
+        spark.sql("ALTER TABLE paimon.default.testFilesTable ADD COLUMNS (d INT, e INT, f INT)");
         writeTable("testFilesTable", "(7, 8L, '9', 10, 11, 12)", "(13, 14L, '15', 16, 17, 18)");
         assertThat(
                         getFieldStatsList(
-                                spark.sql("SELECT * FROM tablestore.default.`testFilesTable$files`")
+                                spark.sql("SELECT * FROM paimon.default.`testFilesTable$files`")
                                         .collectAsList()))
                 .containsExactlyInAnyOrder(
                         "{a=0, b=0, c=0, d=2, e=2, f=2},{a=1, b=2, c=3, d=null, e=null, f=null},{a=4, b=5, c=6, d=null, e=null, f=null}",
                         "{a=0, b=0, c=0, d=0, e=0, f=0},{a=7, b=8, c=15, d=10, e=11, f=12},{a=13, b=14, c=9, d=16, e=17, f=18}");
 
         // Drop fields c, e and the fields are [a, b, d, f], insert 2 records
-        spark.sql("ALTER TABLE tablestore.default.testFilesTable DROP COLUMNS c, e");
+        spark.sql("ALTER TABLE paimon.default.testFilesTable DROP COLUMNS c, e");
         writeTable("testFilesTable", "(19, 20L, 21, 22)", "(23, 24L, 25, 26)");
         assertThat(
                         getFieldStatsList(
-                                spark.sql("SELECT * FROM tablestore.default.`testFilesTable$files`")
+                                spark.sql("SELECT * FROM paimon.default.`testFilesTable$files`")
                                         .collectAsList()))
                 .containsExactlyInAnyOrder(
                         "{a=0, b=0, d=2, f=2},{a=1, b=2, d=null, f=null},{a=4, b=5, d=null, f=null}",
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkWriteITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkWriteITCase.java
index 891c7bfee..486bfce4d 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkWriteITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkWriteITCase.java
@@ -41,10 +41,10 @@ public class SparkWriteITCase {
     public static void startMetastoreAndSpark(@TempDir java.nio.file.Path tempDir) {
         Path warehousePath = new Path("file:" + tempDir.toString());
         spark = SparkSession.builder().master("local[2]").getOrCreate();
-        spark.conf().set("spark.sql.catalog.tablestore", SparkCatalog.class.getName());
-        spark.conf().set("spark.sql.catalog.tablestore.warehouse", warehousePath.toString());
-        spark.sql("CREATE DATABASE tablestore.db");
-        spark.sql("USE tablestore.db");
+        spark.conf().set("spark.sql.catalog.paimon", SparkCatalog.class.getName());
+        spark.conf().set("spark.sql.catalog.paimon.warehouse", warehousePath.toString());
+        spark.sql("CREATE DATABASE paimon.db");
+        spark.sql("USE paimon.db");
     }
 
     @AfterAll


[incubator-paimon] 26/32: [core] Rename paimon: table-store to paimon

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 3eb0df56baba8e7ab1f7c2423ac8c8031902b551
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 21:10:48 2023 +0800

    [core] Rename paimon: table-store to paimon
---
 README.md                                                    |  2 +-
 docs/content/engines/flink.md                                |  2 +-
 docs/content/engines/hive.md                                 |  2 +-
 docs/content/filesystems/oss.md                              |  2 +-
 docs/content/filesystems/s3.md                               |  2 +-
 docs/content/how-to/creating-catalogs.md                     |  4 ++--
 docs/content/how-to/creating-tables.md                       |  4 ++--
 docs/content/how-to/lookup-joins.md                          |  4 ++--
 .../src/main/resources/sinks/table_store.yaml                |  2 +-
 paimon-docs/README.md                                        |  2 +-
 .../paimon/docs/configuration/ConfigOptionsDocGenerator.java |  2 +-
 .../test/java/org/apache/paimon/tests/E2eReaderTestBase.java |  2 +-
 .../src/test/java/org/apache/paimon/tests/E2eTestBase.java   |  2 +-
 .../java/org/apache/paimon/tests/FileStoreBatchE2eTest.java  |  2 +-
 .../apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java   |  2 +-
 .../java/org/apache/paimon/tests/FileStoreStreamE2eTest.java |  2 +-
 .../java/org/apache/paimon/tests/FlinkActionsE2eTest.java    |  2 +-
 .../test/java/org/apache/paimon/tests/LogStoreE2eTest.java   |  2 +-
 .../src/test/java/org/apache/paimon/tests/TypeE2eTest.java   |  4 ++--
 .../java/org/apache/paimon/connector/CatalogITCaseBase.java  |  2 +-
 .../java/org/apache/paimon/connector/CatalogITCaseBase.java  |  2 +-
 .../org/apache/paimon/connector/FlinkCatalogFactory.java     |  2 +-
 .../java/org/apache/paimon/connector/action/ActionBase.java  |  2 +-
 .../java/org/apache/paimon/connector/CatalogITCaseBase.java  |  2 +-
 .../connector/ChangelogWithKeyFileStoreTableITCase.java      | 12 ++++++------
 .../org/apache/paimon/connector/FileSystemCatalogITCase.java |  2 +-
 .../java/org/apache/paimon/connector/LogSystemITCase.java    |  2 +-
 .../java/org/apache/paimon/connector/MappingTableITCase.java | 12 ++++++------
 .../org/apache/paimon/connector/RescaleBucketITCase.java     |  2 +-
 .../java/org/apache/paimon/connector/TableStoreTestBase.java |  2 +-
 .../paimon/connector/action/MergeIntoActionITCase.java       |  2 +-
 .../apache/paimon/connector/sink/SinkSavepointITCase.java    |  4 ++--
 .../apache/paimon/connector/util/ReadWriteTableTestUtil.java |  2 +-
 .../apache/paimon/hive/CustomHiveMetastoreClientITCase.java  |  2 +-
 .../test/java/org/apache/paimon/hive/HiveCatalogITCase.java  |  8 ++++----
 .../main/java/org/apache/paimon/hive/TableStoreJobConf.java  |  4 ++--
 .../src/main/java/org/apache/paimon/spark/SparkSource.java   |  2 +-
 .../src/main/java/org/apache/paimon/spark/SparkSource.java   |  2 +-
 38 files changed, 57 insertions(+), 57 deletions(-)

diff --git a/README.md b/README.md
index d281cba99..9d40869d7 100644
--- a/README.md
+++ b/README.md
@@ -9,7 +9,7 @@ Flink Table Store is developed under the umbrella of [Apache Flink](https://flin
 Please check out the full [documentation](https://nightlies.apache.org/flink/paimon-docs-master/), hosted by the
 [ASF](https://www.apache.org/), for detailed information and user guides.
 
-Check our [quick-start](https://nightlies.apache.org/flink/paimon-docs-master/docs/try-table-store/quick-start/) guide for simple setup instructions to get you started with the table store.
+Check our [quick-start](https://nightlies.apache.org/flink/paimon-docs-master/docs/try-paimon/quick-start/) guide for simple setup instructions to get you started with the table store.
 
 ## Building
 
diff --git a/docs/content/engines/flink.md b/docs/content/engines/flink.md
index 5d603ce3c..65afd124f 100644
--- a/docs/content/engines/flink.md
+++ b/docs/content/engines/flink.md
@@ -114,7 +114,7 @@ You can now start Flink SQL client to execute SQL scripts.
 -- if you're trying out Table Store in a distributed environment,
 -- warehouse path should be set to a shared file system, such as HDFS or OSS
 CREATE CATALOG my_catalog WITH (
-    'type'='table-store',
+    'type'='paimon',
     'warehouse'='file:/tmp/table_store'
 );
 
diff --git a/docs/content/engines/hive.md b/docs/content/engines/hive.md
index 933b5b9bd..465a66333 100644
--- a/docs/content/engines/hive.md
+++ b/docs/content/engines/hive.md
@@ -91,7 +91,7 @@ Execute the following Flink SQL script in Flink SQL client to define a Table Sto
 -- Define table store Hive catalog
 
 CREATE CATALOG my_hive WITH (
-  'type' = 'table-store',
+  'type' = 'paimon',
   'metastore' = 'hive',
   'uri' = 'thrift://<hive-metastore-host-name>:<port>',
   'warehouse' = '/path/to/table/store/warehouse'
diff --git a/docs/content/filesystems/oss.md b/docs/content/filesystems/oss.md
index a4224f275..56e789485 100644
--- a/docs/content/filesystems/oss.md
+++ b/docs/content/filesystems/oss.md
@@ -62,7 +62,7 @@ Put `paimon-oss-{{< version >}}.jar` into `lib` directory of your Flink home, an
 
 ```sql
 CREATE CATALOG my_catalog WITH (
-    'type' = 'table-store',
+    'type' = 'paimon',
     'warehouse' = 'oss://path/to/warehouse',
     'fs.oss.endpoint' = 'oss-cn-hangzhou.aliyuncs.com',
     'fs.oss.accessKeyId' = 'xxx',
diff --git a/docs/content/filesystems/s3.md b/docs/content/filesystems/s3.md
index b32ab814e..d47bafdfd 100644
--- a/docs/content/filesystems/s3.md
+++ b/docs/content/filesystems/s3.md
@@ -62,7 +62,7 @@ Put `paimon-s3-{{< version >}}.jar` into `lib` directory of your Flink home, and
 
 ```sql
 CREATE CATALOG my_catalog WITH (
-    'type' = 'table-store',
+    'type' = 'paimon',
     'warehouse' = 's3://path/to/warehouse',
     's3.endpoint' = 'your-endpoint-hostname',
     's3.access-key' = 'xxx',
diff --git a/docs/content/how-to/creating-catalogs.md b/docs/content/how-to/creating-catalogs.md
index 3c4915c06..8fdbba600 100644
--- a/docs/content/how-to/creating-catalogs.md
+++ b/docs/content/how-to/creating-catalogs.md
@@ -43,7 +43,7 @@ The following Flink SQL registers and uses a Table Store catalog named `my_catal
 
 ```sql
 CREATE CATALOG my_catalog WITH (
-    'type' = 'table-store',
+    'type' = 'paimon',
     'warehouse' = 'hdfs://path/to/warehouse'
 );
 
@@ -118,7 +118,7 @@ The following Flink SQL registers and uses a Table Store Hive catalog named `my_
 
 ```sql
 CREATE CATALOG my_hive WITH (
-    'type' = 'table-store',
+    'type' = 'paimon',
     'metastore' = 'hive',
     'uri' = 'thrift://<hive-metastore-host-name>:<port>',
     'warehouse' = 'hdfs://path/to/warehouse'
diff --git a/docs/content/how-to/creating-tables.md b/docs/content/how-to/creating-tables.md
index 4782252ac..5253f437d 100644
--- a/docs/content/how-to/creating-tables.md
+++ b/docs/content/how-to/creating-tables.md
@@ -328,7 +328,7 @@ CREATE TABLE MyTable (
     hh STRING,
     PRIMARY KEY (dt, hh, user_id) NOT ENFORCED
 ) WITH (
-    'connector' = 'table-store',
+    'connector' = 'paimon',
     'path' = 'hdfs://path/to/table',
     'auto-create' = 'true' -- this table property creates table files for an empty table if table path does not exist
                            -- currently only supported by Flink
@@ -383,7 +383,7 @@ If you want to use Table Store catalog along with other tables but do not want t
 
 ```sql
 CREATE CATALOG my_catalog WITH (
-    'type' = 'table-store',
+    'type' = 'paimon',
     'warehouse' = 'hdfs://path/to/warehouse'
 );
 
diff --git a/docs/content/how-to/lookup-joins.md b/docs/content/how-to/lookup-joins.md
index 7cac8709e..ed0a8a5af 100644
--- a/docs/content/how-to/lookup-joins.md
+++ b/docs/content/how-to/lookup-joins.md
@@ -35,13 +35,13 @@ First, let's create a Table Store table and update it in real-time.
 ```sql
 -- Create a table store catalog
 CREATE CATALOG my_catalog WITH (
-  'type'='table-store',
+  'type'='paimon',
   'warehouse'='hdfs://nn:8020/warehouse/path' -- or 'file://tmp/foo/bar'
 );
 
 USE CATALOG my_catalog;
 
--- Create a table in table-store catalog
+-- Create a table in paimon catalog
 CREATE TABLE customers (
     id INT PRIMARY KEY NOT ENFORCED,
     name STRING,
diff --git a/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/sinks/table_store.yaml b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/sinks/table_store.yaml
index d9e5ec58d..74cf5c232 100644
--- a/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/sinks/table_store.yaml
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/sinks/table_store.yaml
@@ -18,7 +18,7 @@
 
 before: |
   CREATE CATALOG test_catalog WITH (
-    'type' = 'table-store',
+    'type' = 'paimon',
     'warehouse' = '${SINK_PATH}'
   );
 sink-name: test_catalog.`default`.table_store_sink
diff --git a/paimon-docs/README.md b/paimon-docs/README.md
index f6c28de9d..cbf7d44e5 100644
--- a/paimon-docs/README.md
+++ b/paimon-docs/README.md
@@ -23,7 +23,7 @@ This module contains generators that create HTML files directly from Flink Table
 
 ## Configuration documentation
 
-The `ConfigOptionsDocGenerator` can be used to generate a reference of `ConfigOptions`. By default, a separate file is generated for each `*Options` class found in `org.apache.flink.table.store`, `org.apache.paimon.connector` and `org.apache.paimon.connector.kafka`. 
+The `ConfigOptionsDocGenerator` can be used to generate a reference of `ConfigOptions`. By default, a separate file is generated for each `*Options` class found in `org.apache.paimon`, `org.apache.paimon.connector` and `org.apache.paimon.connector.kafka`. 
 The `@ConfigGroups` annotation can be used to generate multiple files from a single class.
 
 To integrate an `*Options` class from another package, add another module-package argument pair to `ConfigOptionsDocGenerator#LOCATIONS`.
diff --git a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
index eb49797b0..440d4ba16 100644
--- a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
+++ b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
@@ -71,7 +71,7 @@ public class ConfigOptionsDocGenerator {
     static final OptionsClassLocation[] LOCATIONS =
             new OptionsClassLocation[] {
                 new OptionsClassLocation("paimon-common", "org.apache.paimon.options"),
-                new OptionsClassLocation("paimon-core", "org.apache.flink.table.store"),
+                new OptionsClassLocation("paimon-core", "org.apache.paimon"),
                 new OptionsClassLocation(
                         "paimon-flink/paimon-flink-common", "org.apache.paimon.connector"),
                 new OptionsClassLocation(
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eReaderTestBase.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eReaderTestBase.java
index 8445fb6ad..e54affffb 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eReaderTestBase.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eReaderTestBase.java
@@ -30,7 +30,7 @@ public abstract class E2eReaderTestBase extends E2eTestBase {
         return String.join(
                 "\n",
                 String.format("CREATE CATALOG %s WITH (", catalog),
-                "  'type' = 'table-store',",
+                "  'type' = 'paimon',",
                 options.length > 0 ? String.join(",", options) + "," : "",
                 String.format("  'warehouse' = '%s'", warehouse),
                 ");",
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eTestBase.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eTestBase.java
index 11037d762..f716e25c5 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eTestBase.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/E2eTestBase.java
@@ -72,7 +72,7 @@ public abstract class E2eTestBase {
     protected static final String TEST_DATA_DIR = "/test-data";
     protected static final String HDFS_ROOT = "hdfs://namenode:8020";
 
-    private static final String PRINT_SINK_IDENTIFIER = "table-store-e2e-result";
+    private static final String PRINT_SINK_IDENTIFIER = "paimon-e2e-result";
     private static final int CHECK_RESULT_INTERVAL_MS = 1000;
     private static final int CHECK_RESULT_RETRIES = 60;
     private final List<String> currentResults = new ArrayList<>();
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
index 4f68a74d5..9c6554991 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
@@ -71,7 +71,7 @@ public class FileStoreBatchE2eTest extends E2eTestBase {
         String catalogDdl =
                 String.format(
                         "CREATE CATALOG ts_catalog WITH (\n"
-                                + "    'type' = 'table-store',\n"
+                                + "    'type' = 'paimon',\n"
                                 + "    'warehouse' = '%s'\n"
                                 + ");",
                         TEST_DATA_DIR + "/" + UUID.randomUUID() + ".store");
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
index 0c2424290..3f171737f 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
@@ -45,7 +45,7 @@ public class FileStoreBuiltInFormatE2eTest extends E2eTestBase {
         String catalogDdl =
                 String.format(
                         "CREATE CATALOG ts_catalog WITH (\n"
-                                + "    'type' = 'table-store',\n"
+                                + "    'type' = 'paimon',\n"
                                 + "    'warehouse' = '%s'\n"
                                 + ");",
                         TEST_DATA_DIR + "/" + UUID.randomUUID() + ".store");
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreStreamE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreStreamE2eTest.java
index fe4f0178a..de86aa9db 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreStreamE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreStreamE2eTest.java
@@ -62,7 +62,7 @@ public class FileStoreStreamE2eTest extends E2eTestBase {
         String catalogDdl =
                 String.format(
                         "CREATE CATALOG ts_catalog WITH (\n"
-                                + "    'type' = 'table-store',\n"
+                                + "    'type' = 'paimon',\n"
                                 + "    'warehouse' = '%s'\n"
                                 + ");",
                         TEST_DATA_DIR + "/" + UUID.randomUUID() + ".store");
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
index 98ebd66ad..51dba9c39 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
@@ -45,7 +45,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
         catalogDdl =
                 String.format(
                         "CREATE CATALOG ts_catalog WITH (\n"
-                                + "    'type' = 'table-store',\n"
+                                + "    'type' = 'paimon',\n"
                                 + "    'warehouse' = '%s'\n"
                                 + ");",
                         warehousePath);
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/LogStoreE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/LogStoreE2eTest.java
index 67188fc5e..bc6c074cd 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/LogStoreE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/LogStoreE2eTest.java
@@ -50,7 +50,7 @@ public class LogStoreE2eTest extends E2eTestBase {
         String catalogDdl =
                 String.format(
                         "CREATE CATALOG ts_catalog WITH (\n"
-                                + "    'type' = 'table-store',\n"
+                                + "    'type' = 'paimon',\n"
                                 + "    'warehouse' = '%s'\n"
                                 + ");",
                         TEST_DATA_DIR + "/" + UUID.randomUUID() + ".store");
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/TypeE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/TypeE2eTest.java
index 701b843ef..dce208ded 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/TypeE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/TypeE2eTest.java
@@ -52,7 +52,7 @@ public class TypeE2eTest extends E2eTestBase {
         String catalogDdl =
                 String.format(
                         "CREATE CATALOG ts_catalog WITH (\n"
-                                + "    'type' = 'table-store',\n"
+                                + "    'type' = 'paimon',\n"
                                 + "    'warehouse' = '%s'\n"
                                 + ");",
                         TEST_DATA_DIR + "/" + UUID.randomUUID() + ".store");
@@ -142,7 +142,7 @@ public class TypeE2eTest extends E2eTestBase {
         String catalogDdl =
                 String.format(
                         "CREATE CATALOG ts_catalog WITH (\n"
-                                + "    'type' = 'table-store',\n"
+                                + "    'type' = 'paimon',\n"
                                 + "    'warehouse' = '%s'\n"
                                 + ");",
                         TEST_DATA_DIR + "/" + UUID.randomUUID() + ".store");
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index c820ab302..26698b250 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -66,7 +66,7 @@ public abstract class CatalogITCaseBase extends AbstractTestBase {
         path = getTempDirPath("table_store");
         tEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG %s WITH (" + "'type'='table-store', 'warehouse'='%s')",
+                        "CREATE CATALOG %s WITH (" + "'type'='paimon', 'warehouse'='%s')",
                         catalog, path));
         tEnv.useCatalog(catalog);
 
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index c820ab302..26698b250 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -66,7 +66,7 @@ public abstract class CatalogITCaseBase extends AbstractTestBase {
         path = getTempDirPath("table_store");
         tEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG %s WITH (" + "'type'='table-store', 'warehouse'='%s')",
+                        "CREATE CATALOG %s WITH (" + "'type'='paimon', 'warehouse'='%s')",
                         catalog, path));
         tEnv.useCatalog(catalog);
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
index b9d90ee16..9474c667b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
@@ -31,7 +31,7 @@ import java.util.Set;
 /** Factory for {@link FlinkCatalog}. */
 public class FlinkCatalogFactory implements org.apache.flink.table.factories.CatalogFactory {
 
-    public static final String IDENTIFIER = "table-store";
+    public static final String IDENTIFIER = "paimon";
 
     public static final ConfigOption<String> DEFAULT_DATABASE =
             ConfigOptions.key("default-database")
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
index 10481a7e2..385b0612c 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
@@ -60,7 +60,7 @@ public abstract class ActionBase implements Action {
 
     protected final FlinkCatalog flinkCatalog;
 
-    protected final String catalogName = "table-store-" + UUID.randomUUID();
+    protected final String catalogName = "paimon-" + UUID.randomUUID();
 
     protected StreamExecutionEnvironment env;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index e783877a6..885163d24 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -67,7 +67,7 @@ public abstract class CatalogITCaseBase extends AbstractTestBase {
         path = getTempDirPath();
         tEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG %s WITH (" + "'type'='table-store', 'warehouse'='%s')",
+                        "CREATE CATALOG %s WITH (" + "'type'='paimon', 'warehouse'='%s')",
                         catalog, path));
         tEnv.useCatalog(catalog);
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
index 68c58c97a..6878c227d 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
@@ -112,7 +112,7 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
                 .set(ExecutionConfigOptions.TABLE_EXEC_RESOURCE_DEFAULT_PARALLELISM, 1);
         bEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG testCatalog WITH ('type'='table-store', 'warehouse'='%s')",
+                        "CREATE CATALOG testCatalog WITH ('type'='paimon', 'warehouse'='%s')",
                         path));
         bEnv.executeSql("USE CATALOG testCatalog");
         bEnv.executeSql(
@@ -134,7 +134,7 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
                 .set(ExecutionConfigOptions.TABLE_EXEC_RESOURCE_DEFAULT_PARALLELISM, 1);
         sEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG testCatalog WITH ('type'='table-store', 'warehouse'='%s')",
+                        "CREATE CATALOG testCatalog WITH ('type'='paimon', 'warehouse'='%s')",
                         path));
         sEnv.executeSql("USE CATALOG testCatalog");
         CloseableIterator<Row> it = sEnv.executeSql("SELECT * FROM T").collect();
@@ -180,7 +180,7 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
 
         sEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG testCatalog WITH ('type'='table-store', 'warehouse'='%s/warehouse')",
+                        "CREATE CATALOG testCatalog WITH ('type'='paimon', 'warehouse'='%s/warehouse')",
                         path));
         sEnv.executeSql("USE CATALOG testCatalog");
         sEnv.executeSql(
@@ -438,7 +438,7 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
                 .set(ExecutionConfigOptions.TABLE_EXEC_RESOURCE_DEFAULT_PARALLELISM, 1);
         sEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG testCatalog WITH ('type'='table-store', 'warehouse'='%s')",
+                        "CREATE CATALOG testCatalog WITH ('type'='paimon', 'warehouse'='%s')",
                         path));
         sEnv.executeSql("USE CATALOG testCatalog");
 
@@ -481,7 +481,7 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
         FailingFileIO.reset(failingName, 0, 1);
         tEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG testCatalog WITH ('type'='table-store', 'warehouse'='%s')",
+                        "CREATE CATALOG testCatalog WITH ('type'='paimon', 'warehouse'='%s')",
                         failingPath));
         tEnv.executeSql("USE CATALOG testCatalog");
         tEnv.executeSql(
@@ -561,7 +561,7 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
         TableEnvironment bEnv = createBatchTableEnvironment();
         bEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG testCatalog WITH ('type'='table-store', 'warehouse'='%s')",
+                        "CREATE CATALOG testCatalog WITH ('type'='paimon', 'warehouse'='%s')",
                         path));
         bEnv.executeSql("USE CATALOG testCatalog");
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
index 6191165bd..795848ef9 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
@@ -52,7 +52,7 @@ public class FileSystemCatalogITCase extends KafkaTableTestBase {
         path = getTempDirPath();
         tEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG fs WITH ('type'='table-store', 'warehouse'='%s')", path));
+                        "CREATE CATALOG fs WITH ('type'='paimon', 'warehouse'='%s')", path));
         tEnv.useCatalog("fs");
         env.setParallelism(1);
     }
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
index 56cea1a9c..e00b709e5 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
@@ -39,7 +39,7 @@ public class LogSystemITCase extends KafkaTableTestBase {
         tEnv.executeSql(
                 String.format(
                         "CREATE CATALOG TABLE_STORE WITH ("
-                                + "'type'='table-store', 'warehouse'='%s')",
+                                + "'type'='paimon', 'warehouse'='%s')",
                         getTempDirPath()));
         tEnv.useCatalog("TABLE_STORE");
     }
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/MappingTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/MappingTableITCase.java
index aae34acb5..17a614e3c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/MappingTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/MappingTableITCase.java
@@ -53,7 +53,7 @@ public class MappingTableITCase extends AbstractTestBase {
         tEnv.executeSql(
                 String.format(
                         "CREATE TABLE T (i INT, j INT) WITH ("
-                                + "'connector'='table-store', 'path'='%s')",
+                                + "'connector'='paimon', 'path'='%s')",
                         path));
         assertThrows(
                 ValidationException.class,
@@ -66,7 +66,7 @@ public class MappingTableITCase extends AbstractTestBase {
         tEnv.executeSql(
                 String.format(
                         "CREATE TABLE T (i INT, j INT) WITH ("
-                                + "'connector'='table-store', 'path'='%s', 'auto-create'='true')",
+                                + "'connector'='paimon', 'path'='%s', 'auto-create'='true')",
                         path));
         tEnv.executeSql("INSERT INTO T VALUES (1, 2), (3, 4)").await();
 
@@ -74,7 +74,7 @@ public class MappingTableITCase extends AbstractTestBase {
         tEnv.executeSql(
                 String.format(
                         "CREATE TABLE T (i INT, j INT) WITH ("
-                                + "'connector'='table-store', 'path'='%s')",
+                                + "'connector'='paimon', 'path'='%s')",
                         path));
 
         List<Row> result = ImmutableList.copyOf(tEnv.executeSql("SELECT * FROM T").collect());
@@ -87,7 +87,7 @@ public class MappingTableITCase extends AbstractTestBase {
             tEnv.executeSql(
                     String.format(
                             "CREATE TABLE T (i INT, j INT) WITH ("
-                                    + "'connector'='table-store', 'path'='%s', 'auto-create'='true')",
+                                    + "'connector'='paimon', 'path'='%s', 'auto-create'='true')",
                             path));
             tEnv.executeSql("SELECT * FROM T").collect().close();
             tEnv.executeSql("DROP TABLE T");
@@ -99,7 +99,7 @@ public class MappingTableITCase extends AbstractTestBase {
         tEnv.executeSql(
                 String.format(
                         "CREATE TABLE T (i INT, j INT) WITH ("
-                                + "'connector'='table-store', 'path'='%s', 'auto-create'='true')",
+                                + "'connector'='paimon', 'path'='%s', 'auto-create'='true')",
                         path));
         tEnv.executeSql("SELECT * FROM T").collect().close();
         tEnv.executeSql("DROP TABLE T");
@@ -107,7 +107,7 @@ public class MappingTableITCase extends AbstractTestBase {
         tEnv.executeSql(
                 String.format(
                         "CREATE TABLE T (i INT, j INT, k INT) WITH ("
-                                + "'connector'='table-store', 'path'='%s', 'auto-create'='true')",
+                                + "'connector'='paimon', 'path'='%s', 'auto-create'='true')",
                         path));
 
         assertThrows(
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
index bad6d109c..acfe424ca 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
@@ -51,7 +51,7 @@ public class RescaleBucketITCase extends CatalogITCaseBase {
     protected List<String> ddl() {
         return Arrays.asList(
                 String.format(
-                        "CREATE CATALOG `fs_catalog` WITH ('type' = 'table-store', 'warehouse' = '%s')",
+                        "CREATE CATALOG `fs_catalog` WITH ('type' = 'paimon', 'warehouse' = '%s')",
                         path),
                 "CREATE TABLE IF NOT EXISTS `fs_catalog`.`default`.`T1` (f0 INT) WITH ('bucket' = '2')");
     }
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java
index 0613b921a..bd2185b4e 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java
@@ -91,7 +91,7 @@ public abstract class TableStoreTestBase extends AbstractTestBase {
 
         tEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG %s WITH ('type' = 'table-store', 'warehouse' = '%s')",
+                        "CREATE CATALOG %s WITH ('type' = 'paimon', 'warehouse' = '%s')",
                         CURRENT_CATALOG, rootPath));
         tEnv.useCatalog(CURRENT_CATALOG);
     }
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
index 46779b247..ea20018d6 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
@@ -170,7 +170,7 @@ public class MergeIntoActionITCase extends ActionITCaseBase {
 
         String catalog =
                 String.format(
-                        "CREATE CATALOG test_cat WITH ('type' = 'table-store', 'warehouse' = '%s')",
+                        "CREATE CATALOG test_cat WITH ('type' = 'paimon', 'warehouse' = '%s')",
                         getTempDirPath());
         String useCatalog = "USE CATALOG test_cat";
         String id =
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
index 555c28885..c69564733 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
@@ -166,7 +166,7 @@ public class SinkSavepointITCase extends AbstractTestBase {
                 String.join(
                         "\n",
                         "CREATE CATALOG my_catalog WITH (",
-                        "  'type' = 'table-store',",
+                        "  'type' = 'paimon',",
                         "  'warehouse' = '" + failingPath + "'",
                         ")");
         FailingFileIO.retryArtificialException(() -> tEnv.executeSql(createCatalogSql));
@@ -206,7 +206,7 @@ public class SinkSavepointITCase extends AbstractTestBase {
                 String.join(
                         "\n",
                         "CREATE CATALOG my_catalog WITH (",
-                        "  'type' = 'table-store',",
+                        "  'type' = 'paimon',",
                         "  'warehouse' = '" + failingPath + "'",
                         ")");
         tEnv.executeSql(createCatalogSql);
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
index 4c631e1f9..dbefd4a0d 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
@@ -94,7 +94,7 @@ public class ReadWriteTableTestUtil {
         String catalog = "TABLE_STORE";
         sEnv.executeSql(
                 String.format(
-                        "CREATE CATALOG %s WITH ('type'='table-store', 'warehouse'='%s');",
+                        "CREATE CATALOG %s WITH ('type'='paimon', 'warehouse'='%s');",
                         catalog, warehouse));
         sEnv.useCatalog(catalog);
 
diff --git a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/CustomHiveMetastoreClientITCase.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/CustomHiveMetastoreClientITCase.java
index 2970f8343..e8ae8ea63 100644
--- a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/CustomHiveMetastoreClientITCase.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/CustomHiveMetastoreClientITCase.java
@@ -71,7 +71,7 @@ public class CustomHiveMetastoreClientITCase {
                         String.join(
                                 "\n",
                                 "CREATE CATALOG my_hive WITH (",
-                                "  'type' = 'table-store',",
+                                "  'type' = 'paimon',",
                                 "  'metastore' = 'hive',",
                                 "  'uri' = '',",
                                 "  'warehouse' = '" + path + "',",
diff --git a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
index 4f2dc2992..a333863cd 100644
--- a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
@@ -104,7 +104,7 @@ public class HiveCatalogITCase {
                         String.join(
                                 "\n",
                                 "CREATE CATALOG my_hive WITH (",
-                                "  'type' = 'table-store',",
+                                "  'type' = 'paimon',",
                                 "  'metastore' = 'hive',",
                                 "  'uri' = '',",
                                 "  'warehouse' = '" + path + "',",
@@ -246,7 +246,7 @@ public class HiveCatalogITCase {
                         String.join(
                                 "\n",
                                 "CREATE CATALOG my_hive_external WITH (",
-                                "  'type' = 'table-store',",
+                                "  'type' = 'paimon',",
                                 "  'metastore' = 'hive',",
                                 "  'uri' = '',",
                                 "  'warehouse' = '" + path + "',",
@@ -535,7 +535,7 @@ public class HiveCatalogITCase {
                 String.join(
                         "\n",
                         "CREATE CATALOG my_hive_custom_client WITH (",
-                        "  'type' = 'table-store',",
+                        "  'type' = 'paimon',",
                         "  'metastore' = 'hive',",
                         "  'uri' = '',",
                         "  'warehouse' = '" + path + "',",
@@ -566,7 +566,7 @@ public class HiveCatalogITCase {
                         String.join(
                                 "\n",
                                 "CREATE CATALOG my_alter_hive WITH (",
-                                "  'type' = 'table-store',",
+                                "  'type' = 'paimon',",
                                 "  'metastore' = 'hive',",
                                 "  'uri' = '',",
                                 "  'warehouse' = '" + path + "',",
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
index c83a910b2..3131cf80e 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
@@ -34,8 +34,8 @@ import java.util.Properties;
  */
 public class TableStoreJobConf {
 
-    private static final String INTERNAL_LOCATION = "table-store.internal.location";
-    private static final String INTERNAL_CATALOG_CONFIG = "table-store.catalog.config";
+    private static final String INTERNAL_LOCATION = "paimon.internal.location";
+    private static final String INTERNAL_CATALOG_CONFIG = "paimon.catalog.config";
 
     private static final String TABLE_STORE_PREFIX = "tablestore.";
 
diff --git a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
index 0b53e9a33..c60d68797 100644
--- a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
+++ b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
@@ -33,7 +33,7 @@ import org.apache.spark.sql.types.StructType;
 /** The Spark source for table store. */
 public class SparkSource implements DataSourceRegister, ReadSupport, SessionConfigSupport {
 
-    /** Not use 'table-store' here, the '-' is not allowed in SQL. */
+    /** Not use 'paimon' here, the '-' is not allowed in SQL. */
     private static final String SHORT_NAME = "tablestore";
 
     @Override
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
index 1d7d9cebe..433df840b 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
@@ -36,7 +36,7 @@ import java.util.Map;
 /** The spark source for table store. */
 public class SparkSource implements DataSourceRegister, SessionConfigSupport {
 
-    /** Not use 'table-store' here, the '-' is not allowed in SQL. */
+    /** Not use 'paimon' here, the '-' is not allowed in SQL. */
     private static final String SHORT_NAME = "tablestore";
 
     @Override


[incubator-paimon] 32/32: [core] Rename paimon: hive meta should be compatible

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 340bf0010e380ee32125fe4a4d135a4c4cdb6609
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Sat Mar 18 11:06:45 2023 +0800

    [core] Rename paimon: hive meta should be compatible
---
 .../apache/paimon/tests/FileStoreBatchE2eTest.java | 12 ++---
 .../tests/FileStoreBuiltInFormatE2eTest.java       |  6 +--
 .../java/org/apache/paimon/tests/HiveE2eTest.java  | 11 ++---
 .../apache/flink/table/hive/LegacyHiveClasses.java | 36 +++++++++++++++
 .../java/org/apache/paimon/hive/HiveCatalog.java   | 51 ++++++++++++----------
 .../store/hive/TableStoreHiveStorageHandler.java   | 25 +++++++++++
 .../flink/table/store/hive/TableStoreSerDe.java    | 25 +++++++++++
 .../table/store/mapred/TableStoreInputFormat.java  | 25 +++++++++++
 .../table/store/mapred/TableStoreOutputFormat.java | 25 +++++++++++
 9 files changed, 176 insertions(+), 40 deletions(-)

diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
index aed5b0686..5bb1ff085 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBatchE2eTest.java
@@ -78,7 +78,7 @@ public class FileStoreBatchE2eTest extends E2eTestBase {
 
         String useCatalogCmd = "USE CATALOG ts_catalog;";
 
-        String tableStoreDdl =
+        String paimonDdl =
                 "CREATE TABLE IF NOT EXISTS ts_table (\n"
                         + "    dt VARCHAR,\n"
                         + "    hr VARCHAR,\n"
@@ -98,14 +98,14 @@ public class FileStoreBatchE2eTest extends E2eTestBase {
                 catalogDdl,
                 useCatalogCmd,
                 testDataSourceDdl,
-                tableStoreDdl);
+                paimonDdl);
 
         // test #1: read all data from paimon
         runSql(
                 "INSERT INTO result1 SELECT * FROM ts_table;",
                 catalogDdl,
                 useCatalogCmd,
-                tableStoreDdl,
+                paimonDdl,
                 createResultSink(
                         "result1",
                         "dt VARCHAR, hr VARCHAR, person VARCHAR, category VARCHAR, price INT"));
@@ -133,7 +133,7 @@ public class FileStoreBatchE2eTest extends E2eTestBase {
                 "INSERT INTO result2 SELECT * FROM ts_table WHERE dt > '20211110' AND hr < '09';",
                 catalogDdl,
                 useCatalogCmd,
-                tableStoreDdl,
+                paimonDdl,
                 createResultSink(
                         "result2",
                         "dt VARCHAR, hr VARCHAR, person VARCHAR, category VARCHAR, price INT"));
@@ -149,7 +149,7 @@ public class FileStoreBatchE2eTest extends E2eTestBase {
                 "INSERT INTO result3 SELECT * FROM ts_table WHERE person = 'Alice' AND category = 'Food';",
                 catalogDdl,
                 useCatalogCmd,
-                tableStoreDdl,
+                paimonDdl,
                 createResultSink(
                         "result3",
                         "dt VARCHAR, hr VARCHAR, person VARCHAR, category VARCHAR, price INT"));
@@ -166,7 +166,7 @@ public class FileStoreBatchE2eTest extends E2eTestBase {
                         + "INSERT INTO result4 SELECT dt, category, sum(price) AS total FROM ts_table GROUP BY dt, category;",
                 catalogDdl,
                 useCatalogCmd,
-                tableStoreDdl,
+                paimonDdl,
                 createResultSink("result4", "dt VARCHAR, hr VARCHAR, total INT"));
         checkResult(
                 "20211110, Drink, 200",
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
index 3f171737f..9425c3042 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FileStoreBuiltInFormatE2eTest.java
@@ -51,7 +51,7 @@ public class FileStoreBuiltInFormatE2eTest extends E2eTestBase {
                         TEST_DATA_DIR + "/" + UUID.randomUUID() + ".store");
 
         String useCatalogCmd = "USE CATALOG ts_catalog;";
-        String tableStoreDdl =
+        String paimonDdl =
                 "CREATE TABLE IF NOT EXISTS ts_table (\n"
                         + schema
                         + ") WITH (\n"
@@ -92,13 +92,13 @@ public class FileStoreBuiltInFormatE2eTest extends E2eTestBase {
                         + "DATE '2022-05-23'"
                         + ")";
 
-        runSql(insertDml, catalogDdl, useCatalogCmd, tableStoreDdl);
+        runSql(insertDml, catalogDdl, useCatalogCmd, paimonDdl);
 
         runSql(
                 "INSERT INTO result1 SELECT * FROM ts_table where id > 1;",
                 catalogDdl,
                 useCatalogCmd,
-                tableStoreDdl,
+                paimonDdl,
                 createResultSink("result1", schema));
         checkResult(
                 "2, "
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
index 8155306ca..20b139d26 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
@@ -57,8 +57,8 @@ public class HiveE2eTest extends E2eReaderTestBase {
     @Test
     public void testReadExternalTable() throws Exception {
         final String table = "table_store_pk";
-        String tableStorePkPath = HDFS_ROOT + "/" + UUID.randomUUID() + ".store";
-        String tableStorePkDdl =
+        String paimonPkPath = HDFS_ROOT + "/" + UUID.randomUUID() + ".store";
+        String paimonPkDdl =
                 String.format(
                         "CREATE TABLE IF NOT EXISTS %s (\n"
                                 + "  a int,\n"
@@ -69,17 +69,14 @@ public class HiveE2eTest extends E2eReaderTestBase {
                                 + "  'bucket' = '2'\n"
                                 + ");",
                         table);
-        runSql(
-                createInsertSql(table),
-                createCatalogSql("table_store", tableStorePkPath),
-                tableStorePkDdl);
+        runSql(createInsertSql(table), createCatalogSql("table_store", paimonPkPath), paimonPkDdl);
 
         String externalTablePkDdl =
                 String.format(
                         "CREATE EXTERNAL TABLE IF NOT EXISTS %s\n"
                                 + "STORED BY 'org.apache.paimon.hive.PaimonStorageHandler'\n"
                                 + "LOCATION '%s/default.db/%s';\n",
-                        table, tableStorePkPath, table);
+                        table, paimonPkPath, table);
 
         checkQueryResults(table, this::executeQuery, externalTablePkDdl);
     }
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/flink/table/hive/LegacyHiveClasses.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/flink/table/hive/LegacyHiveClasses.java
new file mode 100644
index 000000000..0316f3f1d
--- /dev/null
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/flink/table/hive/LegacyHiveClasses.java
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.hive;
+
+import org.apache.hadoop.hive.metastore.api.Table;
+
+/** Legacy hive classes of table store 0.3. */
+@Deprecated
+public class LegacyHiveClasses {
+
+    private static final String LEGACY_INPUT_FORMAT_CLASS_NAME =
+            "org.apache.flink.table.store.mapred.TableStoreInputFormat";
+    private static final String LEGACY_OUTPUT_FORMAT_CLASS_NAME =
+            "org.apache.flink.table.store.mapred.TableStoreOutputFormat";
+
+    public static boolean isPaimonTable(Table table) {
+        return LEGACY_INPUT_FORMAT_CLASS_NAME.equals(table.getSd().getInputFormat())
+                && LEGACY_OUTPUT_FORMAT_CLASS_NAME.equals(table.getSd().getOutputFormat());
+    }
+}
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
index 286d9908d..c7888860e 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.hive;
 
+import org.apache.flink.table.hive.LegacyHiveClasses;
+
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.HiveMetaStoreClient;
@@ -166,7 +168,7 @@ public class HiveCatalog extends AbstractCatalog {
                                 // tables.
                                 // so we just check the schema file first
                                 return schemaFileExists(identifier)
-                                        && tableStoreTableExists(identifier, false);
+                                        && paimonTableExists(identifier, false);
                             })
                     .collect(Collectors.toList());
         } catch (UnknownDBException e) {
@@ -178,7 +180,7 @@ public class HiveCatalog extends AbstractCatalog {
 
     @Override
     public TableSchema getDataTableSchema(Identifier identifier) throws TableNotExistException {
-        if (!tableStoreTableExists(identifier)) {
+        if (!paimonTableExists(identifier)) {
             throw new TableNotExistException(identifier);
         }
         Path tableLocation = getDataTableLocation(identifier);
@@ -191,7 +193,7 @@ public class HiveCatalog extends AbstractCatalog {
     public void dropTable(Identifier identifier, boolean ignoreIfNotExists)
             throws TableNotExistException {
         checkNotSystemTable(identifier, "dropTable");
-        if (!tableStoreTableExists(identifier)) {
+        if (!paimonTableExists(identifier)) {
             if (ignoreIfNotExists) {
                 return;
             } else {
@@ -215,7 +217,7 @@ public class HiveCatalog extends AbstractCatalog {
         if (!databaseExists(databaseName)) {
             throw new DatabaseNotExistException(databaseName);
         }
-        if (tableStoreTableExists(identifier)) {
+        if (paimonTableExists(identifier)) {
             if (ignoreIfExists) {
                 return;
             } else {
@@ -256,7 +258,7 @@ public class HiveCatalog extends AbstractCatalog {
             throws TableNotExistException, TableAlreadyExistException {
         checkNotSystemTable(fromTable, "renameTable");
         checkNotSystemTable(toTable, "renameTable");
-        if (!tableStoreTableExists(fromTable)) {
+        if (!paimonTableExists(fromTable)) {
             if (ignoreIfNotExists) {
                 return;
             } else {
@@ -264,7 +266,7 @@ public class HiveCatalog extends AbstractCatalog {
             }
         }
 
-        if (tableStoreTableExists(toTable)) {
+        if (paimonTableExists(toTable)) {
             throw new TableAlreadyExistException(toTable);
         }
 
@@ -285,7 +287,7 @@ public class HiveCatalog extends AbstractCatalog {
             Identifier identifier, List<SchemaChange> changes, boolean ignoreIfNotExists)
             throws TableNotExistException {
         checkNotSystemTable(identifier, "alterTable");
-        if (!tableStoreTableExists(identifier)) {
+        if (!paimonTableExists(identifier)) {
             if (ignoreIfNotExists) {
                 return;
             } else {
@@ -414,15 +416,15 @@ public class HiveCatalog extends AbstractCatalog {
                 dataField.description());
     }
 
-    private boolean tableStoreTableExists(Identifier identifier) {
-        return tableStoreTableExists(identifier, true);
+    private boolean paimonTableExists(Identifier identifier) {
+        return paimonTableExists(identifier, true);
     }
 
     private boolean schemaFileExists(Identifier identifier) {
         return new SchemaManager(fileIO, getDataTableLocation(identifier)).latest().isPresent();
     }
 
-    private boolean tableStoreTableExists(Identifier identifier, boolean throwException) {
+    private boolean paimonTableExists(Identifier identifier, boolean throwException) {
         Table table;
         try {
             table = client.getTable(identifier.getDatabaseName(), identifier.getObjectName());
@@ -434,21 +436,22 @@ public class HiveCatalog extends AbstractCatalog {
                     e);
         }
 
-        if (!INPUT_FORMAT_CLASS_NAME.equals(table.getSd().getInputFormat())
-                || !OUTPUT_FORMAT_CLASS_NAME.equals(table.getSd().getOutputFormat())) {
-            if (throwException) {
-                throw new IllegalArgumentException(
-                        "Table "
-                                + identifier.getFullName()
-                                + " is not a paimon table. It's input format is "
-                                + table.getSd().getInputFormat()
-                                + " and its output format is "
-                                + table.getSd().getOutputFormat());
-            } else {
-                return false;
-            }
+        boolean isPaimonTable = isPaimonTable(table) || LegacyHiveClasses.isPaimonTable(table);
+        if (!isPaimonTable && throwException) {
+            throw new IllegalArgumentException(
+                    "Table "
+                            + identifier.getFullName()
+                            + " is not a paimon table. It's input format is "
+                            + table.getSd().getInputFormat()
+                            + " and its output format is "
+                            + table.getSd().getOutputFormat());
         }
-        return true;
+        return isPaimonTable;
+    }
+
+    private static boolean isPaimonTable(Table table) {
+        return INPUT_FORMAT_CLASS_NAME.equals(table.getSd().getInputFormat())
+                && OUTPUT_FORMAT_CLASS_NAME.equals(table.getSd().getOutputFormat());
     }
 
     private SchemaManager schemaManager(Identifier identifier) {
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreHiveStorageHandler.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreHiveStorageHandler.java
new file mode 100644
index 000000000..b1336d536
--- /dev/null
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreHiveStorageHandler.java
@@ -0,0 +1,25 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.store.hive;
+
+import org.apache.paimon.hive.PaimonStorageHandler;
+
+/** A {@link PaimonStorageHandler} to be compatible to table store 0.3. */
+@Deprecated
+public class TableStoreHiveStorageHandler extends PaimonStorageHandler {}
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreSerDe.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreSerDe.java
new file mode 100644
index 000000000..c2fe9b98e
--- /dev/null
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/hive/TableStoreSerDe.java
@@ -0,0 +1,25 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.store.hive;
+
+import org.apache.paimon.hive.PaimonSerDe;
+
+/** A {@link PaimonSerDe} to be compatible to table store 0.3. */
+@Deprecated
+public class TableStoreSerDe extends PaimonSerDe {}
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreInputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreInputFormat.java
new file mode 100644
index 000000000..28d83ff84
--- /dev/null
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreInputFormat.java
@@ -0,0 +1,25 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.store.mapred;
+
+import org.apache.paimon.hive.mapred.PaimonInputFormat;
+
+/** A {@link PaimonInputFormat} to be compatible to table store 0.3. */
+@Deprecated
+public class TableStoreInputFormat extends PaimonInputFormat {}
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreOutputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreOutputFormat.java
new file mode 100644
index 000000000..052196841
--- /dev/null
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/flink/table/store/mapred/TableStoreOutputFormat.java
@@ -0,0 +1,25 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.store.mapred;
+
+import org.apache.paimon.hive.mapred.PaimonOutputFormat;
+
+/** A {@link PaimonOutputFormat} to be compatible to table store 0.3. */
+@Deprecated
+public class TableStoreOutputFormat extends PaimonOutputFormat {}


[incubator-paimon] 06/32: [core] Rename paimon filesystems

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit e41980ab1368ffe69d8c254b21c725ce68e4f45d
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 12:29:29 2023 +0800

    [core] Rename paimon filesystems
---
 .../paimon-hadoop-shaded}/pom.xml                              |  0
 .../paimon-hadoop-shaded}/src/main/resources/META-INF/NOTICE   |  0
 .../src/main/resources/META-INF/licenses/LICENSE-re2j          |  0
 .../src/main/resources/META-INF/licenses/LICENSE-stax2api      |  0
 .../paimon-oss-impl}/pom.xml                                   |  4 ++--
 .../java/org/apache/paimon/oss}/HadoopCompliantFileIO.java     |  2 +-
 .../src/main/java/org/apache/paimon}/oss/OSSFileIO.java        |  2 +-
 .../paimon-oss-impl}/src/main/resources/META-INF/NOTICE        |  0
 .../src/main/resources/META-INF/licenses/LICENSE.jdom          |  0
 .../paimon-oss}/pom.xml                                        |  0
 .../src/main/java/org/apache/paimon}/oss/OSSLoader.java        |  4 ++--
 .../services/org.apache.flink.table.store.fs.FileIOLoader      |  2 +-
 .../paimon-s3-impl}/pom.xml                                    |  0
 .../services/s3/model/transform/XmlResponsesSaxParser.java     |  0
 .../main/java/org/apache/paimon/s3}/HadoopCompliantFileIO.java |  2 +-
 .../src/main/java/org/apache/paimon}/s3/S3FileIO.java          |  2 +-
 .../paimon-s3-impl}/src/main/resources/META-INF/NOTICE         |  0
 .../src/main/resources/META-INF/licenses/LICENSE-re2j          |  0
 .../src/main/resources/META-INF/licenses/LICENSE-stax2api      |  0
 .../src/main/resources/META-INF/licenses/LICENSE.jaxb          |  0
 .../paimon-s3}/pom.xml                                         |  0
 .../src/main/java/org/apache/paimon}/s3/S3Loader.java          |  4 ++--
 .../services/org.apache.flink.table.store.fs.FileIOLoader      |  2 +-
 {flink-table-store-filesystems => paimon-filesystems}/pom.xml  | 10 +++++-----
 {flink-table-store-shade => paimon-shade}/pom.xml              |  0
 pom.xml                                                        |  4 ++--
 26 files changed, 19 insertions(+), 19 deletions(-)

diff --git a/flink-table-store-filesystems/flink-table-store-hadoop-shaded/pom.xml b/paimon-filesystems/paimon-hadoop-shaded/pom.xml
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-hadoop-shaded/pom.xml
rename to paimon-filesystems/paimon-hadoop-shaded/pom.xml
diff --git a/flink-table-store-filesystems/flink-table-store-hadoop-shaded/src/main/resources/META-INF/NOTICE b/paimon-filesystems/paimon-hadoop-shaded/src/main/resources/META-INF/NOTICE
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-hadoop-shaded/src/main/resources/META-INF/NOTICE
rename to paimon-filesystems/paimon-hadoop-shaded/src/main/resources/META-INF/NOTICE
diff --git a/flink-table-store-filesystems/flink-table-store-hadoop-shaded/src/main/resources/META-INF/licenses/LICENSE-re2j b/paimon-filesystems/paimon-hadoop-shaded/src/main/resources/META-INF/licenses/LICENSE-re2j
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-hadoop-shaded/src/main/resources/META-INF/licenses/LICENSE-re2j
rename to paimon-filesystems/paimon-hadoop-shaded/src/main/resources/META-INF/licenses/LICENSE-re2j
diff --git a/flink-table-store-filesystems/flink-table-store-hadoop-shaded/src/main/resources/META-INF/licenses/LICENSE-stax2api b/paimon-filesystems/paimon-hadoop-shaded/src/main/resources/META-INF/licenses/LICENSE-stax2api
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-hadoop-shaded/src/main/resources/META-INF/licenses/LICENSE-stax2api
rename to paimon-filesystems/paimon-hadoop-shaded/src/main/resources/META-INF/licenses/LICENSE-stax2api
diff --git a/flink-table-store-filesystems/flink-table-store-oss-impl/pom.xml b/paimon-filesystems/paimon-oss-impl/pom.xml
similarity index 96%
rename from flink-table-store-filesystems/flink-table-store-oss-impl/pom.xml
rename to paimon-filesystems/paimon-oss-impl/pom.xml
index f6f7efde9..8ba60cb84 100644
--- a/flink-table-store-filesystems/flink-table-store-oss-impl/pom.xml
+++ b/paimon-filesystems/paimon-oss-impl/pom.xml
@@ -124,11 +124,11 @@
                                 <!-- relocate the OSS dependencies -->
                                 <relocation>
                                     <pattern>com.aliyun</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.oss.shaded.com.aliyun</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.oss.shaded.com.aliyun</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>com.aliyuncs</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.oss.shaded.com.aliyuncs</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.oss.shaded.com.aliyuncs</shadedPattern>
                                 </relocation>
                             </relocations>
                             <filters>
diff --git a/flink-table-store-filesystems/flink-table-store-s3-impl/src/main/java/org/apache/flink/table/store/s3/HadoopCompliantFileIO.java b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/HadoopCompliantFileIO.java
similarity index 99%
rename from flink-table-store-filesystems/flink-table-store-s3-impl/src/main/java/org/apache/flink/table/store/s3/HadoopCompliantFileIO.java
rename to paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/HadoopCompliantFileIO.java
index 7cb9b79f9..c978abc00 100644
--- a/flink-table-store-filesystems/flink-table-store-s3-impl/src/main/java/org/apache/flink/table/store/s3/HadoopCompliantFileIO.java
+++ b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/HadoopCompliantFileIO.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.s3;
+package org.apache.paimon.oss;
 
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.FileStatus;
diff --git a/flink-table-store-filesystems/flink-table-store-oss-impl/src/main/java/org/apache/flink/table/store/oss/OSSFileIO.java b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
similarity index 99%
rename from flink-table-store-filesystems/flink-table-store-oss-impl/src/main/java/org/apache/flink/table/store/oss/OSSFileIO.java
rename to paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
index 0544f1821..cc456de1c 100644
--- a/flink-table-store-filesystems/flink-table-store-oss-impl/src/main/java/org/apache/flink/table/store/oss/OSSFileIO.java
+++ b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.oss;
+package org.apache.paimon.oss;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.fs.FileIO;
diff --git a/flink-table-store-filesystems/flink-table-store-oss-impl/src/main/resources/META-INF/NOTICE b/paimon-filesystems/paimon-oss-impl/src/main/resources/META-INF/NOTICE
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-oss-impl/src/main/resources/META-INF/NOTICE
rename to paimon-filesystems/paimon-oss-impl/src/main/resources/META-INF/NOTICE
diff --git a/flink-table-store-filesystems/flink-table-store-oss-impl/src/main/resources/META-INF/licenses/LICENSE.jdom b/paimon-filesystems/paimon-oss-impl/src/main/resources/META-INF/licenses/LICENSE.jdom
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-oss-impl/src/main/resources/META-INF/licenses/LICENSE.jdom
rename to paimon-filesystems/paimon-oss-impl/src/main/resources/META-INF/licenses/LICENSE.jdom
diff --git a/flink-table-store-filesystems/flink-table-store-oss/pom.xml b/paimon-filesystems/paimon-oss/pom.xml
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-oss/pom.xml
rename to paimon-filesystems/paimon-oss/pom.xml
diff --git a/flink-table-store-filesystems/flink-table-store-oss/src/main/java/org/apache/flink/table/store/oss/OSSLoader.java b/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
similarity index 94%
rename from flink-table-store-filesystems/flink-table-store-oss/src/main/java/org/apache/flink/table/store/oss/OSSLoader.java
rename to paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
index 1c58788e8..ba4f96729 100644
--- a/flink-table-store-filesystems/flink-table-store-oss/src/main/java/org/apache/flink/table/store/oss/OSSLoader.java
+++ b/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.oss;
+package org.apache.paimon.oss;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.fs.FileIO;
@@ -30,7 +30,7 @@ public class OSSLoader implements FileIOLoader {
 
     private static final String OSS_JAR = "flink-table-store-plugin-oss.jar";
 
-    private static final String OSS_CLASS = "org.apache.flink.table.store.oss.OSSFileIO";
+    private static final String OSS_CLASS = "org.apache.paimon.oss.OSSFileIO";
 
     // Singleton lazy initialization
 
diff --git a/flink-table-store-filesystems/flink-table-store-s3/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader b/paimon-filesystems/paimon-oss/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
similarity index 95%
rename from flink-table-store-filesystems/flink-table-store-s3/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
rename to paimon-filesystems/paimon-oss/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
index d7aae95e6..b85da5a4e 100644
--- a/flink-table-store-filesystems/flink-table-store-s3/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
+++ b/paimon-filesystems/paimon-oss/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
@@ -13,4 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.flink.table.store.s3.S3Loader
+org.apache.paimon.oss.OSSLoader
diff --git a/flink-table-store-filesystems/flink-table-store-s3-impl/pom.xml b/paimon-filesystems/paimon-s3-impl/pom.xml
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-s3-impl/pom.xml
rename to paimon-filesystems/paimon-s3-impl/pom.xml
diff --git a/flink-table-store-filesystems/flink-table-store-s3-impl/src/main/java/com/amazonaws/services/s3/model/transform/XmlResponsesSaxParser.java b/paimon-filesystems/paimon-s3-impl/src/main/java/com/amazonaws/services/s3/model/transform/XmlResponsesSaxParser.java
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-s3-impl/src/main/java/com/amazonaws/services/s3/model/transform/XmlResponsesSaxParser.java
rename to paimon-filesystems/paimon-s3-impl/src/main/java/com/amazonaws/services/s3/model/transform/XmlResponsesSaxParser.java
diff --git a/flink-table-store-filesystems/flink-table-store-oss-impl/src/main/java/org/apache/flink/table/store/oss/HadoopCompliantFileIO.java b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/HadoopCompliantFileIO.java
similarity index 99%
rename from flink-table-store-filesystems/flink-table-store-oss-impl/src/main/java/org/apache/flink/table/store/oss/HadoopCompliantFileIO.java
rename to paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/HadoopCompliantFileIO.java
index 20d426660..9d44a22ce 100644
--- a/flink-table-store-filesystems/flink-table-store-oss-impl/src/main/java/org/apache/flink/table/store/oss/HadoopCompliantFileIO.java
+++ b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/HadoopCompliantFileIO.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.oss;
+package org.apache.paimon.s3;
 
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.FileStatus;
diff --git a/flink-table-store-filesystems/flink-table-store-s3-impl/src/main/java/org/apache/flink/table/store/s3/S3FileIO.java b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
similarity index 99%
rename from flink-table-store-filesystems/flink-table-store-s3-impl/src/main/java/org/apache/flink/table/store/s3/S3FileIO.java
rename to paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
index 684300f76..807376b40 100644
--- a/flink-table-store-filesystems/flink-table-store-s3-impl/src/main/java/org/apache/flink/table/store/s3/S3FileIO.java
+++ b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.s3;
+package org.apache.paimon.s3;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.fs.FileIO;
diff --git a/flink-table-store-filesystems/flink-table-store-s3-impl/src/main/resources/META-INF/NOTICE b/paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/NOTICE
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-s3-impl/src/main/resources/META-INF/NOTICE
rename to paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/NOTICE
diff --git a/flink-table-store-filesystems/flink-table-store-s3-impl/src/main/resources/META-INF/licenses/LICENSE-re2j b/paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/licenses/LICENSE-re2j
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-s3-impl/src/main/resources/META-INF/licenses/LICENSE-re2j
rename to paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/licenses/LICENSE-re2j
diff --git a/flink-table-store-filesystems/flink-table-store-s3-impl/src/main/resources/META-INF/licenses/LICENSE-stax2api b/paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/licenses/LICENSE-stax2api
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-s3-impl/src/main/resources/META-INF/licenses/LICENSE-stax2api
rename to paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/licenses/LICENSE-stax2api
diff --git a/flink-table-store-filesystems/flink-table-store-s3-impl/src/main/resources/META-INF/licenses/LICENSE.jaxb b/paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/licenses/LICENSE.jaxb
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-s3-impl/src/main/resources/META-INF/licenses/LICENSE.jaxb
rename to paimon-filesystems/paimon-s3-impl/src/main/resources/META-INF/licenses/LICENSE.jaxb
diff --git a/flink-table-store-filesystems/flink-table-store-s3/pom.xml b/paimon-filesystems/paimon-s3/pom.xml
similarity index 100%
rename from flink-table-store-filesystems/flink-table-store-s3/pom.xml
rename to paimon-filesystems/paimon-s3/pom.xml
diff --git a/flink-table-store-filesystems/flink-table-store-s3/src/main/java/org/apache/flink/table/store/s3/S3Loader.java b/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
similarity index 94%
rename from flink-table-store-filesystems/flink-table-store-s3/src/main/java/org/apache/flink/table/store/s3/S3Loader.java
rename to paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
index 1683d915f..c7c86589b 100644
--- a/flink-table-store-filesystems/flink-table-store-s3/src/main/java/org/apache/flink/table/store/s3/S3Loader.java
+++ b/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.s3;
+package org.apache.paimon.s3;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.fs.FileIO;
@@ -30,7 +30,7 @@ public class S3Loader implements FileIOLoader {
 
     private static final String S3_JAR = "flink-table-store-plugin-s3.jar";
 
-    private static final String S3_CLASS = "org.apache.flink.table.store.s3.S3FileIO";
+    private static final String S3_CLASS = "org.apache.paimon.s3.S3FileIO";
 
     // Singleton lazy initialization
 
diff --git a/flink-table-store-filesystems/flink-table-store-oss/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader b/paimon-filesystems/paimon-s3/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
similarity index 94%
rename from flink-table-store-filesystems/flink-table-store-oss/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
rename to paimon-filesystems/paimon-s3/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
index e73153603..bf91f2b83 100644
--- a/flink-table-store-filesystems/flink-table-store-oss/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
+++ b/paimon-filesystems/paimon-s3/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
@@ -13,4 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.flink.table.store.oss.OSSLoader
+org.apache.paimon.s3.S3Loader
diff --git a/flink-table-store-filesystems/pom.xml b/paimon-filesystems/pom.xml
similarity index 86%
rename from flink-table-store-filesystems/pom.xml
rename to paimon-filesystems/pom.xml
index 6e996959c..08d3cbb4a 100644
--- a/flink-table-store-filesystems/pom.xml
+++ b/paimon-filesystems/pom.xml
@@ -32,11 +32,11 @@
     <packaging>pom</packaging>
 
     <modules>
-        <module>flink-table-store-hadoop-shaded</module>
-        <module>flink-table-store-oss</module>
-        <module>flink-table-store-oss-impl</module>
-        <module>flink-table-store-s3</module>
-        <module>flink-table-store-s3-impl</module>
+        <module>paimon-hadoop-shaded</module>
+        <module>paimon-oss</module>
+        <module>paimon-oss-impl</module>
+        <module>paimon-s3</module>
+        <module>paimon-s3-impl</module>
     </modules>
 
     <properties>
diff --git a/flink-table-store-shade/pom.xml b/paimon-shade/pom.xml
similarity index 100%
rename from flink-table-store-shade/pom.xml
rename to paimon-shade/pom.xml
diff --git a/pom.xml b/pom.xml
index b069216f6..1137f3b22 100644
--- a/pom.xml
+++ b/pom.xml
@@ -60,9 +60,9 @@ under the License.
         <module>paimon-flink</module>
         <module>flink-table-store-docs</module>
         <module>flink-table-store-e2e-tests</module>
-        <module>flink-table-store-filesystems</module>
+        <module>paimon-filesystems</module>
         <module>flink-table-store-format</module>
-        <module>flink-table-store-shade</module>
+        <module>paimon-shade</module>
         <module>paimon-hive</module>
         <module>paimon-spark</module>
         <module>paimon-test-utils</module>


[incubator-paimon] 02/32: [core] Rename paimon test utils

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit a09f73798eb09f45607cff3a27d5eb818ae4a3b0
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 12:04:01 2023 +0800

    [core] Rename paimon test utils
---
 .../test/java/org/apache/flink/table/store/data/BinaryStringTest.java | 4 ++--
 .../org/apache/flink/table/store/memory/MemorySegmentTestBase.java    | 3 +--
 .../flink/table/store/memory/OffHeapDirectMemorySegmentTest.java      | 3 +--
 .../org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java  | 3 +--
 {flink-table-store-test-utils => paimon-test-utils}/pom.xml           | 0
 .../java/org/apache/paimon}/testutils/junit/DockerImageVersions.java  | 2 +-
 .../java/org/apache/paimon}/testutils/junit/TestLoggerExtension.java  | 2 +-
 .../org/apache/paimon}/testutils/junit/parameterized/Parameter.java   | 2 +-
 .../testutils/junit/parameterized/ParameterizedTestExtension.java     | 2 +-
 .../org/apache/paimon}/testutils/junit/parameterized/Parameters.java  | 2 +-
 pom.xml                                                               | 2 +-
 11 files changed, 11 insertions(+), 14 deletions(-)

diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/BinaryStringTest.java b/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/BinaryStringTest.java
index 050d94d92..471c5015c 100644
--- a/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/BinaryStringTest.java
+++ b/flink-table-store-common/src/test/java/org/apache/flink/table/store/data/BinaryStringTest.java
@@ -18,10 +18,10 @@
 package org.apache.flink.table.store.data;
 
 import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.testutils.junit.parameterized.ParameterizedTestExtension;
-import org.apache.flink.table.store.testutils.junit.parameterized.Parameters;
 import org.apache.flink.table.store.utils.SortUtil;
 
+import org.apache.paimon.testutils.junit.parameterized.ParameterizedTestExtension;
+import org.apache.paimon.testutils.junit.parameterized.Parameters;
 import org.junit.jupiter.api.TestTemplate;
 import org.junit.jupiter.api.extension.ExtendWith;
 
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/MemorySegmentTestBase.java b/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/MemorySegmentTestBase.java
index 68636bc45..ac42d4ffa 100644
--- a/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/MemorySegmentTestBase.java
+++ b/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/MemorySegmentTestBase.java
@@ -18,8 +18,7 @@
 
 package org.apache.flink.table.store.memory;
 
-import org.apache.flink.table.store.testutils.junit.parameterized.Parameters;
-
+import org.apache.paimon.testutils.junit.parameterized.Parameters;
 import org.junit.jupiter.api.TestTemplate;
 
 import java.io.ByteArrayInputStream;
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OffHeapDirectMemorySegmentTest.java b/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OffHeapDirectMemorySegmentTest.java
index 734162fdc..3945e2972 100644
--- a/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OffHeapDirectMemorySegmentTest.java
+++ b/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OffHeapDirectMemorySegmentTest.java
@@ -18,8 +18,7 @@
 
 package org.apache.flink.table.store.memory;
 
-import org.apache.flink.table.store.testutils.junit.parameterized.ParameterizedTestExtension;
-
+import org.apache.paimon.testutils.junit.parameterized.ParameterizedTestExtension;
 import org.junit.jupiter.api.TestTemplate;
 import org.junit.jupiter.api.extension.ExtendWith;
 
diff --git a/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java b/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java
index 1b5e2be88..d39365f8a 100644
--- a/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java
+++ b/flink-table-store-common/src/test/java/org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java
@@ -18,8 +18,7 @@
 
 package org.apache.flink.table.store.memory;
 
-import org.apache.flink.table.store.testutils.junit.parameterized.ParameterizedTestExtension;
-
+import org.apache.paimon.testutils.junit.parameterized.ParameterizedTestExtension;
 import org.junit.jupiter.api.TestTemplate;
 import org.junit.jupiter.api.extension.ExtendWith;
 
diff --git a/flink-table-store-test-utils/pom.xml b/paimon-test-utils/pom.xml
similarity index 100%
rename from flink-table-store-test-utils/pom.xml
rename to paimon-test-utils/pom.xml
diff --git a/flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/DockerImageVersions.java b/paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/DockerImageVersions.java
similarity index 96%
rename from flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/DockerImageVersions.java
rename to paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/DockerImageVersions.java
index a2a8c5111..5fb8fb1bb 100644
--- a/flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/DockerImageVersions.java
+++ b/paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/DockerImageVersions.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.testutils.junit;
+package org.apache.paimon.testutils.junit;
 
 /**
  * Utility class for defining the image names and versions of Docker containers used during the Java
diff --git a/flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/TestLoggerExtension.java b/paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/TestLoggerExtension.java
similarity index 98%
rename from flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/TestLoggerExtension.java
rename to paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/TestLoggerExtension.java
index 816b47205..fb8bc2a0b 100644
--- a/flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/TestLoggerExtension.java
+++ b/paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/TestLoggerExtension.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.testutils.junit;
+package org.apache.paimon.testutils.junit;
 
 import org.junit.jupiter.api.extension.BeforeEachCallback;
 import org.junit.jupiter.api.extension.ExtensionContext;
diff --git a/flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/parameterized/Parameter.java b/paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/parameterized/Parameter.java
similarity index 95%
rename from flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/parameterized/Parameter.java
rename to paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/parameterized/Parameter.java
index 58f41add4..351437915 100644
--- a/flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/parameterized/Parameter.java
+++ b/paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/parameterized/Parameter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.testutils.junit.parameterized;
+package org.apache.paimon.testutils.junit.parameterized;
 
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
diff --git a/flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/parameterized/ParameterizedTestExtension.java b/paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/parameterized/ParameterizedTestExtension.java
similarity index 99%
rename from flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/parameterized/ParameterizedTestExtension.java
rename to paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/parameterized/ParameterizedTestExtension.java
index 53ff4d87c..60293ddc6 100644
--- a/flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/parameterized/ParameterizedTestExtension.java
+++ b/paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/parameterized/ParameterizedTestExtension.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.testutils.junit.parameterized;
+package org.apache.paimon.testutils.junit.parameterized;
 
 import org.junit.jupiter.api.TestTemplate;
 import org.junit.jupiter.api.extension.BeforeEachCallback;
diff --git a/flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/parameterized/Parameters.java b/paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/parameterized/Parameters.java
similarity index 96%
rename from flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/parameterized/Parameters.java
rename to paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/parameterized/Parameters.java
index 48e2a3e5a..1f1a60c1c 100644
--- a/flink-table-store-test-utils/src/main/java/org/apache/flink/table/store/testutils/junit/parameterized/Parameters.java
+++ b/paimon-test-utils/src/main/java/org/apache/paimon/testutils/junit/parameterized/Parameters.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.testutils.junit.parameterized;
+package org.apache.paimon.testutils.junit.parameterized;
 
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
diff --git a/pom.xml b/pom.xml
index 8b042247b..45b3d919c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -65,7 +65,7 @@ under the License.
         <module>flink-table-store-shade</module>
         <module>flink-table-store-hive</module>
         <module>flink-table-store-spark</module>
-        <module>flink-table-store-test-utils</module>
+        <module>paimon-test-utils</module>
     </modules>
 
     <properties>


[incubator-paimon] 03/32: [core] Rename paimon spark

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 5df46e752ac35b36a5349b4065590e13e5cf0ce3
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 12:09:56 2023 +0800

    [core] Rename paimon spark
---
 docs/content/engines/spark3.md                                 |  2 +-
 docs/content/filesystems/oss.md                                |  2 +-
 docs/content/filesystems/s3.md                                 |  2 +-
 docs/content/how-to/creating-catalogs.md                       |  4 ++--
 .../java/org/apache/flink/table/store/tests/SparkE2eTest.java  |  2 +-
 .../paimon-spark-2}/pom.xml                                    |  0
 .../java/org/apache/paimon}/spark/SparkDataSourceReader.java   |  2 +-
 .../java/org/apache/paimon}/spark/SparkInputPartition.java     |  2 +-
 .../src/main/java/org/apache/paimon}/spark/SparkSource.java    |  2 +-
 .../org.apache.spark.sql.sources.DataSourceRegister            |  2 +-
 .../java/org/apache/paimon}/spark/SimpleTableTestHelper.java   |  2 +-
 .../org/apache/paimon}/spark/SparkFilterConverterTest.java     |  2 +-
 .../java/org/apache/paimon}/spark/SparkInternalRowTest.java    |  4 ++--
 .../test/java/org/apache/paimon}/spark/SparkReadITCase.java    |  2 +-
 .../src/test/java/org/apache/paimon}/spark/SparkTypeTest.java  |  4 ++--
 .../paimon-spark-2}/src/test/resources/log4j2-test.properties  |  0
 .../paimon-spark-3.1}/pom.xml                                  |  0
 .../paimon-spark-3.2}/pom.xml                                  |  0
 .../paimon-spark-3.3}/pom.xml                                  |  0
 .../paimon-spark-common}/pom.xml                               |  0
 .../src/main/java/org/apache/paimon}/spark/SparkArrayData.java |  4 ++--
 .../src/main/java/org/apache/paimon}/spark/SparkCatalog.java   |  4 ++--
 .../java/org/apache/paimon}/spark/SparkFilterConverter.java    |  2 +-
 .../java/org/apache/paimon}/spark/SparkInputPartition.java     |  2 +-
 .../main/java/org/apache/paimon}/spark/SparkInternalRow.java   |  2 +-
 .../main/java/org/apache/paimon}/spark/SparkReaderFactory.java |  2 +-
 .../src/main/java/org/apache/paimon}/spark/SparkRow.java       |  2 +-
 .../src/main/java/org/apache/paimon}/spark/SparkScan.java      |  2 +-
 .../main/java/org/apache/paimon}/spark/SparkScanBuilder.java   |  2 +-
 .../src/main/java/org/apache/paimon}/spark/SparkSource.java    |  2 +-
 .../src/main/java/org/apache/paimon}/spark/SparkTable.java     |  2 +-
 .../src/main/java/org/apache/paimon}/spark/SparkTypeUtils.java |  2 +-
 .../src/main/java/org/apache/paimon}/spark/SparkWrite.java     |  2 +-
 .../main/java/org/apache/paimon}/spark/SparkWriteBuilder.java  |  2 +-
 .../org/apache/paimon}/spark/SpecializedGettersReader.java     |  2 +-
 .../services/org.apache.spark.sql.sources.DataSourceRegister   |  2 +-
 .../test/java/org/apache/paimon}/spark/MinioTestContainer.java |  2 +-
 .../org/apache/paimon}/spark/SparkFilterConverterTest.java     |  2 +-
 .../java/org/apache/paimon}/spark/SparkInternalRowTest.java    |  4 ++--
 .../test/java/org/apache/paimon}/spark/SparkReadITCase.java    |  2 +-
 .../test/java/org/apache/paimon}/spark/SparkReadTestBase.java  |  2 +-
 .../src/test/java/org/apache/paimon}/spark/SparkS3ITCase.java  |  2 +-
 .../org/apache/paimon}/spark/SparkSchemaEvolutionITCase.java   |  2 +-
 .../src/test/java/org/apache/paimon}/spark/SparkTypeTest.java  |  6 +++---
 .../test/java/org/apache/paimon}/spark/SparkWriteITCase.java   |  2 +-
 .../src/test/resources/log4j2-test.properties                  |  0
 {flink-table-store-spark => paimon-spark}/pom.xml              | 10 +++++-----
 pom.xml                                                        |  2 +-
 48 files changed, 53 insertions(+), 53 deletions(-)

diff --git a/docs/content/engines/spark3.md b/docs/content/engines/spark3.md
index dc03da95b..323ba8db7 100644
--- a/docs/content/engines/spark3.md
+++ b/docs/content/engines/spark3.md
@@ -86,7 +86,7 @@ When starting `spark-sql`, use the following command to register Table Store’s
 
 ```bash
 spark-sql ... \
-    --conf spark.sql.catalog.tablestore=org.apache.flink.table.store.spark.SparkCatalog \
+    --conf spark.sql.catalog.tablestore=org.apache.paimon.spark.SparkCatalog \
     --conf spark.sql.catalog.tablestore.warehouse=file:/tmp/table_store
 ```
 
diff --git a/docs/content/filesystems/oss.md b/docs/content/filesystems/oss.md
index 8bc148896..9de958a9c 100644
--- a/docs/content/filesystems/oss.md
+++ b/docs/content/filesystems/oss.md
@@ -78,7 +78,7 @@ Place `flink-table-store-oss-{{< version >}}.jar` together with `flink-table-sto
 
 ```shell
 spark-sql \ 
-  --conf spark.sql.catalog.tablestore=org.apache.flink.table.store.spark.SparkCatalog \
+  --conf spark.sql.catalog.tablestore=org.apache.paimon.spark.SparkCatalog \
   --conf spark.sql.catalog.tablestore.warehouse=oss://<bucket-name>/ \
   --conf spark.sql.catalog.tablestore.fs.oss.endpoint=oss-cn-hangzhou.aliyuncs.com \
   --conf spark.sql.catalog.tablestore.fs.oss.accessKeyId=xxx \
diff --git a/docs/content/filesystems/s3.md b/docs/content/filesystems/s3.md
index f0618fad4..a0ed85508 100644
--- a/docs/content/filesystems/s3.md
+++ b/docs/content/filesystems/s3.md
@@ -78,7 +78,7 @@ Place `flink-table-store-s3-{{< version >}}.jar` together with `flink-table-stor
 
 ```shell
 spark-sql \ 
-  --conf spark.sql.catalog.tablestore=org.apache.flink.table.store.spark.SparkCatalog \
+  --conf spark.sql.catalog.tablestore=org.apache.paimon.spark.SparkCatalog \
   --conf spark.sql.catalog.tablestore.warehouse=s3://<bucket>/<endpoint> \
   --conf spark.sql.catalog.tablestore.s3.endpoint=your-endpoint-hostname \
   --conf spark.sql.catalog.tablestore.s3.access-key=xxx \
diff --git a/docs/content/how-to/creating-catalogs.md b/docs/content/how-to/creating-catalogs.md
index 6a9c6a09a..df89481fe 100644
--- a/docs/content/how-to/creating-catalogs.md
+++ b/docs/content/how-to/creating-catalogs.md
@@ -58,7 +58,7 @@ The following shell command registers a Table Store catalog named `tablestore`.
 
 ```bash
 spark-sql ... \
-    --conf spark.sql.catalog.tablestore=org.apache.flink.table.store.spark.SparkCatalog \
+    --conf spark.sql.catalog.tablestore=org.apache.paimon.spark.SparkCatalog \
     --conf spark.sql.catalog.tablestore.warehouse=hdfs://path/to/warehouse
 ```
 
@@ -137,7 +137,7 @@ The following shell command registers a Table tore Hive catalog named `tablestor
 
 ```bash
 spark-sql ... \
-    --conf spark.sql.catalog.tablestore=org.apache.flink.table.store.spark.SparkCatalog \
+    --conf spark.sql.catalog.tablestore=org.apache.paimon.spark.SparkCatalog \
     --conf spark.sql.catalog.tablestore.warehouse=hdfs://path/to/warehouse \
     --conf spark.sql.catalog.tablestore.metastore=hive \
     --conf spark.sql.catalog.tablestore.uri=thrift://<hive-metastore-host-name>:<port>
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/SparkE2eTest.java b/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/SparkE2eTest.java
index 3761b837e..f26526a02 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/SparkE2eTest.java
+++ b/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/SparkE2eTest.java
@@ -60,7 +60,7 @@ public class SparkE2eTest extends E2eReaderTestBase {
                                             "--master",
                                             "spark://spark-master:7077",
                                             "--conf",
-                                            "spark.sql.catalog.tablestore=org.apache.flink.table.store.spark.SparkCatalog",
+                                            "spark.sql.catalog.tablestore=org.apache.paimon.spark.SparkCatalog",
                                             "--conf",
                                             "spark.sql.catalog.tablestore.warehouse=file:"
                                                     + warehousePath,
diff --git a/flink-table-store-spark/flink-table-store-spark-2/pom.xml b/paimon-spark/paimon-spark-2/pom.xml
similarity index 100%
rename from flink-table-store-spark/flink-table-store-spark-2/pom.xml
rename to paimon-spark/paimon-spark-2/pom.xml
diff --git a/flink-table-store-spark/flink-table-store-spark-2/src/main/java/org/apache/flink/table/store/spark/SparkDataSourceReader.java b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-2/src/main/java/org/apache/flink/table/store/spark/SparkDataSourceReader.java
rename to paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
index 1c2c3ba14..788a9c8df 100644
--- a/flink-table-store-spark/flink-table-store-spark-2/src/main/java/org/apache/flink/table/store/spark/SparkDataSourceReader.java
+++ b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.table.Table;
diff --git a/flink-table-store-spark/flink-table-store-spark-2/src/main/java/org/apache/flink/table/store/spark/SparkInputPartition.java b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
similarity index 98%
rename from flink-table-store-spark/flink-table-store-spark-2/src/main/java/org/apache/flink/table/store/spark/SparkInputPartition.java
rename to paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
index 3c7e572a6..d1a1b074b 100644
--- a/flink-table-store-spark/flink-table-store-spark-2/src/main/java/org/apache/flink/table/store/spark/SparkInputPartition.java
+++ b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.reader.RecordReader;
diff --git a/flink-table-store-spark/flink-table-store-spark-2/src/main/java/org/apache/flink/table/store/spark/SparkSource.java b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
similarity index 98%
rename from flink-table-store-spark/flink-table-store-spark-2/src/main/java/org/apache/flink/table/store/spark/SparkSource.java
rename to paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
index 5e9203f8e..b498eb4a0 100644
--- a/flink-table-store-spark/flink-table-store-spark-2/src/main/java/org/apache/flink/table/store/spark/SparkSource.java
+++ b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.options.Options;
diff --git a/flink-table-store-spark/flink-table-store-spark-2/src/main/resources/META-INF.services/org.apache.spark.sql.sources.DataSourceRegister b/paimon-spark/paimon-spark-2/src/main/resources/META-INF.services/org.apache.spark.sql.sources.DataSourceRegister
similarity index 94%
rename from flink-table-store-spark/flink-table-store-spark-2/src/main/resources/META-INF.services/org.apache.spark.sql.sources.DataSourceRegister
rename to paimon-spark/paimon-spark-2/src/main/resources/META-INF.services/org.apache.spark.sql.sources.DataSourceRegister
index e0626103b..f2046daf3 100644
--- a/flink-table-store-spark/flink-table-store-spark-2/src/main/resources/META-INF.services/org.apache.spark.sql.sources.DataSourceRegister
+++ b/paimon-spark/paimon-spark-2/src/main/resources/META-INF.services/org.apache.spark.sql.sources.DataSourceRegister
@@ -13,4 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.flink.table.store.spark.SparkSource
+org.apache.paimon.spark.SparkSource
diff --git a/flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SimpleTableTestHelper.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
similarity index 98%
rename from flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SimpleTableTestHelper.java
rename to paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
index 777d98eb1..f4c0269c2 100644
--- a/flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SimpleTableTestHelper.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.data.InternalRow;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkFilterConverterTest.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkFilterConverterTest.java
rename to paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
index c38d2dc73..8fca67ae8 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkFilterConverterTest.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.file.predicate.Predicate;
diff --git a/flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkInternalRowTest.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkInternalRowTest.java
similarity index 97%
rename from flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkInternalRowTest.java
rename to paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkInternalRowTest.java
index 2b14043b9..a1d88d55d 100644
--- a/flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkInternalRowTest.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkInternalRowTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.Decimal;
@@ -45,7 +45,7 @@ import java.util.stream.Stream;
 import scala.Function1;
 
 import static org.apache.flink.table.store.data.BinaryString.fromString;
-import static org.apache.flink.table.store.spark.SparkTypeTest.ALL_TYPES;
+import static org.apache.paimon.spark.SparkTypeTest.ALL_TYPES;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link SparkInternalRow}. */
diff --git a/flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkReadITCase.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkReadITCase.java
rename to paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
index 08c186f5e..0f3a14cad 100644
--- a/flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkReadITCase.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.GenericRow;
diff --git a/flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkTypeTest.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkTypeTest.java
similarity index 97%
rename from flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkTypeTest.java
rename to paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkTypeTest.java
index c2bb43352..16cb18ff9 100644
--- a/flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkTypeTest.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkTypeTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
@@ -24,7 +24,7 @@ import org.apache.flink.table.store.types.RowType;
 import org.apache.spark.sql.types.StructType;
 import org.junit.jupiter.api.Test;
 
-import static org.apache.flink.table.store.spark.SparkTypeUtils.fromFlinkRowType;
+import static org.apache.paimon.spark.SparkTypeUtils.fromFlinkRowType;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link SparkTypeUtils}. */
diff --git a/flink-table-store-spark/flink-table-store-spark-2/src/test/resources/log4j2-test.properties b/paimon-spark/paimon-spark-2/src/test/resources/log4j2-test.properties
similarity index 100%
rename from flink-table-store-spark/flink-table-store-spark-2/src/test/resources/log4j2-test.properties
rename to paimon-spark/paimon-spark-2/src/test/resources/log4j2-test.properties
diff --git a/flink-table-store-spark/flink-table-store-spark-3.1/pom.xml b/paimon-spark/paimon-spark-3.1/pom.xml
similarity index 100%
rename from flink-table-store-spark/flink-table-store-spark-3.1/pom.xml
rename to paimon-spark/paimon-spark-3.1/pom.xml
diff --git a/flink-table-store-spark/flink-table-store-spark-3.2/pom.xml b/paimon-spark/paimon-spark-3.2/pom.xml
similarity index 100%
rename from flink-table-store-spark/flink-table-store-spark-3.2/pom.xml
rename to paimon-spark/paimon-spark-3.2/pom.xml
diff --git a/flink-table-store-spark/flink-table-store-spark-3.3/pom.xml b/paimon-spark/paimon-spark-3.3/pom.xml
similarity index 100%
rename from flink-table-store-spark/flink-table-store-spark-3.3/pom.xml
rename to paimon-spark/paimon-spark-3.3/pom.xml
diff --git a/flink-table-store-spark/flink-table-store-spark-common/pom.xml b/paimon-spark/paimon-spark-common/pom.xml
similarity index 100%
rename from flink-table-store-spark/flink-table-store-spark-common/pom.xml
rename to paimon-spark/paimon-spark-common/pom.xml
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkArrayData.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkArrayData.java
similarity index 97%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkArrayData.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkArrayData.java
index e46afe1e6..e9bf44923 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkArrayData.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkArrayData.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.data.InternalArray;
 import org.apache.flink.table.store.types.ArrayType;
@@ -33,9 +33,9 @@ import org.apache.spark.sql.types.Decimal;
 import org.apache.spark.unsafe.types.CalendarInterval;
 import org.apache.spark.unsafe.types.UTF8String;
 
-import static org.apache.flink.table.store.spark.SparkInternalRow.fromFlink;
 import static org.apache.flink.table.store.utils.RowDataUtils.copyArray;
 import static org.apache.flink.table.store.utils.TypeUtils.timestampPrecision;
+import static org.apache.paimon.spark.SparkInternalRow.fromFlink;
 
 /** Spark {@link ArrayData} to wrap flink {@code ArrayData}. */
 public class SparkArrayData extends ArrayData {
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkCatalog.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkCatalog.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
index ab76c8fb1..e5762dca6 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkCatalog.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.catalog.Catalog;
@@ -61,7 +61,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.spark.SparkTypeUtils.toFlinkType;
+import static org.apache.paimon.spark.SparkTypeUtils.toFlinkType;
 
 /** Spark {@link TableCatalog} for table store. */
 public class SparkCatalog implements TableCatalog, SupportsNamespaces {
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkFilterConverter.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkFilterConverter.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkFilterConverter.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkFilterConverter.java
index 155be0fd5..67c06464d 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkFilterConverter.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkFilterConverter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkInputPartition.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
similarity index 96%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkInputPartition.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
index 4f992945d..8f3c6e9a7 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkInputPartition.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkInputPartition.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.table.source.Split;
 
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkInternalRow.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkInternalRow.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkInternalRow.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkInternalRow.java
index d3da03b2a..0ed8d9185 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkInternalRow.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkInternalRow.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.InternalArray;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkReaderFactory.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkReaderFactory.java
similarity index 98%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkReaderFactory.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkReaderFactory.java
index 83f325dec..d7369012a 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkReaderFactory.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkReaderFactory.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.reader.RecordReader;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkRow.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkRow.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkRow.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkRow.java
index afa81b90d..4379fb5ca 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkRow.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkRow.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.Decimal;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkScan.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScan.java
similarity index 98%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkScan.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScan.java
index 383fc0bd6..006994ba3 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkScan.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScan.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.table.source.ReadBuilder;
 import org.apache.flink.table.store.table.source.Split;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkScanBuilder.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
similarity index 98%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkScanBuilder.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
index 0ffa77cd9..6182c6c83 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkScanBuilder.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.table.Table;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkSource.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
similarity index 98%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkSource.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
index af5bb2352..4ef360904 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkSource.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.operation.Lock;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkTable.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkTable.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
index 84bd9c274..27309f1d1 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkTable.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.flink.table.store.file.predicate.Predicate;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkTypeUtils.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTypeUtils.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkTypeUtils.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTypeUtils.java
index d4fb0a445..9e6d59cda 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkTypeUtils.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTypeUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.BigIntType;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkWrite.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWrite.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkWrite.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWrite.java
index e59a85fe5..cf37b9da7 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkWrite.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWrite.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.flink.table.store.table.Table;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkWriteBuilder.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWriteBuilder.java
similarity index 97%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkWriteBuilder.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWriteBuilder.java
index 3d4a460a6..a3c09b8f4 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SparkWriteBuilder.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkWriteBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.flink.table.store.table.Table;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SpecializedGettersReader.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SpecializedGettersReader.java
similarity index 98%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SpecializedGettersReader.java
rename to paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SpecializedGettersReader.java
index 7ed3633a5..388d10bfd 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/java/org/apache/flink/table/store/spark/SpecializedGettersReader.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SpecializedGettersReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.spark.sql.catalyst.expressions.SpecializedGetters;
 import org.apache.spark.sql.types.ArrayType;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/main/resources/META-INF/services/org.apache.spark.sql.sources.DataSourceRegister b/paimon-spark/paimon-spark-common/src/main/resources/META-INF/services/org.apache.spark.sql.sources.DataSourceRegister
similarity index 94%
rename from flink-table-store-spark/flink-table-store-spark-common/src/main/resources/META-INF/services/org.apache.spark.sql.sources.DataSourceRegister
rename to paimon-spark/paimon-spark-common/src/main/resources/META-INF/services/org.apache.spark.sql.sources.DataSourceRegister
index e0626103b..f2046daf3 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/main/resources/META-INF/services/org.apache.spark.sql.sources.DataSourceRegister
+++ b/paimon-spark/paimon-spark-common/src/main/resources/META-INF/services/org.apache.spark.sql.sources.DataSourceRegister
@@ -13,4 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.flink.table.store.spark.SparkSource
+org.apache.paimon.spark.SparkSource
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/MinioTestContainer.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/MinioTestContainer.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/MinioTestContainer.java
rename to paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/MinioTestContainer.java
index 329ad1153..253c0dd5f 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/MinioTestContainer.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/MinioTestContainer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.testutils.junit.DockerImageVersions;
 import org.apache.flink.table.store.utils.Preconditions;
diff --git a/flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkFilterConverterTest.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkFilterConverterTest.java
rename to paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
index c38d2dc73..8fca67ae8 100644
--- a/flink-table-store-spark/flink-table-store-spark-2/src/test/java/org/apache/flink/table/store/spark/SparkFilterConverterTest.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.file.predicate.Predicate;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkInternalRowTest.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkInternalRowTest.java
similarity index 97%
rename from flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkInternalRowTest.java
rename to paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkInternalRowTest.java
index f4d70d2a1..f19ff7fd6 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkInternalRowTest.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkInternalRowTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.Decimal;
@@ -42,7 +42,7 @@ import java.util.stream.Stream;
 import scala.Function1;
 
 import static org.apache.flink.table.store.data.BinaryString.fromString;
-import static org.apache.flink.table.store.spark.SparkTypeTest.ALL_TYPES;
+import static org.apache.paimon.spark.SparkTypeTest.ALL_TYPES;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link SparkInternalRow}. */
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkReadITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkReadITCase.java
rename to paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
index d830d91e2..5aa833bfc 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkReadITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.fs.Path;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkReadTestBase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkReadTestBase.java
rename to paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
index fb6dc4f5b..f5d8aebc4 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkReadTestBase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.GenericRow;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkS3ITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkS3ITCase.java
similarity index 98%
rename from flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkS3ITCase.java
rename to paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkS3ITCase.java
index 313cba740..4b3fd4798 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkS3ITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkS3ITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.testutils.junit.parameterized.ParameterizedTestExtension;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkSchemaEvolutionITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkSchemaEvolutionITCase.java
similarity index 99%
rename from flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkSchemaEvolutionITCase.java
rename to paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkSchemaEvolutionITCase.java
index 4b8f8a6f0..983544847 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkSchemaEvolutionITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkSchemaEvolutionITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.spark.sql.AnalysisException;
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkTypeTest.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkTypeTest.java
similarity index 96%
rename from flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkTypeTest.java
rename to paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkTypeTest.java
index 50ab89404..3cae8f457 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkTypeTest.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkTypeTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
@@ -26,8 +26,8 @@ import org.junit.jupiter.api.Test;
 
 import java.util.concurrent.atomic.AtomicInteger;
 
-import static org.apache.flink.table.store.spark.SparkTypeUtils.fromFlinkRowType;
-import static org.apache.flink.table.store.spark.SparkTypeUtils.toFlinkType;
+import static org.apache.paimon.spark.SparkTypeUtils.fromFlinkRowType;
+import static org.apache.paimon.spark.SparkTypeUtils.toFlinkType;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link SparkTypeUtils}. */
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkWriteITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkWriteITCase.java
similarity index 98%
rename from flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkWriteITCase.java
rename to paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkWriteITCase.java
index 0307841aa..bf36df4cf 100644
--- a/flink-table-store-spark/flink-table-store-spark-common/src/test/java/org/apache/flink/table/store/spark/SparkWriteITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkWriteITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.spark;
+package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.fs.Path;
 
diff --git a/flink-table-store-spark/flink-table-store-spark-common/src/test/resources/log4j2-test.properties b/paimon-spark/paimon-spark-common/src/test/resources/log4j2-test.properties
similarity index 100%
rename from flink-table-store-spark/flink-table-store-spark-common/src/test/resources/log4j2-test.properties
rename to paimon-spark/paimon-spark-common/src/test/resources/log4j2-test.properties
diff --git a/flink-table-store-spark/pom.xml b/paimon-spark/pom.xml
similarity index 91%
rename from flink-table-store-spark/pom.xml
rename to paimon-spark/pom.xml
index bd00d1b95..1283cab61 100644
--- a/flink-table-store-spark/pom.xml
+++ b/paimon-spark/pom.xml
@@ -38,11 +38,11 @@ under the License.
     </properties>
 
     <modules>
-        <module>flink-table-store-spark-common</module>
-        <module>flink-table-store-spark-2</module>
-        <module>flink-table-store-spark-3.3</module>
-        <module>flink-table-store-spark-3.1</module>
-        <module>flink-table-store-spark-3.2</module>
+        <module>paimon-spark-common</module>
+        <module>paimon-spark-2</module>
+        <module>paimon-spark-3.3</module>
+        <module>paimon-spark-3.1</module>
+        <module>paimon-spark-3.2</module>
     </modules>
 
     <dependencies>
diff --git a/pom.xml b/pom.xml
index 45b3d919c..fc0915605 100644
--- a/pom.xml
+++ b/pom.xml
@@ -64,7 +64,7 @@ under the License.
         <module>flink-table-store-format</module>
         <module>flink-table-store-shade</module>
         <module>flink-table-store-hive</module>
-        <module>flink-table-store-spark</module>
+        <module>paimon-spark</module>
         <module>paimon-test-utils</module>
     </modules>
 


[incubator-paimon] 11/32: [core] Rename paimon options, memory and fs

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit b436317cf355a62df456620ead62104c5d4f8c67
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 14:13:43 2023 +0800

    [core] Rename paimon options, memory and fs
---
 .../java/org/apache/flink/table/store/CoreOptions.java | 18 +++++++++---------
 .../flink/table/store/file/AbstractFileStore.java      |  2 +-
 .../flink/table/store/file/AppendOnlyFileStore.java    |  2 +-
 .../flink/table/store/file/KeyValueFileStore.java      |  2 +-
 .../org/apache/flink/table/store/file/Snapshot.java    |  4 ++--
 .../org/apache/flink/table/store/file/WriteMode.java   |  6 +++---
 .../store/file/append/AppendOnlyCompactManager.java    |  2 +-
 .../table/store/file/append/AppendOnlyWriter.java      |  2 +-
 .../table/store/file/catalog/AbstractCatalog.java      |  4 ++--
 .../flink/table/store/file/catalog/CatalogFactory.java |  8 ++++----
 .../flink/table/store/file/catalog/CatalogUtils.java   |  2 +-
 .../table/store/file/catalog/FileSystemCatalog.java    |  6 +++---
 .../store/file/catalog/FileSystemCatalogFactory.java   |  6 +++---
 .../flink/table/store/file/catalog/Identifier.java     |  2 +-
 .../flink/table/store/file/disk/BufferFileWriter.java  |  2 +-
 .../table/store/file/disk/ChannelReaderInputView.java  |  2 +-
 .../file/disk/ChannelReaderInputViewIterator.java      |  2 +-
 .../table/store/file/disk/ChannelWriterOutputView.java |  2 +-
 .../flink/table/store/file/io/DataFilePathFactory.java |  2 +-
 .../store/file/io/KeyValueDataFileRecordReader.java    |  4 ++--
 .../table/store/file/io/KeyValueDataFileWriter.java    |  4 ++--
 .../table/store/file/io/KeyValueFileReaderFactory.java |  4 ++--
 .../table/store/file/io/KeyValueFileWriterFactory.java |  4 ++--
 .../table/store/file/io/RowDataFileRecordReader.java   |  4 ++--
 .../flink/table/store/file/io/RowDataFileWriter.java   |  4 ++--
 .../table/store/file/io/RowDataRollingFileWriter.java  |  2 +-
 .../flink/table/store/file/io/SingleFileWriter.java    |  6 +++---
 .../store/file/io/StatsCollectingSingleFileWriter.java |  4 ++--
 .../file/manifest/ManifestCommittableSerializer.java   |  4 ++--
 .../flink/table/store/file/manifest/ManifestFile.java  |  4 ++--
 .../flink/table/store/file/manifest/ManifestList.java  |  6 +++---
 .../apache/flink/table/store/file/memory/Buffer.java   |  2 +-
 .../table/store/file/memory/HeapMemorySegmentPool.java |  2 +-
 .../table/store/file/memory/MemoryPoolFactory.java     |  2 +-
 .../table/store/file/memory/MemorySegmentPool.java     |  6 +++---
 .../table/store/file/mergetree/DataFileReader.java     |  4 ++--
 .../flink/table/store/file/mergetree/LookupLevels.java | 12 ++++++------
 .../compact/aggregate/AggregateMergeFunction.java      |  4 ++--
 .../store/file/operation/AbstractFileStoreScan.java    |  6 +++---
 .../store/file/operation/AppendOnlyFileStoreRead.java  |  6 +++---
 .../store/file/operation/AppendOnlyFileStoreScan.java  |  8 ++++----
 .../store/file/operation/AppendOnlyFileStoreWrite.java |  2 +-
 .../store/file/operation/FileStoreCommitImpl.java      | 10 +++++-----
 .../store/file/operation/FileStoreExpireImpl.java      |  4 ++--
 .../table/store/file/operation/FileStoreRead.java      |  2 +-
 .../table/store/file/operation/FileStoreScan.java      |  2 +-
 .../store/file/operation/KeyValueFileStoreRead.java    |  8 ++++----
 .../store/file/operation/KeyValueFileStoreScan.java    |  8 ++++----
 .../store/file/operation/KeyValueFileStoreWrite.java   |  4 ++--
 .../store/file/operation/MemoryFileStoreWrite.java     |  2 +-
 .../table/store/file/schema/SchemaEvolutionUtil.java   |  6 +++---
 .../flink/table/store/file/schema/SchemaManager.java   |  4 ++--
 .../table/store/file/schema/SchemaValidation.java      |  2 +-
 .../store/file/sort/BinaryExternalSortBuffer.java      |  2 +-
 .../store/file/sort/BinaryInMemorySortBuffer.java      |  2 +-
 .../table/store/file/sort/BinaryIndexedSortable.java   |  2 +-
 .../table/store/file/utils/BulkFormatMapping.java      |  2 +-
 .../table/store/file/utils/FileStorePathFactory.java   |  6 +++---
 .../apache/flink/table/store/file/utils/FileUtils.java |  6 +++---
 .../flink/table/store/file/utils/ObjectSerializer.java |  8 ++++----
 .../table/store/file/utils/PartitionPathUtils.java     |  2 +-
 .../table/store/file/utils/SerializationUtils.java     | 10 +++++-----
 .../flink/table/store/file/utils/SnapshotManager.java  |  4 ++--
 .../table/store/table/AbstractFileStoreTable.java      |  8 ++++----
 .../table/store/table/AppendOnlyFileStoreTable.java    |  6 +++---
 .../store/table/ChangelogValueCountFileStoreTable.java |  6 +++---
 .../store/table/ChangelogWithKeyFileStoreTable.java    | 14 +++++++-------
 .../org/apache/flink/table/store/table/DataTable.java  |  4 ++--
 .../flink/table/store/table/FileStoreTableFactory.java |  6 +++---
 .../org/apache/flink/table/store/table/TableUtils.java |  4 ++--
 .../table/store/table/sink/CommitMessageImpl.java      |  4 ++--
 .../store/table/sink/CommitMessageSerializer.java      |  8 ++++----
 .../store/table/source/AbstractDataTableScan.java      |  2 +-
 .../flink/table/store/table/source/DataSplit.java      |  8 ++++----
 .../flink/table/store/table/source/DataTableScan.java  |  2 +-
 .../flink/table/store/table/source/InnerTableRead.java |  4 ++--
 .../flink/table/store/table/source/InnerTableScan.java |  4 ++--
 .../flink/table/store/table/source/ReadBuilder.java    |  4 ++--
 .../table/store/table/source/ReadBuilderImpl.java      |  2 +-
 .../table/store/table/source/TableStreamingReader.java |  6 +++---
 .../table/source/snapshot/SnapshotSplitReader.java     |  2 +-
 .../table/source/snapshot/SnapshotSplitReaderImpl.java |  6 +++---
 .../flink/table/store/table/system/AuditLogTable.java  | 12 ++++++------
 .../flink/table/store/table/system/BucketsTable.java   |  6 +++---
 .../flink/table/store/table/system/FilesTable.java     |  2 +-
 .../flink/table/store/table/system/OptionsTable.java   |  6 +++---
 .../flink/table/store/table/system/SchemasTable.java   |  6 +++---
 .../flink/table/store/table/system/SnapshotsTable.java |  6 +++---
 .../table/store/table/system/SystemTableLoader.java    |  4 ++--
 .../file/predicate/BucketSelector.java                 |  6 +++---
 .../org/apache/flink/table/store/CoreOptionsTest.java  |  2 +-
 .../apache/flink/table/store/file/FileFormatTest.java  |  8 ++++----
 .../apache/flink/table/store/file/TestFileStore.java   | 10 +++++-----
 .../flink/table/store/file/TestKeyValueGenerator.java  |  2 +-
 .../file/append/AppendOnlyCompactManagerTest.java      |  2 +-
 .../table/store/file/append/AppendOnlyWriterTest.java  |  6 +++---
 .../store/file/append/IterativeCompactTaskTest.java    |  2 +-
 .../table/store/file/catalog/CatalogFactoryTest.java   | 10 +++++-----
 .../store/file/disk/BufferFileWriterReaderTest.java    |  2 +-
 .../table/store/file/format/FileFormatSuffixTest.java  |  6 +++---
 .../file/format/FileStatsExtractingAvroFormat.java     |  4 ++--
 .../format/FileStatsExtractingAvroFormatFactory.java   |  2 +-
 .../table/store/file/format/FlushingFileFormat.java    |  4 ++--
 .../table/store/file/io/DataFilePathFactoryTest.java   |  2 +-
 .../table/store/file/io/KeyValueFileReadWriteTest.java | 10 +++++-----
 .../table/store/file/io/RollingFileWriterTest.java     |  6 +++---
 .../store/file/manifest/ManifestFileMetaTest.java      | 10 +++++-----
 .../table/store/file/manifest/ManifestFileTest.java    | 10 +++++-----
 .../table/store/file/manifest/ManifestListTest.java    |  8 ++++----
 .../table/store/file/mergetree/LookupLevelsTest.java   | 10 +++++-----
 .../table/store/file/mergetree/MergeTreeTest.java      | 10 +++++-----
 .../file/operation/CleanedFileStoreExpireTest.java     |  4 ++--
 .../store/file/operation/FileStoreCommitTest.java      |  4 ++--
 .../store/file/operation/FileStoreExpireTestBase.java  |  6 +++---
 .../file/operation/KeyValueFileStoreReadTest.java      |  4 ++--
 .../file/operation/KeyValueFileStoreScanTest.java      |  6 +++---
 .../store/file/operation/PartitionExpireTest.java      |  4 ++--
 .../file/operation/UncleanedFileStoreExpireTest.java   |  2 +-
 .../store/file/schema/SchemaEvolutionUtilTest.java     | 10 +++++-----
 .../table/store/file/schema/SchemaManagerTest.java     |  6 +++---
 .../store/file/sort/IntNormalizedKeyComputer.java      |  2 +-
 .../table/store/file/stats/TestFileStatsExtractor.java |  4 ++--
 .../flink/table/store/file/utils/FailingFileIO.java    | 18 +++++++++---------
 .../store/file/utils/FileStorePathFactoryTest.java     |  2 +-
 .../store/file/utils/ObjectSerializerTestBase.java     |  4 ++--
 .../table/store/file/utils/SnapshotManagerTest.java    |  4 ++--
 .../flink/table/store/file/utils/TraceableFileIO.java  | 18 +++++++++---------
 .../table/store/table/AppendOnlyFileDataTableTest.java |  2 +-
 .../store/table/AppendOnlyFileStoreTableTest.java      |  8 ++++----
 .../table/ChangelogValueCountFileStoreTableTest.java   | 10 +++++-----
 .../table/ChangelogWithKeyColumnTypeFileDataTest.java  |  4 ++--
 .../store/table/ChangelogWithKeyFileDataTableTest.java |  2 +-
 .../table/ChangelogWithKeyFileMetaFilterTest.java      |  4 ++--
 .../table/ChangelogWithKeyFileStoreTableTest.java      |  8 ++++----
 .../ChangelogWithKeyTableColumnTypeFileMetaTest.java   |  4 ++--
 .../table/store/table/ColumnTypeFileDataTestBase.java  |  4 ++--
 .../table/store/table/ColumnTypeFileMetaTestBase.java  |  4 ++--
 .../table/store/table/FileDataFilterTestBase.java      | 10 +++++-----
 .../table/store/table/FileMetaFilterTestBase.java      |  4 ++--
 .../table/store/table/FileStoreTableTestBase.java      |  8 ++++----
 .../store/table/SchemaEvolutionTableTestBase.java      |  8 ++++----
 .../flink/table/store/table/SchemaEvolutionTest.java   |  8 ++++----
 .../table/store/table/WritePreemptMemoryTest.java      |  6 +++---
 .../flink/table/store/table/sink/TableWriteTest.java   |  8 ++++----
 .../flink/table/store/table/source/SplitTest.java      |  4 ++--
 .../store/table/source/StreamDataTableScanTest.java    |  2 +-
 .../CompactionChangelogFollowUpScannerTest.java        |  2 +-
 .../snapshot/InputChangelogFollowUpScannerTest.java    |  2 +-
 .../store/table/source/snapshot/ScannerTestBase.java   |  8 ++++----
 .../file/predicate/BucketSelectorTest.java             |  6 +++---
 .../file/predicate/PredicateBuilderTest.java           |  2 +-
 .../store => paimon}/file/predicate/PredicateTest.java |  2 +-
 ...link.table.store.org.apache.paimon.fs.FileIOLoader} |  0
 .../org/apache/paimon/benchmark/TableBenchmark.java    |  4 ++--
 .../apache/paimon/benchmark/TableWriterBenchmark.java  |  2 +-
 .../org/apache/flink/table/store/table/TableType.java  |  6 +++---
 .../flink/table/store/utils/BinaryRowDataUtil.java     |  2 +-
 .../org/apache/flink/table/store/utils/Filter.java     |  2 +-
 .../apache/flink/table/store/utils/HadoopUtils.java    |  2 +-
 .../flink/table/store/utils/MurmurHashUtils.java       |  6 +++---
 .../org/apache/flink/table/store/utils/SortUtil.java   |  4 ++--
 .../apache/flink/table/store/utils/StringUtils.java    |  2 +-
 .../org/apache/paimon/annotation/Documentation.java    |  2 +-
 .../java/org/apache/paimon/catalog/CatalogContext.java | 12 ++++++------
 .../java/org/apache/paimon/codegen/GenerateUtils.scala |  2 +-
 .../apache/paimon/codegen/NormalizedKeyComputer.java   |  2 +-
 .../org/apache/paimon/data/AbstractBinaryWriter.java   |  4 ++--
 .../org/apache/paimon/data/AbstractPagedInputView.java |  4 ++--
 .../apache/paimon/data/AbstractPagedOutputView.java    |  8 ++++----
 .../main/java/org/apache/paimon/data/BinaryArray.java  |  6 +++---
 .../java/org/apache/paimon/data/BinaryArrayWriter.java |  4 ++--
 .../main/java/org/apache/paimon/data/BinaryMap.java    |  4 ++--
 .../main/java/org/apache/paimon/data/BinaryRow.java    |  4 ++--
 .../java/org/apache/paimon/data/BinaryRowWriter.java   |  4 ++--
 .../java/org/apache/paimon/data/BinarySection.java     |  4 ++--
 .../main/java/org/apache/paimon/data/BinaryString.java |  8 ++++----
 .../main/java/org/apache/paimon/data/NestedRow.java    |  4 ++--
 .../org/apache/paimon/data/RandomAccessInputView.java  |  4 ++--
 .../org/apache/paimon/data/RandomAccessOutputView.java |  2 +-
 .../apache/paimon/data/SimpleCollectingOutputView.java |  4 ++--
 .../paimon/data/columnar/heap/AbstractHeapVector.java  |  2 +-
 .../paimon/data/serializer/BinaryRowSerializer.java    | 10 +++++-----
 .../paimon/data/serializer/BinarySerializer.java       |  4 ++--
 .../paimon/data/serializer/BinaryStringSerializer.java |  6 +++---
 .../paimon/data/serializer/BooleanSerializer.java      |  4 ++--
 .../apache/paimon/data/serializer/ByteSerializer.java  |  4 ++--
 .../paimon/data/serializer/DecimalSerializer.java      |  4 ++--
 .../paimon/data/serializer/DoubleSerializer.java       |  4 ++--
 .../apache/paimon/data/serializer/FloatSerializer.java |  4 ++--
 .../apache/paimon/data/serializer/IntSerializer.java   |  4 ++--
 .../data/serializer/InternalArraySerializer.java       |  8 ++++----
 .../paimon/data/serializer/InternalMapSerializer.java  |  8 ++++----
 .../paimon/data/serializer/InternalRowSerializer.java  |  4 ++--
 .../apache/paimon/data/serializer/ListSerializer.java  |  4 ++--
 .../apache/paimon/data/serializer/LongSerializer.java  |  4 ++--
 .../paimon/data/serializer/NullableSerializer.java     |  8 ++++----
 .../paimon/data/serializer/RowCompactedSerializer.java | 10 +++++-----
 .../org/apache/paimon/data/serializer/Serializer.java  |  4 ++--
 .../apache/paimon/data/serializer/ShortSerializer.java |  4 ++--
 .../paimon/data/serializer/TimestampSerializer.java    |  4 ++--
 .../table/store => paimon}/file/predicate/And.java     |  2 +-
 .../store => paimon}/file/predicate/CompareUtils.java  |  2 +-
 .../file/predicate/CompoundPredicate.java              |  2 +-
 .../table/store => paimon}/file/predicate/Equal.java   |  4 ++--
 .../store => paimon}/file/predicate/FieldRef.java      |  2 +-
 .../file/predicate/FunctionVisitor.java                |  2 +-
 .../file/predicate/GreaterOrEqual.java                 |  4 ++--
 .../store => paimon}/file/predicate/GreaterThan.java   |  4 ++--
 .../table/store => paimon}/file/predicate/In.java      |  4 ++--
 .../store => paimon}/file/predicate/IsNotNull.java     |  2 +-
 .../table/store => paimon}/file/predicate/IsNull.java  |  2 +-
 .../store => paimon}/file/predicate/LeafFunction.java  |  2 +-
 .../store => paimon}/file/predicate/LeafPredicate.java |  6 +++---
 .../file/predicate/LeafUnaryFunction.java              |  2 +-
 .../store => paimon}/file/predicate/LessOrEqual.java   |  4 ++--
 .../store => paimon}/file/predicate/LessThan.java      |  4 ++--
 .../store => paimon}/file/predicate/NotEqual.java      |  4 ++--
 .../table/store => paimon}/file/predicate/NotIn.java   |  4 ++--
 .../file/predicate/NullFalseLeafBinaryFunction.java    |  2 +-
 .../table/store => paimon}/file/predicate/Or.java      |  2 +-
 .../store => paimon}/file/predicate/Predicate.java     |  2 +-
 .../file/predicate/PredicateBuilder.java               |  2 +-
 .../file/predicate/PredicateFilter.java                |  2 +-
 .../file/predicate/PredicateReplaceVisitor.java        |  2 +-
 .../file/predicate/PredicateVisitor.java               |  2 +-
 .../store => paimon}/file/predicate/StartsWith.java    |  2 +-
 .../main/java/org/apache/paimon/format/FileFormat.java |  6 +++---
 .../org/apache/paimon/format/FileFormatFactory.java    |  2 +-
 .../org/apache/paimon/format/FileStatsExtractor.java   |  4 ++--
 .../org/apache/paimon/format/FormatReaderFactory.java  |  4 ++--
 .../org/apache/paimon/format/FormatWriterFactory.java  |  2 +-
 .../{flink/table/store => paimon}/fs/FileIO.java       |  4 ++--
 .../{flink/table/store => paimon}/fs/FileIOLoader.java |  2 +-
 .../{flink/table/store => paimon}/fs/FileStatus.java   |  2 +-
 .../apache/{flink/table/store => paimon}/fs/Path.java  |  2 +-
 .../{flink/table/store => paimon}/fs/PluginFileIO.java |  4 ++--
 .../store => paimon}/fs/PositionOutputStream.java      |  2 +-
 .../fs/PositionOutputStreamWrapper.java                |  2 +-
 .../table/store => paimon}/fs/SeekableInputStream.java |  2 +-
 .../fs/SeekableInputStreamWrapper.java                 |  2 +-
 .../fs/UnsupportedSchemeException.java                 |  2 +-
 .../table/store => paimon}/fs/hadoop/HadoopFileIO.java | 14 +++++++-------
 .../store => paimon}/fs/hadoop/HadoopFileIOLoader.java |  6 +++---
 .../table/store => paimon}/fs/local/LocalFileIO.java   | 14 +++++++-------
 .../store => paimon}/fs/local/LocalFileIOLoader.java   |  6 +++---
 .../hadoop/SerializableConfiguration.java              |  2 +-
 .../store => paimon}/io/DataInputDeserializer.java     |  4 ++--
 .../table/store => paimon}/io/DataInputView.java       |  4 ++--
 .../table/store => paimon}/io/DataInputViewStream.java |  2 +-
 .../io/DataInputViewStreamWrapper.java                 |  2 +-
 .../store => paimon}/io/DataOutputSerializer.java      |  8 ++++----
 .../table/store => paimon}/io/DataOutputView.java      |  4 ++--
 .../store => paimon}/io/DataOutputViewStream.java      |  2 +-
 .../io/DataOutputViewStreamWrapper.java                |  2 +-
 .../store => paimon}/io/SeekableDataInputView.java     |  2 +-
 .../table/store => paimon}/io/cache/CacheManager.java  |  6 +++---
 .../io/cache/CachedRandomInputView.java                |  6 +++---
 .../store => paimon}/lookup/LookupStoreFactory.java    |  2 +-
 .../store => paimon}/lookup/LookupStoreReader.java     |  2 +-
 .../store => paimon}/lookup/LookupStoreWriter.java     |  2 +-
 .../lookup/hash/HashLookupStoreFactory.java            |  6 +++---
 .../lookup/hash/HashLookupStoreReader.java             |  8 ++++----
 .../lookup/hash/HashLookupStoreWriter.java             |  4 ++--
 .../table/store => paimon}/memory/MemorySegment.java   |  4 ++--
 .../store => paimon}/memory/MemorySegmentSource.java   |  2 +-
 .../store => paimon}/memory/MemorySegmentUtils.java    |  8 ++++----
 .../store => paimon}/memory/MemorySegmentWritable.java |  2 +-
 .../table/store => paimon}/memory/MemoryUtils.java     |  2 +-
 .../table/store => paimon}/options/CatalogOptions.java |  4 ++--
 .../table/store => paimon}/options/ConfigOption.java   |  4 ++--
 .../table/store => paimon}/options/ConfigOptions.java  |  4 ++--
 .../table/store => paimon}/options/FallbackKey.java    |  2 +-
 .../table/store => paimon}/options/MemorySize.java     | 14 +++++++-------
 .../{flink/table/store => paimon}/options/Options.java | 10 +++++-----
 .../table/store => paimon}/options/OptionsUtils.java   |  4 ++--
 .../options/StructuredOptionsSplitter.java             |  2 +-
 .../options/description/BlockElement.java              |  2 +-
 .../options/description/DescribedEnum.java             |  4 ++--
 .../options/description/Description.java               |  4 ++--
 .../options/description/DescriptionElement.java        |  2 +-
 .../options/description/Formatter.java                 |  2 +-
 .../options/description/HtmlFormatter.java             |  2 +-
 .../options/description/InlineElement.java             |  2 +-
 .../options/description/LineBreakElement.java          |  2 +-
 .../options/description/LinkElement.java               |  2 +-
 .../options/description/ListElement.java               |  2 +-
 .../options/description/TextElement.java               |  2 +-
 ...link.table.store.org.apache.paimon.fs.FileIOLoader} |  4 ++--
 .../flink/table/store/datagen/DataGenVisitorBase.java  |  2 +-
 .../table/store/datagen/DataGeneratorContainer.java    |  2 +-
 .../table/store/datagen/RandomGeneratorVisitor.java    |  8 ++++----
 .../flink/table/store/utils/RowDataUtilsTest.java      |  2 +-
 .../java/org/apache/paimon/data/BinaryRowTest.java     |  2 +-
 .../java/org/apache/paimon/data/BinaryStringTest.java  |  2 +-
 .../org/apache/paimon/data/DataFormatTestUtil.java     |  2 +-
 .../java/org/apache/paimon/data/NestedRowTest.java     |  2 +-
 .../data/serializer/InternalArraySerializerTest.java   |  2 +-
 .../paimon/data/serializer/SerializerTestBase.java     |  8 ++++----
 .../paimon/format/FileStatsExtractorTestBase.java      |  8 ++++----
 .../store => paimon}/fs/FileIOBehaviorTestBase.java    |  2 +-
 .../{flink/table/store => paimon}/fs/FileIOFinder.java |  4 ++--
 .../store => paimon}/fs/HadoopConfigLoadingTest.java   |  4 ++--
 .../fs/HadoopLocalFileIOBehaviorTest.java              |  4 ++--
 .../table/store => paimon}/fs/HdfsBehaviorTest.java    |  4 ++--
 .../store => paimon}/fs/LocalFileIOBehaviorTest.java   |  4 ++--
 .../io/cache/CachedRandomInputViewTest.java            |  6 +++---
 .../lookup/hash/HashLookupStoreFactoryTest.java        |  8 ++++----
 .../store => paimon}/memory/MemorySegmentTestBase.java |  2 +-
 .../memory/OffHeapDirectMemorySegmentTest.java         |  2 +-
 .../memory/OnHeapMemorySegmentTest.java                |  2 +-
 .../docs/configuration/ConfigOptionsDocGenerator.java  | 18 +++++++++---------
 .../docs/configuration/OptionsClassLocation.java       |  2 +-
 .../configuration/ConfigOptionsDocGeneratorTest.java   | 16 ++++++++--------
 .../ConfigOptionsDocsCompletenessITCase.java           |  2 +-
 .../docs/configuration/data/TestCommonOptions.java     |  4 ++--
 .../src/main/java/org/apache/paimon/oss/OSSFileIO.java |  2 +-
 .../src/main/java/org/apache/paimon/s3/S3FileIO.java   |  2 +-
 .../paimon/connector/AbstractTableStoreFactory.java    |  2 +-
 .../paimon/connector/BinaryRowTypeSerializer.java      |  2 +-
 .../apache/paimon/connector/FlinkCatalogFactory.java   |  4 ++--
 .../apache/paimon/connector/FlinkConnectorOptions.java | 10 +++++-----
 .../java/org/apache/paimon/connector/FlinkUtils.java   |  2 +-
 .../apache/paimon/connector/PredicateConverter.java    |  4 ++--
 .../org/apache/paimon/connector/RocksDBOptions.java    | 14 +++++++-------
 .../paimon/connector/TableStoreConnectorFactory.java   |  2 +-
 .../org/apache/paimon/connector/action/ActionBase.java |  4 ++--
 .../apache/paimon/connector/action/CompactAction.java  |  2 +-
 .../apache/paimon/connector/kafka/KafkaLogOptions.java |  4 ++--
 .../paimon/connector/kafka/KafkaLogStoreFactory.java   |  2 +-
 .../connector/lookup/FileStoreLookupFunction.java      |  8 ++++----
 .../apache/paimon/connector/lookup/RocksDBState.java   |  4 ++--
 .../paimon/connector/lookup/RocksDBStateFactory.java   |  2 +-
 .../org/apache/paimon/connector/sink/FlinkSink.java    |  2 +-
 .../apache/paimon/connector/sink/TableStoreSink.java   |  2 +-
 .../connector/source/CompactorSourceBuilder.java       |  4 ++--
 .../connector/source/ContinuousFileStoreSource.java    |  2 +-
 .../paimon/connector/source/FlinkSourceBuilder.java    |  4 ++--
 .../paimon/connector/source/FlinkTableSource.java      |  4 ++--
 .../paimon/connector/source/StaticFileStoreSource.java |  2 +-
 .../paimon/connector/source/SystemTableSource.java     |  2 +-
 .../paimon/connector/source/TableStoreSource.java      |  4 ++--
 .../org/apache/paimon/connector/ChangelogModeTest.java |  2 +-
 .../org/apache/paimon/connector/FileStoreITCase.java   |  2 +-
 .../org/apache/paimon/connector/FlinkCatalogTest.java  |  2 +-
 .../apache/paimon/connector/ForceCompactionITCase.java |  2 +-
 .../paimon/connector/PredicateConverterTest.java       |  4 ++--
 .../paimon/connector/lookup/LookupTableTest.java       |  2 +-
 .../connector/sink/CommitterOperatorTestBase.java      |  2 +-
 .../connector/source/TestChangelogDataReadWrite.java   |  4 ++--
 .../org/apache/paimon/format/avro/AvroFileFormat.java  |  8 ++++----
 .../paimon/format/avro/AvroFileFormatFactory.java      |  2 +-
 .../org/apache/paimon/format/orc/OrcFileFormat.java    |  4 ++--
 .../apache/paimon/format/orc/OrcFileFormatFactory.java |  2 +-
 .../format/orc/SerializableHadoopConfigWrapper.java    |  4 ++--
 .../format/orc/filter/OrcPredicateFunctionVisitor.java |  6 +++---
 .../paimon/format/parquet/ParquetFileFormat.java       |  4 ++--
 .../format/parquet/ParquetFileFormatFactory.java       |  2 +-
 .../paimon/format/parquet/ParquetReaderFactory.java    |  2 +-
 .../format/parquet/writer/RowDataParquetBuilder.java   |  2 +-
 .../org/apache/paimon/format/BulkFileFormatTest.java   |  2 +-
 .../apache/paimon/format/orc/OrcFileFormatTest.java    |  2 +-
 .../paimon/format/orc/OrcFileStatsExtractorTest.java   |  2 +-
 .../paimon/format/orc/OrcFilterConverterTest.java      |  4 ++--
 .../paimon/format/parquet/ParquetFileFormatTest.java   |  6 +++---
 .../format/parquet/ParquetFileStatsExtractorTest.java  |  2 +-
 .../paimon/format/parquet/ParquetReadWriteTest.java    |  2 +-
 .../main/java/org/apache/paimon/hive/HiveCatalog.java  |  6 +++---
 .../org/apache/paimon/hive/HiveCatalogFactory.java     |  6 +++---
 .../java/org/apache/paimon/hive/HiveCatalogLock.java   |  4 ++--
 .../org/apache/paimon/hive/SerializableHiveConf.java   |  4 ++--
 .../main/java/org/apache/paimon/hive/HiveSchema.java   |  2 +-
 .../hive/SearchArgumentToPredicateConverter.java       |  6 +++---
 .../java/org/apache/paimon/hive/TableStoreJobConf.java |  2 +-
 .../paimon/hive/mapred/TableStoreInputFormat.java      |  4 ++--
 .../paimon/hive/mapred/TableStoreInputSplit.java       |  4 ++--
 .../org/apache/paimon/hive/FileStoreTestUtils.java     |  2 +-
 .../hive/SearchArgumentToPredicateConverterTest.java   |  4 ++--
 .../hive/TableStoreHiveStorageHandlerITCase.java       |  2 +-
 .../paimon/hive/mapred/TableStoreRecordReaderTest.java |  2 +-
 .../org/apache/paimon/spark/SparkDataSourceReader.java |  2 +-
 .../main/java/org/apache/paimon/spark/SparkSource.java |  2 +-
 .../org/apache/paimon/spark/SimpleTableTestHelper.java |  2 +-
 .../apache/paimon/spark/SparkFilterConverterTest.java  |  4 ++--
 .../java/org/apache/paimon/spark/SparkCatalog.java     |  2 +-
 .../org/apache/paimon/spark/SparkFilterConverter.java  |  6 +++---
 .../java/org/apache/paimon/spark/SparkScanBuilder.java |  2 +-
 .../main/java/org/apache/paimon/spark/SparkSource.java |  2 +-
 .../main/java/org/apache/paimon/spark/SparkTable.java  |  2 +-
 .../apache/paimon/spark/SparkFilterConverterTest.java  |  4 ++--
 389 files changed, 840 insertions(+), 840 deletions(-)

diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
index 2c305a2db..50821f30e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
@@ -19,13 +19,13 @@
 package org.apache.flink.table.store;
 
 import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.MemorySize;
-import org.apache.flink.table.store.options.Options;
-import org.apache.flink.table.store.options.description.DescribedEnum;
-import org.apache.flink.table.store.options.description.Description;
-import org.apache.flink.table.store.options.description.InlineElement;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.MemorySize;
+import org.apache.paimon.options.Options;
+import org.apache.paimon.options.description.DescribedEnum;
+import org.apache.paimon.options.description.Description;
+import org.apache.paimon.options.description.InlineElement;
 
 import org.apache.paimon.annotation.Documentation.ExcludeFromDocumentation;
 import org.apache.paimon.annotation.Documentation.Immutable;
@@ -43,8 +43,8 @@ import java.util.Optional;
 import java.util.Set;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.options.ConfigOptions.key;
-import static org.apache.flink.table.store.options.description.TextElement.text;
+import static org.apache.paimon.options.ConfigOptions.key;
+import static org.apache.paimon.options.description.TextElement.text;
 
 /** Core options for table store. */
 public class CoreOptions implements Serializable {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java
index 037a3bbf1..fec802ed0 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AbstractFileStore.java
@@ -27,7 +27,7 @@ import org.apache.flink.table.store.file.operation.PartitionExpire;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.FileIO;
+import org.apache.paimon.fs.FileIO;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.annotation.VisibleForTesting;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
index 5a25a8eef..d144c4c4f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/AppendOnlyFileStore.java
@@ -23,7 +23,7 @@ import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreRead;
 import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreScan;
 import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreWrite;
 import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.fs.FileIO;
+import org.apache.paimon.fs.FileIO;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
index e3f17a5d4..2a3090739 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/KeyValueFileStore.java
@@ -26,7 +26,7 @@ import org.apache.flink.table.store.file.operation.KeyValueFileStoreWrite;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.KeyComparatorSupplier;
-import org.apache.flink.table.store.fs.FileIO;
+import org.apache.paimon.fs.FileIO;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/Snapshot.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/Snapshot.java
index 605352f0a..b1f98bf60 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/Snapshot.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/Snapshot.java
@@ -23,8 +23,8 @@ import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
 import org.apache.flink.table.store.file.manifest.ManifestList;
 import org.apache.flink.table.store.file.operation.FileStoreScan;
 import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonCreator;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonGetter;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/WriteMode.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/WriteMode.java
index dfbc7df8e..842de7ba1 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/WriteMode.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/WriteMode.java
@@ -18,10 +18,10 @@
 
 package org.apache.flink.table.store.file;
 
-import org.apache.flink.table.store.options.description.DescribedEnum;
-import org.apache.flink.table.store.options.description.InlineElement;
+import org.apache.paimon.options.description.DescribedEnum;
+import org.apache.paimon.options.description.InlineElement;
 
-import static org.apache.flink.table.store.options.description.TextElement.text;
+import static org.apache.paimon.options.description.TextElement.text;
 
 /** Defines the write mode for flink table store. */
 public enum WriteMode implements DescribedEnum {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java
index 61a66186f..b30ed176e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManager.java
@@ -23,7 +23,7 @@ import org.apache.flink.table.store.file.compact.CompactResult;
 import org.apache.flink.table.store.file.compact.CompactTask;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
-import org.apache.flink.table.store.fs.FileIO;
+import org.apache.paimon.fs.FileIO;
 import org.apache.flink.table.store.utils.Preconditions;
 
 import org.apache.paimon.annotation.VisibleForTesting;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
index 470b9ba6f..444906215 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/append/AppendOnlyWriter.java
@@ -27,7 +27,7 @@ import org.apache.flink.table.store.file.io.NewFilesIncrement;
 import org.apache.flink.table.store.file.io.RowDataRollingFileWriter;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.fs.FileIO;
+import org.apache.paimon.fs.FileIO;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java
index 990b1990b..864606a4b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/AbstractCatalog.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.file.catalog;
 
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
 import org.apache.flink.table.store.table.Table;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java
index 1b9147a6e..b4d27c2ee 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogFactory.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.file.catalog;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.utils.Preconditions;
 
 import org.apache.paimon.annotation.Experimental;
@@ -32,8 +32,8 @@ import java.util.List;
 import java.util.ServiceLoader;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.options.CatalogOptions.METASTORE;
-import static org.apache.flink.table.store.options.CatalogOptions.WAREHOUSE;
+import static org.apache.paimon.options.CatalogOptions.METASTORE;
+import static org.apache.paimon.options.CatalogOptions.WAREHOUSE;
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
 
 /**
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogUtils.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogUtils.java
index e2e3e5b8a..576625806 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/CatalogUtils.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.catalog;
 
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.Path;
 
 /** Utils for {@link Catalog}. */
 public class CatalogUtils {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalog.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalog.java
index 57b1a916d..bef1c5e9a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalog.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalog.java
@@ -22,9 +22,9 @@ import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaChange;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileStatus;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalogFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalogFactory.java
index 9c92a59d8..5b56f5744 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalogFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/FileSystemCatalogFactory.java
@@ -19,11 +19,11 @@
 package org.apache.flink.table.store.file.catalog;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.table.TableType;
 
-import static org.apache.flink.table.store.options.CatalogOptions.TABLE_TYPE;
+import static org.apache.paimon.options.CatalogOptions.TABLE_TYPE;
 
 /** Factory to create {@link FileSystemCatalog}. */
 public class FileSystemCatalogFactory implements CatalogFactory {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java
index 45c053c04..25491a41e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/catalog/Identifier.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.catalog;
 
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.utils.StringUtils;
 
 import org.apache.paimon.annotation.Experimental;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriter.java
index d938e3ac8..d58057a4b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/BufferFileWriter.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.disk;
 
 import org.apache.flink.table.store.file.memory.Buffer;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputView.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputView.java
index 9005bda1d..bbc572ba8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputView.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputView.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.disk;
 import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
 import org.apache.flink.table.store.file.compression.BlockDecompressor;
 import org.apache.flink.table.store.file.memory.Buffer;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.AbstractPagedInputView;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputViewIterator.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputViewIterator.java
index 7b6ede392..0e9c46b10 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputViewIterator.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelReaderInputViewIterator.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.disk;
 
 import org.apache.flink.table.store.file.utils.MutableObjectIterator;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWriterOutputView.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWriterOutputView.java
index e99d7f64c..27748179f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWriterOutputView.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/disk/ChannelWriterOutputView.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.disk;
 import org.apache.flink.table.store.file.compression.BlockCompressionFactory;
 import org.apache.flink.table.store.file.compression.BlockCompressor;
 import org.apache.flink.table.store.file.memory.Buffer;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.AbstractPagedOutputView;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFilePathFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFilePathFactory.java
index 80823f5b8..017c0287d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFilePathFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/DataFilePathFactory.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.Path;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
index 4df926b72..e0d54f8ca 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileRecordReader.java
@@ -22,8 +22,8 @@ import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.KeyValueSerializer;
 import org.apache.flink.table.store.file.casting.CastFieldGetter;
 import org.apache.flink.table.store.file.utils.FileUtils;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.RowType;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
index 1d8b33662..b9c5c21df 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueDataFileWriter.java
@@ -21,8 +21,8 @@ package org.apache.flink.table.store.file.io;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
index 54372e74f..5c2cd0965 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileReaderFactory.java
@@ -19,13 +19,13 @@
 package org.apache.flink.table.store.file.io;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.BulkFormatMapping;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.fs.FileIO;
+import org.apache.paimon.fs.FileIO;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Projection;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
index e30a7718d..b4d4b8657 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/KeyValueFileWriterFactory.java
@@ -21,8 +21,8 @@ package org.apache.flink.table.store.file.io;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.KeyValueSerializer;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.annotation.VisibleForTesting;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
index ef21007bb..f8489075e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileRecordReader.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.file.io;
 
 import org.apache.flink.table.store.file.casting.CastFieldGetter;
 import org.apache.flink.table.store.file.utils.FileUtils;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
index c74a3e25e..f3c16ddcb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataFileWriter.java
@@ -21,8 +21,8 @@ package org.apache.flink.table.store.file.io;
 
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
index 289d52fb8..393f3366b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/RowDataRollingFileWriter.java
@@ -19,7 +19,7 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.fs.FileIO;
+import org.apache.paimon.fs.FileIO;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.LongCounter;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
index f81168880..74cba78ac 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/SingleFileWriter.java
@@ -19,9 +19,9 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PositionOutputStream;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
 import org.apache.flink.table.store.utils.IOUtils;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
index 34887cc43..88e87ce02 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/io/StatsCollectingSingleFileWriter.java
@@ -19,8 +19,8 @@
 
 package org.apache.flink.table.store.file.io;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Preconditions;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java
index 311d29518..40bcbd6c2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestCommittableSerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.file.manifest;
 
-import org.apache.flink.table.store.io.DataInputDeserializer;
-import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
+import org.apache.paimon.io.DataInputDeserializer;
+import org.apache.paimon.io.DataOutputViewStreamWrapper;
 import org.apache.flink.table.store.table.sink.CommitMessage;
 import org.apache.flink.table.store.table.sink.CommitMessageSerializer;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
index b307a3c01..93fd0238b 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestFile.java
@@ -25,8 +25,8 @@ import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.flink.table.store.file.utils.VersionedObjectSerializer;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.annotation.VisibleForTesting;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java
index 4ccf895c6..87ff1c413 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/manifest/ManifestList.java
@@ -21,9 +21,9 @@ package org.apache.flink.table.store.file.manifest;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.flink.table.store.file.utils.VersionedObjectSerializer;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PositionOutputStream;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.format.FileFormat;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/Buffer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/Buffer.java
index 1e05d3db0..5bfc0ca7f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/Buffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/Buffer.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.memory;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/HeapMemorySegmentPool.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/HeapMemorySegmentPool.java
index 2af614243..5b182d30c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/HeapMemorySegmentPool.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/HeapMemorySegmentPool.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.memory;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.util.LinkedList;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemoryPoolFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemoryPoolFactory.java
index fe381c04a..64af5c81d 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemoryPoolFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemoryPoolFactory.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.memory;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemorySegmentPool.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemorySegmentPool.java
index 30ddee32c..3779ced42 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemorySegmentPool.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/memory/MemorySegmentPool.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.file.memory;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentSource;
-import org.apache.flink.table.store.options.MemorySize;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentSource;
+import org.apache.paimon.options.MemorySize;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DataFileReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DataFileReader.java
index c7b53d26c..3ce2a2114 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DataFileReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/DataFileReader.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.file.mergetree;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.lookup.LookupStoreReader;
-import org.apache.flink.table.store.options.MemorySize;
+import org.apache.paimon.lookup.LookupStoreReader;
+import org.apache.paimon.options.MemorySize;
 import org.apache.flink.table.store.utils.FileIOUtils;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java
index f92e75a85..14bd06b52 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/LookupLevels.java
@@ -20,12 +20,12 @@ package org.apache.flink.table.store.file.mergetree;
 
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.io.DataOutputSerializer;
-import org.apache.flink.table.store.lookup.LookupStoreFactory;
-import org.apache.flink.table.store.lookup.LookupStoreReader;
-import org.apache.flink.table.store.lookup.LookupStoreWriter;
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.options.MemorySize;
+import org.apache.paimon.io.DataOutputSerializer;
+import org.apache.paimon.lookup.LookupStoreFactory;
+import org.apache.paimon.lookup.LookupStoreReader;
+import org.apache.paimon.lookup.LookupStoreWriter;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.options.MemorySize;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java
index 9f583b543..3e4be4deb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/mergetree/compact/aggregate/AggregateMergeFunction.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.mergetree.compact.aggregate;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunction;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionFactory;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.utils.Projection;
@@ -33,7 +33,7 @@ import javax.annotation.Nullable;
 
 import java.util.List;
 
-import static org.apache.flink.table.store.options.ConfigOptions.key;
+import static org.apache.paimon.options.ConfigOptions.key;
 import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
 import static org.apache.flink.table.store.utils.RowDataUtils.createFieldGetters;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java
index 87dcf66fc..2a53bc686 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AbstractFileStoreScan.java
@@ -23,9 +23,9 @@ import org.apache.flink.table.store.file.manifest.ManifestEntry;
 import org.apache.flink.table.store.file.manifest.ManifestFile;
 import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
 import org.apache.flink.table.store.file.manifest.ManifestList;
-import org.apache.flink.table.store.file.predicate.BucketSelector;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.BucketSelector;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
index 77c7ddc0e..65ec86e80 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreRead.java
@@ -22,14 +22,14 @@ import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.flink.table.store.file.io.RowDataFileRecordReader;
 import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.IndexCastMapping;
 import org.apache.flink.table.store.file.schema.SchemaEvolutionUtil;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.BulkFormatMapping;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.fs.FileIO;
+import org.apache.paimon.fs.FileIO;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.types.RowType;
@@ -47,7 +47,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.splitAnd;
+import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
 
 /** {@link FileStoreRead} for {@link org.apache.flink.table.store.file.AppendOnlyFileStore}. */
 public class AppendOnlyFileStoreRead implements FileStoreRead<InternalRow> {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreScan.java
index c8b578224..3a55fa2db 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreScan.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.operation;
 import org.apache.flink.table.store.file.manifest.ManifestEntry;
 import org.apache.flink.table.store.file.manifest.ManifestFile;
 import org.apache.flink.table.store.file.manifest.ManifestList;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.stats.FieldStatsConverters;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
@@ -29,9 +29,9 @@ import org.apache.flink.table.store.types.RowType;
 
 import java.util.List;
 
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.and;
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.pickTransformFieldMapping;
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.splitAnd;
+import static org.apache.paimon.file.predicate.PredicateBuilder.and;
+import static org.apache.paimon.file.predicate.PredicateBuilder.pickTransformFieldMapping;
+import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
 
 /** {@link FileStoreScan} for {@link org.apache.flink.table.store.file.AppendOnlyFileStore}. */
 public class AppendOnlyFileStoreScan extends AbstractFileStoreScan {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
index 7de5c9bea..2d4c66fac 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/AppendOnlyFileStoreWrite.java
@@ -30,7 +30,7 @@ import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.RecordWriter;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.FileIO;
+import org.apache.paimon.fs.FileIO;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.types.RowType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java
index 91ec915af..1030d4318 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreCommitImpl.java
@@ -26,14 +26,14 @@ import org.apache.flink.table.store.file.manifest.ManifestEntry;
 import org.apache.flink.table.store.file.manifest.ManifestFile;
 import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
 import org.apache.flink.table.store.file.manifest.ManifestList;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.MemorySize;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.options.MemorySize;
 import org.apache.flink.table.store.table.sink.CommitMessage;
 import org.apache.flink.table.store.table.sink.CommitMessageImpl;
 import org.apache.flink.table.store.types.RowType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpireImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpireImpl.java
index 73b04462f..2344a66a1 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpireImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreExpireImpl.java
@@ -25,8 +25,8 @@ import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
 import org.apache.flink.table.store.file.manifest.ManifestList;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterables;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreRead.java
index 6fd2c1fd5..b6c0f4393 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreRead.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.operation;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.source.DataSplit;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java
index 56ce6aac7..59a646377 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/FileStoreScan.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.manifest.FileKind;
 import org.apache.flink.table.store.file.manifest.ManifestEntry;
 import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.utils.Filter;
 
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
index 361f5aead..59e339fb1 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreRead.java
@@ -29,12 +29,12 @@ import org.apache.flink.table.store.file.mergetree.compact.IntervalPartition;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionFactory;
 import org.apache.flink.table.store.file.mergetree.compact.MergeFunctionWrapper;
 import org.apache.flink.table.store.file.mergetree.compact.ReducerMergeFunctionWrapper;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.fs.FileIO;
+import org.apache.paimon.fs.FileIO;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.types.RowType;
@@ -54,8 +54,8 @@ import java.util.Set;
 import java.util.stream.Collectors;
 
 import static org.apache.flink.table.store.file.io.DataFilePathFactory.CHANGELOG_FILE_PREFIX;
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.containsFields;
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.splitAnd;
+import static org.apache.paimon.file.predicate.PredicateBuilder.containsFields;
+import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
 
 /**
  * {@link FileStoreRead} implementation for {@link
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScan.java
index 0f2fe64dd..4acf52f77 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScan.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.operation;
 import org.apache.flink.table.store.file.manifest.ManifestEntry;
 import org.apache.flink.table.store.file.manifest.ManifestFile;
 import org.apache.flink.table.store.file.manifest.ManifestList;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.stats.FieldStatsConverters;
@@ -30,9 +30,9 @@ import org.apache.flink.table.store.types.RowType;
 
 import java.util.List;
 
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.and;
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.pickTransformFieldMapping;
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.splitAnd;
+import static org.apache.paimon.file.predicate.PredicateBuilder.and;
+import static org.apache.paimon.file.predicate.PredicateBuilder.pickTransformFieldMapping;
+import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
 
 /** {@link FileStoreScan} for {@link org.apache.flink.table.store.file.KeyValueFileStore}. */
 public class KeyValueFileStoreScan extends AbstractFileStoreScan {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
index bf25b42b8..29a76f87e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreWrite.java
@@ -43,8 +43,8 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.lookup.hash.HashLookupStoreFactory;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.lookup.hash.HashLookupStoreFactory;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/MemoryFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/MemoryFileStoreWrite.java
index 1032032cf..e2ed78a47 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/MemoryFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/operation/MemoryFileStoreWrite.java
@@ -24,7 +24,7 @@ import org.apache.flink.table.store.file.memory.MemoryOwner;
 import org.apache.flink.table.store.file.memory.MemoryPoolFactory;
 import org.apache.flink.table.store.file.utils.RecordWriter;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.io.cache.CacheManager;
+import org.apache.paimon.io.cache.CacheManager;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java
index b6a5e8eeb..dda6b6acf 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtil.java
@@ -22,9 +22,9 @@ import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.casting.CastExecutor;
 import org.apache.flink.table.store.file.casting.CastExecutors;
 import org.apache.flink.table.store.file.casting.CastFieldGetter;
-import org.apache.flink.table.store.file.predicate.LeafPredicate;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateReplaceVisitor;
+import org.apache.paimon.file.predicate.LeafPredicate;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateReplaceVisitor;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java
index 4b1c6e9ec..37f562190 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaManager.java
@@ -31,8 +31,8 @@ import org.apache.flink.table.store.file.schema.SchemaChange.UpdateColumnNullabi
 import org.apache.flink.table.store.file.schema.SchemaChange.UpdateColumnPosition;
 import org.apache.flink.table.store.file.schema.SchemaChange.UpdateColumnType;
 import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypeCasts;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaValidation.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaValidation.java
index c4dc78780..32422a4f6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaValidation.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/schema/SchemaValidation.java
@@ -20,7 +20,7 @@ package org.apache.flink.table.store.file.schema;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.options.ConfigOption;
+import org.apache.paimon.options.ConfigOption;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBuffer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBuffer.java
index 4a87002ab..92b7d385f 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryExternalSortBuffer.java
@@ -27,7 +27,7 @@ import org.apache.flink.table.store.file.disk.FileChannelUtil;
 import org.apache.flink.table.store.file.disk.FileIOChannel;
 import org.apache.flink.table.store.file.disk.IOManager;
 import org.apache.flink.table.store.file.utils.MutableObjectIterator;
-import org.apache.flink.table.store.options.MemorySize;
+import org.apache.paimon.options.MemorySize;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java
index 7e3323b38..e6d357e99 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryInMemorySortBuffer.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.flink.table.store.codegen.RecordComparator;
 import org.apache.flink.table.store.file.memory.MemorySegmentPool;
 import org.apache.flink.table.store.file.utils.MutableObjectIterator;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryIndexedSortable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryIndexedSortable.java
index 6d397b5ea..0ba8e63b6 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryIndexedSortable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/sort/BinaryIndexedSortable.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.file.sort;
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.flink.table.store.codegen.RecordComparator;
 import org.apache.flink.table.store.file.memory.MemorySegmentPool;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java
index 848fb6a1d..1eeba424a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/BulkFormatMapping.java
@@ -20,7 +20,7 @@ package org.apache.flink.table.store.file.utils;
 
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.casting.CastFieldGetter;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.IndexCastMapping;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaEvolutionUtil;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java
index c03707740..067cc0c42 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileStorePathFactory.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.file.utils;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.ConfigOption;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.options.ConfigOption;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Preconditions;
 
@@ -33,7 +33,7 @@ import javax.annotation.concurrent.ThreadSafe;
 import java.util.UUID;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import static org.apache.flink.table.store.options.ConfigOptions.key;
+import static org.apache.paimon.options.ConfigOptions.key;
 
 /** Factory which produces {@link Path}s for manifest files. */
 @ThreadSafe
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
index cbf0e2d9f..cd2204d1a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/FileUtils.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileStatus;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java
index 42a5c7040..56c3e18da 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/ObjectSerializer.java
@@ -18,10 +18,10 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataInputViewStreamWrapper;
-import org.apache.flink.table.store.io.DataOutputView;
-import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataInputViewStreamWrapper;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.io.DataOutputViewStreamWrapper;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/PartitionPathUtils.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/PartitionPathUtils.java
index 0e7748774..d6d16d0ba 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/PartitionPathUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/PartitionPathUtils.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.Path;
 
 import java.util.BitSet;
 import java.util.LinkedHashMap;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java
index 1981da240..ddcb846e2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SerializationUtils.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.memory.MemorySegment;
 import org.apache.flink.table.store.types.VarBinaryType;
 import org.apache.flink.table.store.types.VarCharType;
 
@@ -30,8 +30,8 @@ import java.io.EOFException;
 import java.io.IOException;
 import java.nio.ByteBuffer;
 
-import static org.apache.flink.table.store.memory.MemorySegmentUtils.copyToBytes;
-import static org.apache.flink.table.store.memory.MemorySegmentUtils.copyToView;
+import static org.apache.paimon.memory.MemorySegmentUtils.copyToBytes;
+import static org.apache.paimon.memory.MemorySegmentUtils.copyToView;
 
 /** Utils for serialization. */
 public class SerializationUtils {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SnapshotManager.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SnapshotManager.java
index 8a41ec0aa..c7da43466 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SnapshotManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/utils/SnapshotManager.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.file.utils;
 
 import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.utils.Preconditions;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AbstractFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AbstractFileStoreTable.java
index d5eb8250f..f125892ca 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AbstractFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AbstractFileStoreTable.java
@@ -21,14 +21,14 @@ package org.apache.flink.table.store.table;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.FileStore;
 import org.apache.flink.table.store.file.operation.FileStoreScan;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.SchemaValidation;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.sink.TableCommitImpl;
 import org.apache.flink.table.store.table.source.BatchDataTableScan;
 import org.apache.flink.table.store.table.source.BatchDataTableScanImpl;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTable.java
index 52a253dff..1f93960b7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTable.java
@@ -25,10 +25,10 @@ import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreRead;
 import org.apache.flink.table.store.file.operation.AppendOnlyFileStoreScan;
 import org.apache.flink.table.store.file.operation.FileStoreScan;
 import org.apache.flink.table.store.file.operation.ReverseReader;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.sink.SinkRecordConverter;
 import org.apache.flink.table.store.table.sink.TableWriteImpl;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTable.java
index 363787fed..27c9d138e 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTable.java
@@ -27,12 +27,12 @@ import org.apache.flink.table.store.file.mergetree.compact.ValueCountMergeFuncti
 import org.apache.flink.table.store.file.operation.FileStoreScan;
 import org.apache.flink.table.store.file.operation.KeyValueFileStoreScan;
 import org.apache.flink.table.store.file.operation.ReverseReader;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.sink.SinkRecordConverter;
 import org.apache.flink.table.store.table.sink.TableWriteImpl;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTable.java
index 7bb697c78..15ffc798a 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTable.java
@@ -30,12 +30,12 @@ import org.apache.flink.table.store.file.mergetree.compact.PartialUpdateMergeFun
 import org.apache.flink.table.store.file.mergetree.compact.aggregate.AggregateMergeFunction;
 import org.apache.flink.table.store.file.operation.FileStoreScan;
 import org.apache.flink.table.store.file.operation.KeyValueFileStoreScan;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.sink.SequenceGenerator;
 import org.apache.flink.table.store.table.sink.SinkRecordConverter;
@@ -54,9 +54,9 @@ import java.util.List;
 import java.util.function.BiConsumer;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.and;
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.pickTransformFieldMapping;
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.splitAnd;
+import static org.apache.paimon.file.predicate.PredicateBuilder.and;
+import static org.apache.paimon.file.predicate.PredicateBuilder.pickTransformFieldMapping;
+import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
 import static org.apache.flink.table.store.file.schema.SystemColumns.KEY_FIELD_PREFIX;
 
 /** {@link FileStoreTable} for {@link WriteMode#CHANGE_LOG} write mode with primary keys. */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/DataTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/DataTable.java
index f5f704697..2ff7770fb 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/DataTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/DataTable.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.table.source.BatchDataTableScan;
 import org.apache.flink.table.store.table.source.StreamDataTableScan;
 import org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTableFactory.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTableFactory.java
index 028351d0e..37e9aa4c4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTableFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/FileStoreTableFactory.java
@@ -23,9 +23,9 @@ import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.options.Options;
 
 import java.io.IOException;
 import java.io.UncheckedIOException;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/TableUtils.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/TableUtils.java
index cb84c4adc..037ec8546 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/TableUtils.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/TableUtils.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateFilter;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateFilter;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.sink.BatchTableCommit;
 import org.apache.flink.table.store.table.sink.BatchTableWrite;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageImpl.java
index 351413a8f..494204360 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageImpl.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.table.sink;
 
 import org.apache.flink.table.store.file.io.CompactIncrement;
 import org.apache.flink.table.store.file.io.NewFilesIncrement;
-import org.apache.flink.table.store.io.DataInputViewStreamWrapper;
-import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
+import org.apache.paimon.io.DataInputViewStreamWrapper;
+import org.apache.paimon.io.DataOutputViewStreamWrapper;
 
 import org.apache.paimon.data.BinaryRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageSerializer.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageSerializer.java
index 2989c5c4c..2f4bc7352 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageSerializer.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/sink/CommitMessageSerializer.java
@@ -21,10 +21,10 @@ package org.apache.flink.table.store.table.sink;
 import org.apache.flink.table.store.file.io.CompactIncrement;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
 import org.apache.flink.table.store.file.io.NewFilesIncrement;
-import org.apache.flink.table.store.io.DataInputDeserializer;
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
-import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
+import org.apache.paimon.io.DataInputDeserializer;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.io.DataOutputViewStreamWrapper;
 
 import org.apache.paimon.data.serializer.VersionedSerializer;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AbstractDataTableScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AbstractDataTableScan.java
index e8c5200c0..935125c97 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AbstractDataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/AbstractDataTableScan.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.table.source;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.operation.FileStoreScan;
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.table.source.snapshot.CompactedStartingScanner;
 import org.apache.flink.table.store.table.source.snapshot.ContinuousFromSnapshotStartingScanner;
 import org.apache.flink.table.store.table.source.snapshot.ContinuousFromTimestampStartingScanner;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataSplit.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataSplit.java
index 35ba5a2c7..6ae99ea29 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataSplit.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataSplit.java
@@ -21,10 +21,10 @@ package org.apache.flink.table.store.table.source;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
 import org.apache.flink.table.store.file.utils.SerializationUtils;
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataInputViewStreamWrapper;
-import org.apache.flink.table.store.io.DataOutputView;
-import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataInputViewStreamWrapper;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.io.DataOutputViewStreamWrapper;
 
 import org.apache.paimon.data.BinaryRow;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataTableScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataTableScan.java
index fef0c3c1c..8e72638d4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/DataTableScan.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.table.source;
 
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.utils.Filter;
 
 import org.apache.paimon.annotation.VisibleForTesting;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableRead.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableRead.java
index 2f3791133..37b07fe04 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableRead.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableRead.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 
 import java.util.Arrays;
 import java.util.List;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableScan.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableScan.java
index 26abf010a..eba70a583 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/InnerTableScan.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 
 import java.util.List;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilder.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilder.java
index 4e347659f..77ee3b582 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilder.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilder.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.annotation.Experimental;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilderImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilderImpl.java
index f62b5d033..9341f7419 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilderImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/ReadBuilderImpl.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.table.source;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.table.InnerTable;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Projection;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableStreamingReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableStreamingReader.java
index dfc3dea9b..e66ce7daa 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableStreamingReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/TableStreamingReader.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.table.source;
 
 import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateFilter;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateFilter;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.source.DataTableScan.DataFilePlan;
@@ -40,7 +40,7 @@ import java.util.List;
 import java.util.function.IntUnaryOperator;
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.transformFieldMapping;
+import static org.apache.paimon.file.predicate.PredicateBuilder.transformFieldMapping;
 
 /** A streaming reader to read table. */
 public class TableStreamingReader {
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReader.java
index 8de2c13b8..36e037f72 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReader.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.table.source.snapshot;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.table.source.DataSplit;
 import org.apache.flink.table.store.table.source.SplitGenerator;
 import org.apache.flink.table.store.utils.Filter;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReaderImpl.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReaderImpl.java
index 4932ad098..356d09c5c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReaderImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/source/snapshot/SnapshotSplitReaderImpl.java
@@ -26,8 +26,8 @@ import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.manifest.FileKind;
 import org.apache.flink.table.store.file.operation.FileStoreScan;
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.flink.table.store.table.source.DataSplit;
@@ -43,7 +43,7 @@ import java.util.Map;
 import java.util.Optional;
 import java.util.function.BiConsumer;
 
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.transformFieldMapping;
+import static org.apache.paimon.file.predicate.PredicateBuilder.transformFieldMapping;
 import static org.apache.flink.table.store.table.source.snapshot.SnapshotSplitReader.generateSplits;
 
 /** Implementation of {@link SnapshotSplitReader}. */
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/AuditLogTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/AuditLogTable.java
index 5711892cf..ca9a0bdc4 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/AuditLogTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/AuditLogTable.java
@@ -20,13 +20,13 @@ package org.apache.flink.table.store.table.system;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.predicate.LeafPredicate;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
-import org.apache.flink.table.store.file.predicate.PredicateReplaceVisitor;
+import org.apache.paimon.file.predicate.LeafPredicate;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.PredicateReplaceVisitor;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.DataTable;
 import org.apache.flink.table.store.table.FileStoreTable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/BucketsTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/BucketsTable.java
index 80d17f765..0b8c6fed2 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/BucketsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/BucketsTable.java
@@ -21,11 +21,11 @@ package org.apache.flink.table.store.table.system;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.utils.IteratorRecordReader;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.DataTable;
 import org.apache.flink.table.store.table.FileStoreTable;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java
index e40c65c11..f2d3c7939 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/FilesTable.java
@@ -20,7 +20,7 @@ package org.apache.flink.table.store.table.system;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/OptionsTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/OptionsTable.java
index 191bd4771..70c74b3fc 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/OptionsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/OptionsTable.java
@@ -18,11 +18,11 @@
 
 package org.apache.flink.table.store.table.system;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.IteratorRecordReader;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.ReadonlyTable;
 import org.apache.flink.table.store.table.Table;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SchemasTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SchemasTable.java
index 9d7f8bc80..2164631b7 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SchemasTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SchemasTable.java
@@ -18,14 +18,14 @@
 
 package org.apache.flink.table.store.table.system;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.IteratorRecordReader;
 import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
 import org.apache.flink.table.store.file.utils.SerializationUtils;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.ReadonlyTable;
 import org.apache.flink.table.store.table.Table;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SnapshotsTable.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SnapshotsTable.java
index adfc9fbf4..10a3bd5f8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SnapshotsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SnapshotsTable.java
@@ -19,12 +19,12 @@
 package org.apache.flink.table.store.table.system;
 
 import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.utils.IteratorRecordReader;
 import org.apache.flink.table.store.file.utils.SerializationUtils;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.ReadonlyTable;
 import org.apache.flink.table.store.table.Table;
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SystemTableLoader.java b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SystemTableLoader.java
index 837dc8ebb..1dfc8e7a8 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SystemTableLoader.java
+++ b/flink-table-store-core/src/main/java/org/apache/flink/table/store/table/system/SystemTableLoader.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.table.system;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.Table;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/predicate/BucketSelector.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
similarity index 96%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/file/predicate/BucketSelector.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
index 8bba6c1c8..7d67c386c 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/file/predicate/BucketSelector.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.table.sink.BucketComputer;
 import org.apache.flink.table.store.types.RowType;
@@ -41,8 +41,8 @@ import java.util.concurrent.ConcurrentHashMap;
 import java.util.function.Consumer;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.splitAnd;
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.splitOr;
+import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
+import static org.apache.paimon.file.predicate.PredicateBuilder.splitOr;
 
 /** Selector to select bucket from {@link Predicate}. */
 @ThreadSafe
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/CoreOptionsTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/CoreOptionsTest.java
index 7683e2eaa..e63f71dc8 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/CoreOptionsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/CoreOptionsTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
index 1cbb8e420..a79a6bddd 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/FileFormatTest.java
@@ -19,10 +19,10 @@
 package org.apache.flink.table.store.file;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PositionOutputStream;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java
index 9ce88730a..8c5757567 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestFileStore.java
@@ -40,11 +40,11 @@ import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.RecordWriter;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileIOFinder;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.MemorySize;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.options.MemorySize;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 import org.apache.flink.table.store.table.sink.CommitMessageImpl;
 import org.apache.flink.table.store.table.source.DataSplit;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java
index 8c71f9a08..7de9fdab1 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/TestKeyValueGenerator.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.store.codegen.RecordComparator;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.table.SchemaEvolutionTableTestBase;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.BigIntType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManagerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManagerTest.java
index 3c84c7735..e79988dc1 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManagerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyCompactManagerTest.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.append;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.local.LocalFileIO;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
index 837490a7d..253b1285a 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/AppendOnlyWriterTest.java
@@ -26,9 +26,9 @@ import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.ExecutorThreadFactory;
 import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/IterativeCompactTaskTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/IterativeCompactTaskTest.java
index 783da075a..ccf909abb 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/IterativeCompactTaskTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/append/IterativeCompactTaskTest.java
@@ -20,7 +20,7 @@ package org.apache.flink.table.store.file.append;
 
 import org.apache.flink.table.store.file.compact.CompactResult;
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.local.LocalFileIO;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/catalog/CatalogFactoryTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/catalog/CatalogFactoryTest.java
index 23b78ea4e..05dd5de63 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/catalog/CatalogFactoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/catalog/CatalogFactoryTest.java
@@ -19,9 +19,9 @@
 package org.apache.flink.table.store.file.catalog;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.TableType;
 
 import org.apache.hadoop.conf.Configuration;
@@ -31,8 +31,8 @@ import org.junit.jupiter.api.io.TempDir;
 
 import java.io.IOException;
 
-import static org.apache.flink.table.store.options.CatalogOptions.TABLE_TYPE;
-import static org.apache.flink.table.store.options.CatalogOptions.WAREHOUSE;
+import static org.apache.paimon.options.CatalogOptions.TABLE_TYPE;
+import static org.apache.paimon.options.CatalogOptions.WAREHOUSE;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/BufferFileWriterReaderTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/BufferFileWriterReaderTest.java
index 7a937117a..f16dc9952 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/BufferFileWriterReaderTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/disk/BufferFileWriterReaderTest.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.disk;
 
 import org.apache.flink.table.store.file.memory.Buffer;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
index 08219cd97..c4335fc03 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileFormatSuffixTest.java
@@ -25,9 +25,9 @@ import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.flink.table.store.file.io.KeyValueFileReadWriteTest;
 import org.apache.flink.table.store.file.io.KeyValueFileWriterFactory;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java
index 5f6429918..ad79a2172 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormat.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.file.format;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.stats.TestFileStatsExtractor;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.format.FileFormat;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormatFactory.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormatFactory.java
index db163a2de..75786370b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormatFactory.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FileStatsExtractingAvroFormatFactory.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.file.format;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileFormatFactory;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
index 1d9227fd6..8d2f2ffdc 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/format/FlushingFileFormat.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.file.format;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFilePathFactoryTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFilePathFactoryTest.java
index d2a573b2e..6333f9b38 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFilePathFactoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/DataFilePathFactoryTest.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.io;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.Path;
 
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java
index dd47a4df8..721e4a0fa 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/KeyValueFileReadWriteTest.java
@@ -27,11 +27,11 @@ import org.apache.flink.table.store.file.stats.FieldStatsArraySerializer;
 import org.apache.flink.table.store.file.stats.StatsTestUtils;
 import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileIOFinder;
-import org.apache.flink.table.store.fs.FileStatus;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.DataType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
index 47005830f..5ad5e42a8 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/io/RollingFileWriterTest.java
@@ -19,9 +19,9 @@
 package org.apache.flink.table.store.file.io;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
index 998fc8686..8363b6b1d 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileMetaTest.java
@@ -24,11 +24,11 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.stats.StatsTestUtils;
 import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileIOFinder;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileTest.java
index 058f7eabf..04654e8da 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestFileTest.java
@@ -23,11 +23,11 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.stats.StatsTestUtils;
 import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileIOFinder;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.Options;
 
 import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.RepeatedTest;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestListTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestListTest.java
index 7558f37b3..cc8c03aba 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestListTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/manifest/ManifestListTest.java
@@ -22,10 +22,10 @@ import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.TestKeyValueGenerator;
 import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.fs.FileIOFinder;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.Options;
 
 import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.RepeatedTest;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java
index 9bb6c94f2..1efd4e2cc 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/LookupLevelsTest.java
@@ -28,11 +28,11 @@ import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
-import org.apache.flink.table.store.fs.FileIOFinder;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.io.cache.CacheManager;
-import org.apache.flink.table.store.lookup.hash.HashLookupStoreFactory;
-import org.apache.flink.table.store.options.MemorySize;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.io.cache.CacheManager;
+import org.apache.paimon.lookup.hash.HashLookupStoreFactory;
+import org.apache.paimon.options.MemorySize;
 import org.apache.flink.table.store.table.SchemaEvolutionTableTestBase;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataTypes;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
index 30ab4902e..48c5de8bb 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/mergetree/MergeTreeTest.java
@@ -40,11 +40,11 @@ import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.CommitIncrement;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.file.utils.RecordWriter;
-import org.apache.flink.table.store.fs.FileStatus;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.MemorySize;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.MemorySize;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 import org.apache.flink.table.store.table.SchemaEvolutionTableTestBase;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/CleanedFileStoreExpireTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/CleanedFileStoreExpireTest.java
index 0d03203ce..1a560faff 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/CleanedFileStoreExpireTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/CleanedFileStoreExpireTest.java
@@ -23,8 +23,8 @@ import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.manifest.FileKind;
 import org.apache.flink.table.store.file.manifest.ManifestEntry;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.Timestamp;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java
index cae26f111..5cd6e84cc 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreCommitTest.java
@@ -31,8 +31,8 @@ import org.apache.flink.table.store.file.schema.SchemaUtils;
 import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.flink.table.store.file.utils.TraceableFileIO;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.flink.table.store.types.RowKind;
 
 import org.apache.paimon.data.BinaryRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreExpireTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreExpireTestBase.java
index b83a1bcf4..d24023047 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreExpireTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/FileStoreExpireTestBase.java
@@ -27,9 +27,9 @@ import org.apache.flink.table.store.file.mergetree.compact.DeduplicateMergeFunct
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 
 import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java
index a7b9a3408..5aec9282e 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreReadTest.java
@@ -29,8 +29,8 @@ import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.FileIOFinder;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 import org.apache.flink.table.store.table.source.DataSplit;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java
index 451be55a4..ccebebb34 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/KeyValueFileStoreScanTest.java
@@ -25,12 +25,12 @@ import org.apache.flink.table.store.file.TestKeyValueGenerator;
 import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
 import org.apache.flink.table.store.file.manifest.ManifestList;
 import org.apache.flink.table.store.file.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java
index 784f4ed45..748b6c495 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/PartitionExpireTest.java
@@ -21,8 +21,8 @@ package org.apache.flink.table.store.file.operation;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.flink.table.store.table.AbstractFileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/UncleanedFileStoreExpireTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/UncleanedFileStoreExpireTest.java
index f0a1f73a2..f362d435b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/UncleanedFileStoreExpireTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/operation/UncleanedFileStoreExpireTest.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.operation;
 
 import org.apache.flink.table.store.file.KeyValue;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.Path;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java
index 49b2ff4e3..ad525afc1 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaEvolutionUtilTest.java
@@ -18,11 +18,11 @@
 
 package org.apache.flink.table.store.file.schema;
 
-import org.apache.flink.table.store.file.predicate.Equal;
-import org.apache.flink.table.store.file.predicate.IsNotNull;
-import org.apache.flink.table.store.file.predicate.IsNull;
-import org.apache.flink.table.store.file.predicate.LeafPredicate;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Equal;
+import org.apache.paimon.file.predicate.IsNotNull;
+import org.apache.paimon.file.predicate.IsNull;
+import org.apache.paimon.file.predicate.LeafPredicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataTypes;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaManagerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaManagerTest.java
index d66d7747f..8c21866b4 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaManagerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/schema/SchemaManagerTest.java
@@ -21,9 +21,9 @@ package org.apache.flink.table.store.file.schema;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.utils.FailingFileIO;
-import org.apache.flink.table.store.fs.FileIOFinder;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DoubleType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java
index 801be9263..2521ffb23 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/sort/IntNormalizedKeyComputer.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.file.sort;
 
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 import org.apache.flink.table.store.utils.SortUtil;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
index 6eb5c013b..974a82ead 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/stats/TestFileStatsExtractor.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.file.stats;
 
 import org.apache.flink.table.store.file.utils.FileUtils;
 import org.apache.flink.table.store.file.utils.ObjectSerializer;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FailingFileIO.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FailingFileIO.java
index 5b6a8d74b..0ce91b791 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FailingFileIO.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FailingFileIO.java
@@ -18,15 +18,15 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileIOLoader;
-import org.apache.flink.table.store.fs.FileStatus;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PositionOutputStream;
-import org.apache.flink.table.store.fs.PositionOutputStreamWrapper;
-import org.apache.flink.table.store.fs.SeekableInputStream;
-import org.apache.flink.table.store.fs.SeekableInputStreamWrapper;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileIOLoader;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
+import org.apache.paimon.fs.PositionOutputStreamWrapper;
+import org.apache.paimon.fs.SeekableInputStream;
+import org.apache.paimon.fs.SeekableInputStreamWrapper;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.flink.table.store.utils.ExceptionUtils;
 
 import java.io.File;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java
index 9c2ca975e..dc00a4613 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/FileStorePathFactoryTest.java
@@ -20,7 +20,7 @@ package org.apache.flink.table.store.file.utils;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ObjectSerializerTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ObjectSerializerTestBase.java
index 422d94953..3177b082f 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ObjectSerializerTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/ObjectSerializerTestBase.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.io.DataInputDeserializer;
-import org.apache.flink.table.store.io.DataOutputSerializer;
+import org.apache.paimon.io.DataInputDeserializer;
+import org.apache.paimon.io.DataOutputSerializer;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/SnapshotManagerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/SnapshotManagerTest.java
index 6ce432f8a..581251401 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/SnapshotManagerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/SnapshotManagerTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.flink.table.store.file.utils;
 
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TraceableFileIO.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TraceableFileIO.java
index e86dea91f..30d77c14b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TraceableFileIO.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/utils/TraceableFileIO.java
@@ -19,15 +19,15 @@
 package org.apache.flink.table.store.file.utils;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileIOLoader;
-import org.apache.flink.table.store.fs.FileStatus;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PositionOutputStream;
-import org.apache.flink.table.store.fs.PositionOutputStreamWrapper;
-import org.apache.flink.table.store.fs.SeekableInputStream;
-import org.apache.flink.table.store.fs.SeekableInputStreamWrapper;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileIOLoader;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
+import org.apache.paimon.fs.PositionOutputStreamWrapper;
+import org.apache.paimon.fs.SeekableInputStream;
+import org.apache.paimon.fs.SeekableInputStreamWrapper;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.flink.table.store.utils.ThreadUtils;
 
 import javax.annotation.concurrent.GuardedBy;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileDataTableTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileDataTableTest.java
index b4c1a6847..41938dbdf 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileDataTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileDataTableTest.java
@@ -20,7 +20,7 @@ package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.FileIOFinder;
+import org.apache.paimon.fs.FileIOFinder;
 
 import java.util.Map;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTableTest.java
index ee3e47f97..3dfbb5fb5 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/AppendOnlyFileStoreTableTest.java
@@ -21,14 +21,14 @@ package org.apache.flink.table.store.table;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.SchemaUtils;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.sink.StreamTableCommit;
 import org.apache.flink.table.store.table.sink.StreamTableWrite;
 import org.apache.flink.table.store.table.source.DataSplit;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTableTest.java
index f0ea0c73c..b185dda88 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogValueCountFileStoreTableTest.java
@@ -22,15 +22,15 @@ import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.io.DataFilePathFactory;
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.SchemaUtils;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.sink.StreamTableCommit;
 import org.apache.flink.table.store.table.sink.StreamTableWrite;
 import org.apache.flink.table.store.table.source.Split;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyColumnTypeFileDataTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyColumnTypeFileDataTest.java
index 1d8dd08dd..dd0071a79 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyColumnTypeFileDataTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyColumnTypeFileDataTest.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.table.source.Split;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileDataTableTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileDataTableTest.java
index ba6b1fd64..53da5518b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileDataTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileDataTableTest.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.table;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.table.source.Split;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileMetaFilterTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileMetaFilterTest.java
index fa90563af..41a815f53 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileMetaFilterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileMetaFilterTest.java
@@ -21,8 +21,8 @@ package org.apache.flink.table.store.table;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTableTest.java
index 2260f525d..ca647c6e7 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyFileStoreTableTest.java
@@ -22,14 +22,14 @@ import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.SchemaUtils;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.sink.BatchTableCommit;
 import org.apache.flink.table.store.table.sink.BatchTableWrite;
 import org.apache.flink.table.store.table.sink.BatchWriteBuilder;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
index 52a7656a2..0a32145ee 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
@@ -21,8 +21,8 @@ package org.apache.flink.table.store.table;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileDataTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileDataTestBase.java
index d32a77712..f067b0bfa 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileDataTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileDataTestBase.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.table.source.Split;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.utils.RowDataUtils;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java
index 0dbe53c00..dd28d457b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/ColumnTypeFileMetaTestBase.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.table.source.DataSplit;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileDataFilterTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileDataFilterTestBase.java
index a69710ada..91983446e 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileDataFilterTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileDataFilterTestBase.java
@@ -19,11 +19,11 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.file.operation.ScanKind;
-import org.apache.flink.table.store.file.predicate.Equal;
-import org.apache.flink.table.store.file.predicate.IsNull;
-import org.apache.flink.table.store.file.predicate.LeafPredicate;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Equal;
+import org.apache.paimon.file.predicate.IsNull;
+import org.apache.paimon.file.predicate.LeafPredicate;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.table.source.Split;
 import org.apache.flink.table.store.table.source.TableRead;
 import org.apache.flink.table.store.types.DataTypes;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileMetaFilterTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileMetaFilterTestBase.java
index eb79076c1..62a14b4ed 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileMetaFilterTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileMetaFilterTestBase.java
@@ -19,8 +19,8 @@
 package org.apache.flink.table.store.table;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.table.source.DataSplit;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileStoreTableTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileStoreTableTestBase.java
index 401db85eb..4c18e5892 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileStoreTableTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/FileStoreTableTestBase.java
@@ -22,14 +22,14 @@ import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader;
 import org.apache.flink.table.store.file.mergetree.compact.ConcatRecordReader.ReaderSupplier;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.SchemaChange;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.flink.table.store.file.utils.TraceableFileIO;
-import org.apache.flink.table.store.fs.FileIOFinder;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 import org.apache.flink.table.store.table.sink.CommitMessage;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTableTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTableTestBase.java
index 8a603ce86..23a98e2d8 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTableTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTableTestBase.java
@@ -26,10 +26,10 @@ import org.apache.flink.table.store.file.schema.SchemaChange;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.TraceableFileIO;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileIOFinder;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 import org.apache.flink.table.store.table.sink.StreamTableCommit;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTest.java
index be835fac7..311ef9f99 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/SchemaEvolutionTest.java
@@ -18,13 +18,13 @@
 
 package org.apache.flink.table.store.table;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaChange;
 import org.apache.flink.table.store.file.schema.SchemaManager;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.flink.table.store.table.sink.StreamTableWrite;
 import org.apache.flink.table.store.table.source.InnerTableRead;
 import org.apache.flink.table.store.table.source.Split;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/WritePreemptMemoryTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/WritePreemptMemoryTest.java
index c613fb4a7..56e406ff8 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/WritePreemptMemoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/WritePreemptMemoryTest.java
@@ -24,9 +24,9 @@ import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.SchemaUtils;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.MemorySize;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.MemorySize;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.sink.StreamTableCommit;
 import org.apache.flink.table.store.table.sink.StreamTableWrite;
 import org.apache.flink.table.store.table.source.Split;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/TableWriteTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/TableWriteTest.java
index 13f660036..40bf31fae 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/TableWriteTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/sink/TableWriteTest.java
@@ -25,10 +25,10 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.SchemaUtils;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.TraceableFileIO;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.MemorySize;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.MemorySize;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitTest.java
index a96155161..6e19e452e 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/SplitTest.java
@@ -20,8 +20,8 @@ package org.apache.flink.table.store.table.source;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFileTestDataGenerator;
-import org.apache.flink.table.store.io.DataInputDeserializer;
-import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
+import org.apache.paimon.io.DataInputDeserializer;
+import org.apache.paimon.io.DataOutputViewStreamWrapper;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/StreamDataTableScanTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/StreamDataTableScanTest.java
index e605ad57b..004356235 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/StreamDataTableScanTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/StreamDataTableScanTest.java
@@ -19,7 +19,7 @@
 package org.apache.flink.table.store.table.source;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.sink.StreamTableCommit;
 import org.apache.flink.table.store.table.sink.StreamTableWrite;
 import org.apache.flink.table.store.table.source.snapshot.ScannerTestBase;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
index 29a5e7b1b..5ea0cf150 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.table.source.snapshot;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.sink.StreamTableCommit;
 import org.apache.flink.table.store.table.sink.StreamTableWrite;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/InputChangelogFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/InputChangelogFollowUpScannerTest.java
index b9292025e..80b8478d9 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/InputChangelogFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/InputChangelogFollowUpScannerTest.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.table.source.snapshot;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.sink.StreamTableCommit;
 import org.apache.flink.table.store.table.sink.StreamTableWrite;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ScannerTestBase.java b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ScannerTestBase.java
index 3811ba507..910cf2a85 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ScannerTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/flink/table/store/table/source/snapshot/ScannerTestBase.java
@@ -23,10 +23,10 @@ import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.file.utils.TraceableFileIO;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileIOFinder;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 import org.apache.flink.table.store.table.FileStoreTable;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/BucketSelectorTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
similarity index 96%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/BucketSelectorTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
index d39901770..dbde1970b 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/BucketSelectorTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
@@ -26,8 +26,8 @@ import org.junit.jupiter.api.Test;
 import java.util.Arrays;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.and;
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.or;
+import static org.apache.paimon.file.predicate.PredicateBuilder.and;
+import static org.apache.paimon.file.predicate.PredicateBuilder.or;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link BucketSelector}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateBuilderTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
similarity index 98%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateBuilderTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
index 5f7634c29..400c02edd 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateBuilderTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
similarity index 99%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
index fa90d9624..1e37c8272 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/file/predicate/PredicateTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
diff --git a/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader b/flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
similarity index 100%
rename from flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
rename to flink-table-store-core/src/test/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
index e9a27a159..196a0ed79 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
@@ -24,8 +24,8 @@ import org.apache.flink.table.store.file.catalog.Catalog;
 import org.apache.flink.table.store.file.catalog.CatalogFactory;
 import org.apache.flink.table.store.file.catalog.Identifier;
 import org.apache.flink.table.store.file.schema.Schema;
-import org.apache.flink.table.store.options.CatalogOptions;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.CatalogOptions;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.Table;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataTypes;
diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
index eaeacdc19..1fe9d5122 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.benchmark;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.sink.CommitMessage;
 import org.apache.flink.table.store.table.sink.StreamTableCommit;
 import org.apache.flink.table.store.table.sink.StreamTableWrite;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/table/TableType.java b/paimon-common/src/main/java/org/apache/flink/table/store/table/TableType.java
index e6597a085..662f85d3d 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/table/TableType.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/table/TableType.java
@@ -18,10 +18,10 @@
 
 package org.apache.flink.table.store.table;
 
-import org.apache.flink.table.store.options.description.DescribedEnum;
-import org.apache.flink.table.store.options.description.InlineElement;
+import org.apache.paimon.options.description.DescribedEnum;
+import org.apache.paimon.options.description.InlineElement;
 
-import static org.apache.flink.table.store.options.description.TextElement.text;
+import static org.apache.paimon.options.description.TextElement.text;
 
 /** Enum of catalog table type. */
 public enum TableType implements DescribedEnum {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java
index b3a983085..27a314c1c 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/BinaryRowDataUtil.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.BinaryRow;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Filter.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/Filter.java
index 73826b650..733c19709 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/Filter.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/Filter.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 
 /**
  * Represents a filter (boolean-valued function) of one argument. This class is for avoiding name
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/HadoopUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/HadoopUtils.java
index 041307859..fac383acb 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/HadoopUtils.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/HadoopUtils.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hdfs.HdfsConfiguration;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/MurmurHashUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/MurmurHashUtils.java
index 53e672d3a..52c79b88e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/MurmurHashUtils.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/MurmurHashUtils.java
@@ -18,10 +18,10 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
-import static org.apache.flink.table.store.memory.MemorySegment.BYTE_ARRAY_BASE_OFFSET;
-import static org.apache.flink.table.store.memory.MemorySegment.UNSAFE;
+import static org.apache.paimon.memory.MemorySegment.BYTE_ARRAY_BASE_OFFSET;
+import static org.apache.paimon.memory.MemorySegment.UNSAFE;
 
 /** Murmur Hash. This is inspired by Guava's Murmur3_32HashFunction. */
 public final class MurmurHashUtils {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java
index fc8467ccd..b257b7dd8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/SortUtil.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
@@ -26,7 +26,7 @@ import org.apache.paimon.data.Timestamp;
 
 import java.nio.ByteOrder;
 
-import static org.apache.flink.table.store.memory.MemorySegment.UNSAFE;
+import static org.apache.paimon.memory.MemorySegment.UNSAFE;
 
 /** Util for sort. */
 public class SortUtil {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java b/paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java
index 3640aff4b..5d4baa492 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java
+++ b/paimon-common/src/main/java/org/apache/flink/table/store/utils/StringUtils.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.utils;
 
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.memory.MemorySegmentUtils;
 
 import org.apache.paimon.data.BinaryString;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/annotation/Documentation.java b/paimon-common/src/main/java/org/apache/paimon/annotation/Documentation.java
index 8cdd96709..d7d917a94 100644
--- a/paimon-common/src/main/java/org/apache/paimon/annotation/Documentation.java
+++ b/paimon-common/src/main/java/org/apache/paimon/annotation/Documentation.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.annotation;
 
-import org.apache.flink.table.store.options.ConfigOption;
+import org.apache.paimon.options.ConfigOption;
 
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
diff --git a/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java b/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
index 6a83d793f..9d0926806 100644
--- a/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
+++ b/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
@@ -18,10 +18,10 @@
 
 package org.apache.flink.table.store.catalog;
 
-import org.apache.flink.table.store.fs.FileIOLoader;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.hadoop.HadoopFileIOLoader;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.fs.FileIOLoader;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.hadoop.HadoopFileIOLoader;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.utils.HadoopUtils;
 
 import org.apache.hadoop.conf.Configuration;
@@ -29,8 +29,8 @@ import org.apache.paimon.annotation.Experimental;
 
 import javax.annotation.Nullable;
 
-import static org.apache.flink.table.store.options.CatalogOptions.FS_ALLOW_HADOOP_FALLBACK;
-import static org.apache.flink.table.store.options.CatalogOptions.WAREHOUSE;
+import static org.apache.paimon.options.CatalogOptions.FS_ALLOW_HADOOP_FALLBACK;
+import static org.apache.paimon.options.CatalogOptions.WAREHOUSE;
 
 /**
  * Context of catalog.
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
index 76110a744..d72595445 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
@@ -18,7 +18,7 @@
 package org.apache.flink.table.store.codegen
 
 import org.apache.paimon.data._
-import org.apache.flink.table.store.memory.MemorySegment
+import org.apache.paimon.memory.MemorySegment
 import org.apache.flink.table.store.types._
 import org.apache.flink.table.store.types.DataTypeChecks.{getFieldCount, getFieldTypes, getPrecision, getScale}
 import org.apache.flink.table.store.types.DataTypeRoot._
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/NormalizedKeyComputer.java b/paimon-common/src/main/java/org/apache/paimon/codegen/NormalizedKeyComputer.java
index 3d6d55767..be1c8be28 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/NormalizedKeyComputer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/NormalizedKeyComputer.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.codegen;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/AbstractBinaryWriter.java b/paimon-common/src/main/java/org/apache/paimon/data/AbstractBinaryWriter.java
index e31219825..b44f99701 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/AbstractBinaryWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/AbstractBinaryWriter.java
@@ -17,8 +17,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
 
 import org.apache.paimon.data.serializer.InternalArraySerializer;
 import org.apache.paimon.data.serializer.InternalMapSerializer;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedInputView.java b/paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedInputView.java
index f6bec8b5d..37d54335b 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedInputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedInputView.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.io.EOFException;
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedOutputView.java b/paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedOutputView.java
index 1319abada..e3273e13a 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedOutputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/AbstractPagedOutputView.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentWritable;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentWritable;
 
 import java.io.IOException;
 import java.io.UTFDataFormatException;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
index 6d74bb698..9af790512 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
@@ -18,15 +18,15 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.DataType;
 
 import org.apache.paimon.annotation.Experimental;
 
 import java.lang.reflect.Array;
 
-import static org.apache.flink.table.store.memory.MemorySegment.UNSAFE;
+import static org.apache.paimon.memory.MemorySegment.UNSAFE;
 
 /**
  * A binary implementation of {@link InternalArray} which is backed by {@link MemorySegment}s.
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryArrayWriter.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArrayWriter.java
index b09f287e1..a685fab70 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryArrayWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArrayWriter.java
@@ -17,8 +17,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.DataType;
 
 import java.io.Serializable;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
index 446844db2..3a7b00583 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.DataType;
 
 import org.apache.paimon.annotation.Experimental;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
index b72eded9c..f794cc3f5 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
@@ -17,8 +17,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypeRoot;
 import org.apache.flink.table.store.types.DecimalType;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryRowWriter.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRowWriter.java
index 9df75bea9..cdf7dc17c 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryRowWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRowWriter.java
@@ -17,8 +17,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.RowKind;
 
 /** Writer for {@link BinaryRow}. */
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinarySection.java b/paimon-common/src/main/java/org/apache/paimon/data/BinarySection.java
index 192c6ae13..daac1c29e 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinarySection.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinarySection.java
@@ -17,8 +17,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.utils.IOUtils;
 import org.apache.flink.table.store.utils.Preconditions;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
index aeb9be83b..b1248774a 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
 
 import org.apache.paimon.annotation.Experimental;
 
@@ -30,8 +30,8 @@ import java.io.UnsupportedEncodingException;
 import java.nio.charset.StandardCharsets;
 import java.util.Arrays;
 
-import static org.apache.flink.table.store.memory.MemorySegmentUtils.allocateReuseBytes;
-import static org.apache.flink.table.store.memory.MemorySegmentUtils.allocateReuseChars;
+import static org.apache.paimon.memory.MemorySegmentUtils.allocateReuseBytes;
+import static org.apache.paimon.memory.MemorySegmentUtils.allocateReuseChars;
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
 
 /**
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java b/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
index a1a48c092..bc62fc1c1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
@@ -17,8 +17,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.RowKind;
 
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessInputView.java b/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessInputView.java
index e244a63f6..d019f9c89 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessInputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessInputView.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.io.SeekableDataInputView;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.io.SeekableDataInputView;
+import org.apache.paimon.memory.MemorySegment;
 import org.apache.flink.table.store.utils.MathUtils;
 
 import java.io.EOFException;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessOutputView.java b/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessOutputView.java
index 49aec3e6d..1dd31ace1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessOutputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/RandomAccessOutputView.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.io.EOFException;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/SimpleCollectingOutputView.java b/paimon-common/src/main/java/org/apache/paimon/data/SimpleCollectingOutputView.java
index 387dc5f48..07f2c3b96 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/SimpleCollectingOutputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/SimpleCollectingOutputView.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentSource;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentSource;
 import org.apache.flink.table.store.utils.MathUtils;
 
 import java.io.EOFException;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/AbstractHeapVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/AbstractHeapVector.java
index 3b865568a..c244e9448 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/AbstractHeapVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/AbstractHeapVector.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.data.columnar.heap;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.columnar.writable.AbstractWritableVector;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
index e5619ba2a..247d81be4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
-import org.apache.flink.table.store.memory.MemorySegmentWritable;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
+import org.apache.paimon.memory.MemorySegmentWritable;
 
 import org.apache.paimon.data.AbstractPagedInputView;
 import org.apache.paimon.data.AbstractPagedOutputView;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinarySerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinarySerializer.java
index f28d02a45..2bfafd3d4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinarySerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinarySerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryStringSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryStringSerializer.java
index d95fbb17d..58bce387a 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryStringSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryStringSerializer.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.memory.MemorySegmentUtils;
 
 import org.apache.paimon.data.BinaryString;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BooleanSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BooleanSerializer.java
index 938403e26..f725f9acf 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BooleanSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BooleanSerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/ByteSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ByteSerializer.java
index 43abd9ad1..c10d5ef82 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/ByteSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ByteSerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/DecimalSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/DecimalSerializer.java
index df2b6e839..c60ee7011 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/DecimalSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/DecimalSerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 
 import org.apache.paimon.data.Decimal;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/DoubleSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/DoubleSerializer.java
index 8e96dd899..5532f2130 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/DoubleSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/DoubleSerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/FloatSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/FloatSerializer.java
index e9f698cf5..73ccd339e 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/FloatSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/FloatSerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/IntSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/IntSerializer.java
index 774fcdaba..aa4572a78 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/IntSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/IntSerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
index dcd68dfc4..823296b50 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.DataType;
 
 import org.apache.paimon.data.BinaryArray;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
index f9ecc70f0..c5bde00b1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentUtils;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.flink.table.store.types.DataType;
 
 import org.apache.paimon.data.BinaryArray;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
index 15d77901b..115d7d1d5 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/ListSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ListSerializer.java
index fa432844f..51b8e2a54 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/ListSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ListSerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/LongSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/LongSerializer.java
index 1ff14989a..1461fa8ea 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/LongSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/LongSerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/NullableSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/NullableSerializer.java
index d7c221550..c06de2acc 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/NullableSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/NullableSerializer.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputDeserializer;
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputSerializer;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputDeserializer;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputSerializer;
+import org.apache.paimon.io.DataOutputView;
 
 import javax.annotation.Nonnull;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
index 6dd1cf758..d90967cb5 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.memory.MemorySegment;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
@@ -45,8 +45,8 @@ import java.io.Serializable;
 import java.util.Arrays;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.memory.MemorySegmentUtils.bitGet;
-import static org.apache.flink.table.store.memory.MemorySegmentUtils.bitSet;
+import static org.apache.paimon.memory.MemorySegmentUtils.bitGet;
+import static org.apache.paimon.memory.MemorySegmentUtils.bitSet;
 import static org.apache.flink.table.store.types.DataTypeChecks.getPrecision;
 import static org.apache.flink.table.store.types.DataTypeChecks.getScale;
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/Serializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/Serializer.java
index 4d343a822..b03ee8f32 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/Serializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/Serializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 
 import java.io.IOException;
 import java.io.Serializable;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/ShortSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ShortSerializer.java
index 4477ec85b..0d5669d89 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/ShortSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/ShortSerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/TimestampSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/TimestampSerializer.java
index a19138b32..f8ce78919 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/TimestampSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/TimestampSerializer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
 
 import org.apache.paimon.data.Timestamp;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/And.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/And.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/And.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/And.java
index 62fa35c0c..8caf6e83e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/And.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/And.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/CompareUtils.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/CompareUtils.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/CompareUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/CompareUtils.java
index 10d282900..e86bc53b5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/CompareUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/CompareUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/CompoundPredicate.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/CompoundPredicate.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/CompoundPredicate.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/CompoundPredicate.java
index 6f7ae73bd..5f4bf1ee9 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/CompoundPredicate.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/CompoundPredicate.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Equal.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java
similarity index 93%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Equal.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java
index 5fefdf3c6..eaf09e971 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Equal.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
@@ -25,7 +25,7 @@ import org.apache.paimon.format.FieldStats;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
 
 /** A {@link NullFalseLeafBinaryFunction} to eval equal. */
 public class Equal extends NullFalseLeafBinaryFunction {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/FieldRef.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/FieldRef.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/FieldRef.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/FieldRef.java
index e5b16f598..7291cb7c4 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/FieldRef.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/FieldRef.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/FunctionVisitor.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/FunctionVisitor.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/FunctionVisitor.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/FunctionVisitor.java
index a57bb1d35..cab41a6a7 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/FunctionVisitor.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/FunctionVisitor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import java.util.List;
 import java.util.stream.Collectors;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterOrEqual.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java
similarity index 92%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterOrEqual.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java
index f011a3fa6..f093c734c 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterOrEqual.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
@@ -25,7 +25,7 @@ import org.apache.paimon.format.FieldStats;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
 
 /** A {@link NullFalseLeafBinaryFunction} to eval greater or equal. */
 public class GreaterOrEqual extends NullFalseLeafBinaryFunction {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterThan.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java
similarity index 92%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterThan.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java
index bc785f690..b5859d446 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/GreaterThan.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
@@ -25,7 +25,7 @@ import org.apache.paimon.format.FieldStats;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
 
 /** A {@link LeafFunction} to eval greater. */
 public class GreaterThan extends NullFalseLeafBinaryFunction {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/In.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/In.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java
index 98041a76a..b527d0133 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/In.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
@@ -25,7 +25,7 @@ import org.apache.paimon.format.FieldStats;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
 
 /** A {@link LeafFunction} to eval in. */
 public class In extends LeafFunction {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNotNull.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNotNull.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java
index ff00f2aef..5fbcdecd5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNotNull.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNull.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNull.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java
index 6d3a82df4..032ab1079 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/IsNull.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafFunction.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafFunction.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java
index f15ca92f3..73b32f2d6 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java
index 83bcfb942..1ff1aafed 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafPredicate.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
-import org.apache.flink.table.store.io.DataInputViewStreamWrapper;
-import org.apache.flink.table.store.io.DataOutputViewStreamWrapper;
+import org.apache.paimon.io.DataInputViewStreamWrapper;
+import org.apache.paimon.io.DataOutputViewStreamWrapper;
 import org.apache.flink.table.store.types.DataType;
 
 import org.apache.paimon.data.serializer.InternalSerializers;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafUnaryFunction.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafUnaryFunction.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java
index 557be4edd..eb2b669a6 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LeafUnaryFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LessOrEqual.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java
similarity index 92%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LessOrEqual.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java
index 078924c9c..c82d1d0c8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LessOrEqual.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
@@ -25,7 +25,7 @@ import org.apache.paimon.format.FieldStats;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
 
 /** A {@link NullFalseLeafBinaryFunction} to eval less or equal. */
 public class LessOrEqual extends NullFalseLeafBinaryFunction {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LessThan.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java
similarity index 92%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LessThan.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java
index 5e007eaa9..776a221dc 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/LessThan.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
@@ -25,7 +25,7 @@ import org.apache.paimon.format.FieldStats;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
 
 /** A {@link NullFalseLeafBinaryFunction} to eval less or equal. */
 public class LessThan extends NullFalseLeafBinaryFunction {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NotEqual.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java
similarity index 93%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NotEqual.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java
index fe26e693e..bcd1f00c8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NotEqual.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
@@ -25,7 +25,7 @@ import org.apache.paimon.format.FieldStats;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
 
 /** A {@link NullFalseLeafBinaryFunction} to eval not equal. */
 public class NotEqual extends NullFalseLeafBinaryFunction {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NotIn.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NotIn.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java
index 0ab90b636..4042f5486 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NotIn.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
@@ -25,7 +25,7 @@ import org.apache.paimon.format.FieldStats;
 import java.util.List;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.file.predicate.CompareUtils.compareLiteral;
+import static org.apache.paimon.file.predicate.CompareUtils.compareLiteral;
 
 /** A {@link LeafFunction} to eval not in. */
 public class NotIn extends LeafFunction {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NullFalseLeafBinaryFunction.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NullFalseLeafBinaryFunction.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java
index 97b6d9c42..8fd2d827c 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/NullFalseLeafBinaryFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Or.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/Or.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Or.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/Or.java
index d553e9c25..5e61237c6 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Or.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/Or.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.paimon.format.FieldStats;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/Predicate.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/Predicate.java
index b2f9a60f7..4c396904d 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/Predicate.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/Predicate.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.format.FieldStats;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateBuilder.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateBuilder.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java
index 612661c1b..931353cb1 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateBuilder.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateFilter.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateFilter.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java
index bda83761b..7fbcce2a3 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateFilter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.RowDataToObjectArrayConverter;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateReplaceVisitor.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateReplaceVisitor.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateReplaceVisitor.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateReplaceVisitor.java
index 6277d17e1..3058f9a05 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateReplaceVisitor.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateReplaceVisitor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateVisitor.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateVisitor.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateVisitor.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateVisitor.java
index 6663f19aa..7135363ff 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/PredicateVisitor.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateVisitor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 /** A visitor to visit {@link Predicate}. */
 public interface PredicateVisitor<T> {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java
rename to paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java
index 342d32841..6020f475f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/file/predicate/StartsWith.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.file.predicate;
+package org.apache.paimon.file.predicate;
 
 import org.apache.flink.table.store.types.DataType;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java b/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
index 1a24acef7..4aafbef10 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.RowType;
 
 import javax.annotation.Nullable;
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FileFormatFactory.java b/paimon-common/src/main/java/org/apache/paimon/format/FileFormatFactory.java
index 8046abb10..bab037d41 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FileFormatFactory.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FileFormatFactory.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 /** Factory to create {@link FileFormat}. */
 public interface FileFormatFactory {
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FileStatsExtractor.java b/paimon-common/src/main/java/org/apache/paimon/format/FileStatsExtractor.java
index 938c5826d..6be6f82a9 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FileStatsExtractor.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FileStatsExtractor.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java b/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
index 6fccf7aec..478246c60 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.flink.table.store.reader.RecordReader;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FormatWriterFactory.java b/paimon-common/src/main/java/org/apache/paimon/format/FormatWriterFactory.java
index 23996a2d2..0ac921ee6 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FormatWriterFactory.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FormatWriterFactory.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.fs.PositionOutputStream;
+import org.apache.paimon.fs.PositionOutputStream;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/FileIO.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIO.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/FileIO.java
index 28111330c..2dafb94c6 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/FileIO.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.local.LocalFileIO;
 
 import org.apache.paimon.annotation.Experimental;
 import org.slf4j.Logger;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIOLoader.java b/paimon-common/src/main/java/org/apache/paimon/fs/FileIOLoader.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIOLoader.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/FileIOLoader.java
index e04d22830..74321e606 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileIOLoader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/FileIOLoader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileStatus.java b/paimon-common/src/main/java/org/apache/paimon/fs/FileStatus.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/FileStatus.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/FileStatus.java
index 1962cffb5..63f48358f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/FileStatus.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/FileStatus.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/Path.java b/paimon-common/src/main/java/org/apache/paimon/fs/Path.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/Path.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/Path.java
index f3c898323..72180d6df 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/Path.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/Path.java
@@ -20,7 +20,7 @@
  * Software Foundation (ASF) under the Apache License, Version 2.0. See the NOTICE file distributed with this work for
  * additional information regarding copyright ownership. */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
 import org.apache.flink.table.store.utils.StringUtils;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/PluginFileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/PluginFileIO.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/PluginFileIO.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/PluginFileIO.java
index 80d3fd51a..ff3da1065 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/PluginFileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/PluginFileIO.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStream.java b/paimon-common/src/main/java/org/apache/paimon/fs/PositionOutputStream.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStream.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/PositionOutputStream.java
index ebb34a3ad..cc7296711 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStream.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/PositionOutputStream.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStreamWrapper.java b/paimon-common/src/main/java/org/apache/paimon/fs/PositionOutputStreamWrapper.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStreamWrapper.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/PositionOutputStreamWrapper.java
index c5635fde2..1da2a1b6f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/PositionOutputStreamWrapper.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/PositionOutputStreamWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStream.java b/paimon-common/src/main/java/org/apache/paimon/fs/SeekableInputStream.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStream.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/SeekableInputStream.java
index bf7215f67..e3cffac13 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStream.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/SeekableInputStream.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStreamWrapper.java b/paimon-common/src/main/java/org/apache/paimon/fs/SeekableInputStreamWrapper.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStreamWrapper.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/SeekableInputStreamWrapper.java
index c9a01003b..4f999f29b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/SeekableInputStreamWrapper.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/SeekableInputStreamWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/UnsupportedSchemeException.java b/paimon-common/src/main/java/org/apache/paimon/fs/UnsupportedSchemeException.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/UnsupportedSchemeException.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/UnsupportedSchemeException.java
index 7119119af..d0a181266 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/UnsupportedSchemeException.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/UnsupportedSchemeException.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIO.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIO.java
index 25a476e0a..a3c4710a8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIO.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs.hadoop;
+package org.apache.paimon.fs.hadoop;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileStatus;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PositionOutputStream;
-import org.apache.flink.table.store.fs.SeekableInputStream;
-import org.apache.flink.table.store.hadoop.SerializableConfiguration;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
+import org.apache.paimon.fs.SeekableInputStream;
+import org.apache.paimon.hadoop.SerializableConfiguration;
 
 import org.apache.hadoop.fs.FSDataInputStream;
 import org.apache.hadoop.fs.FSDataOutputStream;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIOLoader.java b/paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIOLoader.java
similarity index 88%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIOLoader.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIOLoader.java
index 1f2d2a076..68b54bd88 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/hadoop/HadoopFileIOLoader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIOLoader.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs.hadoop;
+package org.apache.paimon.fs.hadoop;
 
-import org.apache.flink.table.store.fs.FileIOLoader;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIOLoader;
+import org.apache.paimon.fs.Path;
 
 /** {@link FileIOLoader} to load {@link HadoopFileIO}. */
 public class HadoopFileIOLoader implements FileIOLoader {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIO.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
index f4a1766d5..a2162a924 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs.local;
+package org.apache.paimon.fs.local;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.FileStatus;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PositionOutputStream;
-import org.apache.flink.table.store.fs.SeekableInputStream;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
+import org.apache.paimon.fs.SeekableInputStream;
 
 import java.io.File;
 import java.io.FileInputStream;
@@ -41,7 +41,7 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.concurrent.locks.ReentrantLock;
 
-import static org.apache.flink.table.store.fs.local.LocalFileIOLoader.SCHEME;
+import static org.apache.paimon.fs.local.LocalFileIOLoader.SCHEME;
 import static org.apache.flink.table.store.utils.Preconditions.checkState;
 
 /** {@link FileIO} for local file. */
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIOLoader.java b/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIOLoader.java
similarity index 88%
rename from paimon-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIOLoader.java
rename to paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIOLoader.java
index 9d7193afb..5d01e09c4 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/fs/local/LocalFileIOLoader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIOLoader.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs.local;
+package org.apache.paimon.fs.local;
 
-import org.apache.flink.table.store.fs.FileIOLoader;
-import org.apache.flink.table.store.fs.Path;
+import org.apache.paimon.fs.FileIOLoader;
+import org.apache.paimon.fs.Path;
 
 /** {@link FileIOLoader} to load {@link LocalFileIO}. */
 public class LocalFileIOLoader implements FileIOLoader {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/hadoop/SerializableConfiguration.java b/paimon-common/src/main/java/org/apache/paimon/hadoop/SerializableConfiguration.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/hadoop/SerializableConfiguration.java
rename to paimon-common/src/main/java/org/apache/paimon/hadoop/SerializableConfiguration.java
index 20a302a85..7475df291 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/hadoop/SerializableConfiguration.java
+++ b/paimon-common/src/main/java/org/apache/paimon/hadoop/SerializableConfiguration.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.flink.table.store.hadoop;
+package org.apache.paimon.hadoop;
 
 import org.apache.hadoop.conf.Configuration;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputDeserializer.java b/paimon-common/src/main/java/org/apache/paimon/io/DataInputDeserializer.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputDeserializer.java
rename to paimon-common/src/main/java/org/apache/paimon/io/DataInputDeserializer.java
index d1992d55f..77a34a918 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputDeserializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/DataInputDeserializer.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.io;
+package org.apache.paimon.io;
 
-import org.apache.flink.table.store.memory.MemoryUtils;
+import org.apache.paimon.memory.MemoryUtils;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputView.java b/paimon-common/src/main/java/org/apache/paimon/io/DataInputView.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputView.java
rename to paimon-common/src/main/java/org/apache/paimon/io/DataInputView.java
index cfcf548f9..8e567413e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/DataInputView.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.io;
+package org.apache.paimon.io;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.io.DataInput;
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStream.java b/paimon-common/src/main/java/org/apache/paimon/io/DataInputViewStream.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStream.java
rename to paimon-common/src/main/java/org/apache/paimon/io/DataInputViewStream.java
index 1a9b82fbf..beaecdc40 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStream.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/DataInputViewStream.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.io;
+package org.apache.paimon.io;
 
 import java.io.EOFException;
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStreamWrapper.java b/paimon-common/src/main/java/org/apache/paimon/io/DataInputViewStreamWrapper.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStreamWrapper.java
rename to paimon-common/src/main/java/org/apache/paimon/io/DataInputViewStreamWrapper.java
index 3db557e5c..b14eddbd3 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataInputViewStreamWrapper.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/DataInputViewStreamWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.io;
+package org.apache.paimon.io;
 
 import java.io.DataInputStream;
 import java.io.EOFException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputSerializer.java b/paimon-common/src/main/java/org/apache/paimon/io/DataOutputSerializer.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputSerializer.java
rename to paimon-common/src/main/java/org/apache/paimon/io/DataOutputSerializer.java
index b32e4c1f4..3ede1649b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/DataOutputSerializer.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.io;
+package org.apache.paimon.io;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.memory.MemorySegmentWritable;
-import org.apache.flink.table.store.memory.MemoryUtils;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentWritable;
+import org.apache.paimon.memory.MemoryUtils;
 import org.apache.flink.table.store.utils.Preconditions;
 
 import java.io.EOFException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputView.java b/paimon-common/src/main/java/org/apache/paimon/io/DataOutputView.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputView.java
rename to paimon-common/src/main/java/org/apache/paimon/io/DataOutputView.java
index 0682132c2..1e12a9769 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/DataOutputView.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.io;
+package org.apache.paimon.io;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.io.DataOutput;
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStream.java b/paimon-common/src/main/java/org/apache/paimon/io/DataOutputViewStream.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStream.java
rename to paimon-common/src/main/java/org/apache/paimon/io/DataOutputViewStream.java
index f012cf22f..69f9e3475 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStream.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/DataOutputViewStream.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.io;
+package org.apache.paimon.io;
 
 import java.io.IOException;
 import java.io.OutputStream;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStreamWrapper.java b/paimon-common/src/main/java/org/apache/paimon/io/DataOutputViewStreamWrapper.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStreamWrapper.java
rename to paimon-common/src/main/java/org/apache/paimon/io/DataOutputViewStreamWrapper.java
index d1e5eadbf..f667f964b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/DataOutputViewStreamWrapper.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/DataOutputViewStreamWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.io;
+package org.apache.paimon.io;
 
 import java.io.DataOutputStream;
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/SeekableDataInputView.java b/paimon-common/src/main/java/org/apache/paimon/io/SeekableDataInputView.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/io/SeekableDataInputView.java
rename to paimon-common/src/main/java/org/apache/paimon/io/SeekableDataInputView.java
index 0da271de4..b766c94d8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/SeekableDataInputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/SeekableDataInputView.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.io;
+package org.apache.paimon.io;
 
 /**
  * Interface marking a {@link DataInputView} as seekable. Seekable views can set the position where
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CacheManager.java b/paimon-common/src/main/java/org/apache/paimon/io/cache/CacheManager.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CacheManager.java
rename to paimon-common/src/main/java/org/apache/paimon/io/cache/CacheManager.java
index bed759999..a18f531a0 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CacheManager.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/cache/CacheManager.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.io.cache;
+package org.apache.paimon.io.cache;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.options.MemorySize;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.options.MemorySize;
 
 import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
 import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CachedRandomInputView.java b/paimon-common/src/main/java/org/apache/paimon/io/cache/CachedRandomInputView.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CachedRandomInputView.java
rename to paimon-common/src/main/java/org/apache/paimon/io/cache/CachedRandomInputView.java
index 2c8016d35..dc723825c 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/io/cache/CachedRandomInputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/cache/CachedRandomInputView.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.io.cache;
+package org.apache.paimon.io.cache;
 
-import org.apache.flink.table.store.io.SeekableDataInputView;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.io.SeekableDataInputView;
+import org.apache.paimon.memory.MemorySegment;
 import org.apache.flink.table.store.utils.MathUtils;
 
 import org.apache.paimon.data.AbstractPagedInputView;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreFactory.java b/paimon-common/src/main/java/org/apache/paimon/lookup/LookupStoreFactory.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreFactory.java
rename to paimon-common/src/main/java/org/apache/paimon/lookup/LookupStoreFactory.java
index 88d2b55db..a09788d7f 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreFactory.java
+++ b/paimon-common/src/main/java/org/apache/paimon/lookup/LookupStoreFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.lookup;
+package org.apache.paimon.lookup;
 
 import java.io.File;
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreReader.java b/paimon-common/src/main/java/org/apache/paimon/lookup/LookupStoreReader.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreReader.java
rename to paimon-common/src/main/java/org/apache/paimon/lookup/LookupStoreReader.java
index 2ceaf0e99..c867e2053 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreReader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/lookup/LookupStoreReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.lookup;
+package org.apache.paimon.lookup;
 
 import java.io.Closeable;
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreWriter.java b/paimon-common/src/main/java/org/apache/paimon/lookup/LookupStoreWriter.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreWriter.java
rename to paimon-common/src/main/java/org/apache/paimon/lookup/LookupStoreWriter.java
index 03fe86a5e..607681204 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/lookup/LookupStoreWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/lookup/LookupStoreWriter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.lookup;
+package org.apache.paimon.lookup;
 
 import java.io.Closeable;
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactory.java b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreFactory.java
similarity index 90%
rename from paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactory.java
rename to paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreFactory.java
index d827775a2..9b5166985 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactory.java
+++ b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreFactory.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.lookup.hash;
+package org.apache.paimon.lookup.hash;
 
-import org.apache.flink.table.store.io.cache.CacheManager;
-import org.apache.flink.table.store.lookup.LookupStoreFactory;
+import org.apache.paimon.io.cache.CacheManager;
+import org.apache.paimon.lookup.LookupStoreFactory;
 
 import java.io.File;
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreReader.java b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreReader.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreReader.java
rename to paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreReader.java
index f04908d7d..dea195a08 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreReader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreReader.java
@@ -20,11 +20,11 @@
  * Software Foundation (ASF) under the Apache License, Version 2.0. See the NOTICE file distributed with this work for
  * additional information regarding copyright ownership. */
 
-package org.apache.flink.table.store.lookup.hash;
+package org.apache.paimon.lookup.hash;
 
-import org.apache.flink.table.store.io.cache.CacheManager;
-import org.apache.flink.table.store.io.cache.CachedRandomInputView;
-import org.apache.flink.table.store.lookup.LookupStoreReader;
+import org.apache.paimon.io.cache.CacheManager;
+import org.apache.paimon.io.cache.CachedRandomInputView;
+import org.apache.paimon.lookup.LookupStoreReader;
 import org.apache.flink.table.store.utils.MurmurHashUtils;
 import org.apache.flink.table.store.utils.VarLengthIntUtils;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreWriter.java b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreWriter.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreWriter.java
rename to paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreWriter.java
index 2e0be8014..3a0c8e9b6 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreWriter.java
@@ -20,9 +20,9 @@
  * Software Foundation (ASF) under the Apache License, Version 2.0. See the NOTICE file distributed with this work for
  * additional information regarding copyright ownership. */
 
-package org.apache.flink.table.store.lookup.hash;
+package org.apache.paimon.lookup.hash;
 
-import org.apache.flink.table.store.lookup.LookupStoreWriter;
+import org.apache.paimon.lookup.LookupStoreWriter;
 import org.apache.flink.table.store.utils.MurmurHashUtils;
 import org.apache.flink.table.store.utils.VarLengthIntUtils;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegment.java b/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegment.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegment.java
rename to paimon-common/src/main/java/org/apache/paimon/memory/MemorySegment.java
index 39dfd9f0a..1f7281a91 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegment.java
+++ b/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegment.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.memory;
+package org.apache.paimon.memory;
 
 import org.apache.paimon.annotation.Experimental;
 
@@ -32,7 +32,7 @@ import java.nio.ByteOrder;
 import java.nio.ReadOnlyBufferException;
 import java.util.Objects;
 
-import static org.apache.flink.table.store.memory.MemoryUtils.getByteBufferAddress;
+import static org.apache.paimon.memory.MemoryUtils.getByteBufferAddress;
 
 /**
  * This class represents a piece of memory.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentSource.java b/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentSource.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentSource.java
rename to paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentSource.java
index 805b6484f..cc4ceebd7 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentSource.java
+++ b/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.memory;
+package org.apache.paimon.memory;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentUtils.java b/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentUtils.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentUtils.java
index 4954541af..4277629d9 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentUtils.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.memory;
+package org.apache.paimon.memory;
 
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataOutputView;
 import org.apache.flink.table.store.utils.MurmurHashUtils;
 
 import org.apache.paimon.annotation.VisibleForTesting;
@@ -34,8 +34,8 @@ import org.apache.paimon.data.Timestamp;
 
 import java.io.IOException;
 
-import static org.apache.flink.table.store.memory.MemorySegment.BYTE_ARRAY_BASE_OFFSET;
-import static org.apache.flink.table.store.memory.MemorySegment.LITTLE_ENDIAN;
+import static org.apache.paimon.memory.MemorySegment.BYTE_ARRAY_BASE_OFFSET;
+import static org.apache.paimon.memory.MemorySegment.LITTLE_ENDIAN;
 import static org.apache.paimon.data.BinarySection.HIGHEST_FIRST_BIT;
 import static org.apache.paimon.data.BinarySection.HIGHEST_SECOND_TO_EIGHTH_BIT;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentWritable.java b/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentWritable.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentWritable.java
rename to paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentWritable.java
index 97f99ed6c..47c2a129d 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemorySegmentWritable.java
+++ b/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentWritable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.memory;
+package org.apache.paimon.memory;
 
 import java.io.IOException;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemoryUtils.java b/paimon-common/src/main/java/org/apache/paimon/memory/MemoryUtils.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/memory/MemoryUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/memory/MemoryUtils.java
index 3e4390b53..316cfb48a 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/memory/MemoryUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/memory/MemoryUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.memory;
+package org.apache.paimon.memory;
 
 import org.apache.flink.table.store.utils.Preconditions;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/CatalogOptions.java b/paimon-common/src/main/java/org/apache/paimon/options/CatalogOptions.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/CatalogOptions.java
rename to paimon-common/src/main/java/org/apache/paimon/options/CatalogOptions.java
index 667660983..f053fd455 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/CatalogOptions.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/CatalogOptions.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options;
+package org.apache.paimon.options;
 
 import org.apache.flink.table.store.table.TableType;
 
 import java.time.Duration;
 
-import static org.apache.flink.table.store.options.ConfigOptions.key;
+import static org.apache.paimon.options.ConfigOptions.key;
 
 /** Options for catalog. */
 public class CatalogOptions {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOption.java b/paimon-common/src/main/java/org/apache/paimon/options/ConfigOption.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOption.java
rename to paimon-common/src/main/java/org/apache/paimon/options/ConfigOption.java
index 5ef84f74f..28fbc73cf 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOption.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/ConfigOption.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options;
+package org.apache.paimon.options;
 
-import org.apache.flink.table.store.options.description.Description;
+import org.apache.paimon.options.description.Description;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOptions.java b/paimon-common/src/main/java/org/apache/paimon/options/ConfigOptions.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOptions.java
rename to paimon-common/src/main/java/org/apache/paimon/options/ConfigOptions.java
index 7c8ac3b0e..3fcdcd233 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/ConfigOptions.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/ConfigOptions.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options;
+package org.apache.paimon.options;
 
-import org.apache.flink.table.store.options.description.Description;
+import org.apache.paimon.options.description.Description;
 
 import org.apache.paimon.annotation.Experimental;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/FallbackKey.java b/paimon-common/src/main/java/org/apache/paimon/options/FallbackKey.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/FallbackKey.java
rename to paimon-common/src/main/java/org/apache/paimon/options/FallbackKey.java
index 3be7c0d37..7ddabf6f5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/FallbackKey.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/FallbackKey.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options;
+package org.apache.paimon.options;
 
 /** A key with FallbackKeys will fall back to the FallbackKeys if it itself is not configured. */
 public class FallbackKey {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/MemorySize.java b/paimon-common/src/main/java/org/apache/paimon/options/MemorySize.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/MemorySize.java
rename to paimon-common/src/main/java/org/apache/paimon/options/MemorySize.java
index 06c065bf6..41ad758f8 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/MemorySize.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/MemorySize.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options;
+package org.apache.paimon.options;
 
 import org.apache.paimon.annotation.Experimental;
 
@@ -28,12 +28,12 @@ import java.util.Locale;
 import java.util.Optional;
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.options.MemorySize.MemoryUnit.BYTES;
-import static org.apache.flink.table.store.options.MemorySize.MemoryUnit.GIGA_BYTES;
-import static org.apache.flink.table.store.options.MemorySize.MemoryUnit.KILO_BYTES;
-import static org.apache.flink.table.store.options.MemorySize.MemoryUnit.MEGA_BYTES;
-import static org.apache.flink.table.store.options.MemorySize.MemoryUnit.TERA_BYTES;
-import static org.apache.flink.table.store.options.MemorySize.MemoryUnit.hasUnit;
+import static org.apache.paimon.options.MemorySize.MemoryUnit.BYTES;
+import static org.apache.paimon.options.MemorySize.MemoryUnit.GIGA_BYTES;
+import static org.apache.paimon.options.MemorySize.MemoryUnit.KILO_BYTES;
+import static org.apache.paimon.options.MemorySize.MemoryUnit.MEGA_BYTES;
+import static org.apache.paimon.options.MemorySize.MemoryUnit.TERA_BYTES;
+import static org.apache.paimon.options.MemorySize.MemoryUnit.hasUnit;
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
 import static org.apache.flink.table.store.utils.Preconditions.checkNotNull;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/Options.java b/paimon-common/src/main/java/org/apache/paimon/options/Options.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/Options.java
rename to paimon-common/src/main/java/org/apache/paimon/options/Options.java
index e4557a763..80c8e3579 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/Options.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/Options.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options;
+package org.apache.paimon.options;
 
 import org.apache.paimon.annotation.Experimental;
 
@@ -31,10 +31,10 @@ import java.util.Properties;
 import java.util.Set;
 import java.util.function.BiFunction;
 
-import static org.apache.flink.table.store.options.OptionsUtils.canBePrefixMap;
-import static org.apache.flink.table.store.options.OptionsUtils.containsPrefixMap;
-import static org.apache.flink.table.store.options.OptionsUtils.convertToPropertiesPrefixed;
-import static org.apache.flink.table.store.options.OptionsUtils.removePrefixMap;
+import static org.apache.paimon.options.OptionsUtils.canBePrefixMap;
+import static org.apache.paimon.options.OptionsUtils.containsPrefixMap;
+import static org.apache.paimon.options.OptionsUtils.convertToPropertiesPrefixed;
+import static org.apache.paimon.options.OptionsUtils.removePrefixMap;
 
 /**
  * Options which stores key/value pairs.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/OptionsUtils.java b/paimon-common/src/main/java/org/apache/paimon/options/OptionsUtils.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/OptionsUtils.java
rename to paimon-common/src/main/java/org/apache/paimon/options/OptionsUtils.java
index a94b72826..d39a906a5 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/OptionsUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/OptionsUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options;
+package org.apache.paimon.options;
 
 import org.apache.flink.table.store.utils.TimeUtils;
 
@@ -31,7 +31,7 @@ import java.util.Locale;
 import java.util.Map;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.options.StructuredOptionsSplitter.escapeWithSingleQuote;
+import static org.apache.paimon.options.StructuredOptionsSplitter.escapeWithSingleQuote;
 
 /** Utility class for {@link Options} related helper functions. */
 public class OptionsUtils {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/StructuredOptionsSplitter.java b/paimon-common/src/main/java/org/apache/paimon/options/StructuredOptionsSplitter.java
similarity index 99%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/StructuredOptionsSplitter.java
rename to paimon-common/src/main/java/org/apache/paimon/options/StructuredOptionsSplitter.java
index 1d96bf0ed..9e9b6155e 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/StructuredOptionsSplitter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/StructuredOptionsSplitter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options;
+package org.apache.paimon.options;
 
 import java.util.ArrayList;
 import java.util.Arrays;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/BlockElement.java b/paimon-common/src/main/java/org/apache/paimon/options/description/BlockElement.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/description/BlockElement.java
rename to paimon-common/src/main/java/org/apache/paimon/options/description/BlockElement.java
index bcbeee4a2..c88887194 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/BlockElement.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/BlockElement.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options.description;
+package org.apache.paimon.options.description;
 
 /** Part of description that represents a block e.g. some text, linebreak or a list. */
 public interface BlockElement extends DescriptionElement {}
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/DescribedEnum.java b/paimon-common/src/main/java/org/apache/paimon/options/description/DescribedEnum.java
similarity index 93%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/description/DescribedEnum.java
rename to paimon-common/src/main/java/org/apache/paimon/options/description/DescribedEnum.java
index 9f222859c..77c700454 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/DescribedEnum.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/DescribedEnum.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options.description;
+package org.apache.paimon.options.description;
 
-import org.apache.flink.table.store.options.ConfigOption;
+import org.apache.paimon.options.ConfigOption;
 
 /**
  * Describe enum constants used in {@link ConfigOption}s.
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/Description.java b/paimon-common/src/main/java/org/apache/paimon/options/description/Description.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/description/Description.java
rename to paimon-common/src/main/java/org/apache/paimon/options/description/Description.java
index 7f9a02fc3..1ed419501 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/Description.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/Description.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options.description;
+package org.apache.paimon.options.description;
 
 import org.apache.paimon.annotation.Experimental;
 
@@ -24,7 +24,7 @@ import java.util.ArrayList;
 import java.util.List;
 
 /**
- * Description for {@link org.apache.flink.table.store.options.ConfigOption}. Allows providing
+ * Description for {@link org.apache.paimon.options.ConfigOption}. Allows providing
  * multiple rich formats.
  *
  * @since 0.4.0
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/DescriptionElement.java b/paimon-common/src/main/java/org/apache/paimon/options/description/DescriptionElement.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/description/DescriptionElement.java
rename to paimon-common/src/main/java/org/apache/paimon/options/description/DescriptionElement.java
index 356d8bb33..167893dfd 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/DescriptionElement.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/DescriptionElement.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options.description;
+package org.apache.paimon.options.description;
 
 /** Part of a {@link Description} that can be converted into String representation. */
 interface DescriptionElement {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/Formatter.java b/paimon-common/src/main/java/org/apache/paimon/options/description/Formatter.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/description/Formatter.java
rename to paimon-common/src/main/java/org/apache/paimon/options/description/Formatter.java
index 74012dc6f..d510ca9b9 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/Formatter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/Formatter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options.description;
+package org.apache.paimon.options.description;
 
 import java.util.EnumSet;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/HtmlFormatter.java b/paimon-common/src/main/java/org/apache/paimon/options/description/HtmlFormatter.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/description/HtmlFormatter.java
rename to paimon-common/src/main/java/org/apache/paimon/options/description/HtmlFormatter.java
index 6cad7b0e1..680121355 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/HtmlFormatter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/HtmlFormatter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options.description;
+package org.apache.paimon.options.description;
 
 import java.util.EnumSet;
 
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/InlineElement.java b/paimon-common/src/main/java/org/apache/paimon/options/description/InlineElement.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/description/InlineElement.java
rename to paimon-common/src/main/java/org/apache/paimon/options/description/InlineElement.java
index 20a8f77bc..8f5816426 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/InlineElement.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/InlineElement.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options.description;
+package org.apache.paimon.options.description;
 
 /** Part of description that represents an element inside a block e.g. a link. */
 public interface InlineElement extends DescriptionElement {}
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/LineBreakElement.java b/paimon-common/src/main/java/org/apache/paimon/options/description/LineBreakElement.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/description/LineBreakElement.java
rename to paimon-common/src/main/java/org/apache/paimon/options/description/LineBreakElement.java
index 0172ff122..531ee20e6 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/LineBreakElement.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/LineBreakElement.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options.description;
+package org.apache.paimon.options.description;
 
 /** Represents a line break in the {@link Description}. */
 public class LineBreakElement implements InlineElement, BlockElement {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/LinkElement.java b/paimon-common/src/main/java/org/apache/paimon/options/description/LinkElement.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/description/LinkElement.java
rename to paimon-common/src/main/java/org/apache/paimon/options/description/LinkElement.java
index ca2f24279..1e4f207d3 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/LinkElement.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/LinkElement.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options.description;
+package org.apache.paimon.options.description;
 
 /** Element that represents a link in the {@link Description}. */
 public class LinkElement implements InlineElement {
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/ListElement.java b/paimon-common/src/main/java/org/apache/paimon/options/description/ListElement.java
similarity index 96%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/description/ListElement.java
rename to paimon-common/src/main/java/org/apache/paimon/options/description/ListElement.java
index b3ca330e1..4e3d1023b 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/ListElement.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/ListElement.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options.description;
+package org.apache.paimon.options.description;
 
 import java.util.Arrays;
 import java.util.List;
diff --git a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/TextElement.java b/paimon-common/src/main/java/org/apache/paimon/options/description/TextElement.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/flink/table/store/options/description/TextElement.java
rename to paimon-common/src/main/java/org/apache/paimon/options/description/TextElement.java
index 7ed595d7d..8ae5c2060 100644
--- a/paimon-common/src/main/java/org/apache/flink/table/store/options/description/TextElement.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/TextElement.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.options.description;
+package org.apache.paimon.options.description;
 
 import org.apache.flink.table.store.utils.StringUtils;
 
diff --git a/paimon-common/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader b/paimon-common/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
similarity index 87%
rename from paimon-common/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
rename to paimon-common/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
index 571e85278..053ee9ab0 100644
--- a/paimon-common/src/main/resources/META-INF/services/org.apache.flink.table.store.fs.FileIOLoader
+++ b/paimon-common/src/main/resources/META-INF/services/org.apache.flink.table.store.org.apache.paimon.fs.FileIOLoader
@@ -13,5 +13,5 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.flink.table.store.fs.local.LocalFileIOLoader
-org.apache.flink.table.store.fs.hadoop.HadoopFileIOLoader
+org.apache.paimon.fs.local.LocalFileIOLoader
+org.apache.paimon.fs.hadoop.HadoopFileIOLoader
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java
index b63f59e9a..bead897fc 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java
+++ b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGenVisitorBase.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.datagen;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypeDefaultVisitor;
 import org.apache.flink.table.store.types.DateType;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorContainer.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorContainer.java
index 1210a4927..c6dc52922 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorContainer.java
+++ b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/DataGeneratorContainer.java
@@ -18,7 +18,7 @@
 
 package org.apache.flink.table.store.datagen;
 
-import org.apache.flink.table.store.options.ConfigOption;
+import org.apache.paimon.options.ConfigOption;
 
 import java.util.Arrays;
 import java.util.HashSet;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java
index cd70e52b5..70cc0d27f 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java
+++ b/paimon-common/src/test/java/org/apache/flink/table/store/datagen/RandomGeneratorVisitor.java
@@ -18,9 +18,9 @@
 
 package org.apache.flink.table.store.datagen;
 
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.ConfigOptions;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.ConfigOptions;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.BinaryType;
@@ -59,7 +59,7 @@ import java.util.Set;
 import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.options.ConfigOptions.key;
+import static org.apache.paimon.options.ConfigOptions.key;
 
 /** Creates a random {@link DataGeneratorContainer} for a particular logical type. */
 @SuppressWarnings("unchecked")
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java b/paimon-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java
index 0ae3d0d5b..0c9e9f128 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java
+++ b/paimon-common/src/test/java/org/apache/flink/table/store/utils/RowDataUtilsTest.java
@@ -21,7 +21,7 @@ package org.apache.flink.table.store.utils;
 import org.apache.flink.table.store.datagen.DataGenerator;
 import org.apache.flink.table.store.datagen.RandomGeneratorVisitor;
 import org.apache.flink.table.store.datagen.RowDataGenerator;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.DataTypeRoot;
 import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/BinaryRowTest.java b/paimon-common/src/test/java/org/apache/paimon/data/BinaryRowTest.java
index 773929918..02577932f 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/BinaryRowTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/BinaryRowTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.IntType;
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/BinaryStringTest.java b/paimon-common/src/test/java/org/apache/paimon/data/BinaryStringTest.java
index 5c4a9debd..23192b63c 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/BinaryStringTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/BinaryStringTest.java
@@ -17,7 +17,7 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 import org.apache.flink.table.store.utils.SortUtil;
 
 import org.apache.paimon.testutils.junit.parameterized.ParameterizedTestExtension;
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/DataFormatTestUtil.java b/paimon-common/src/test/java/org/apache/paimon/data/DataFormatTestUtil.java
index 1d20aa618..0826658df 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/DataFormatTestUtil.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/DataFormatTestUtil.java
@@ -17,7 +17,7 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.StringUtils;
 
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/NestedRowTest.java b/paimon-common/src/test/java/org/apache/paimon/data/NestedRowTest.java
index 60b36afdf..3ca972b04 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/NestedRowTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/NestedRowTest.java
@@ -17,7 +17,7 @@
 
 package org.apache.paimon.data;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 import org.apache.flink.table.store.types.DataTypes;
 
 import org.apache.paimon.data.serializer.InternalRowSerializer;
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalArraySerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalArraySerializerTest.java
index c7f2c7469..b1a2a662c 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalArraySerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalArraySerializerTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 import org.apache.flink.table.store.types.DataTypes;
 
 import org.apache.paimon.data.BinaryArray;
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestBase.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestBase.java
index 4fc0353de..31c0a9a16 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestBase.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestBase.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.flink.table.store.io.DataInputDeserializer;
-import org.apache.flink.table.store.io.DataInputView;
-import org.apache.flink.table.store.io.DataOutputSerializer;
-import org.apache.flink.table.store.io.DataOutputView;
+import org.apache.paimon.io.DataInputDeserializer;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputSerializer;
+import org.apache.paimon.io.DataOutputView;
 import org.apache.flink.table.store.utils.InstantiationUtil;
 
 import org.junit.jupiter.api.Test;
diff --git a/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java b/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
index d9f721ed1..afc4c3e12 100644
--- a/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
+++ b/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.fs.PositionOutputStream;
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.BinaryType;
 import org.apache.flink.table.store.types.CharType;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/fs/FileIOBehaviorTestBase.java b/paimon-common/src/test/java/org/apache/paimon/fs/FileIOBehaviorTestBase.java
similarity index 99%
rename from paimon-common/src/test/java/org/apache/flink/table/store/fs/FileIOBehaviorTestBase.java
rename to paimon-common/src/test/java/org/apache/paimon/fs/FileIOBehaviorTestBase.java
index 4c187b14d..9230efcb0 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/fs/FileIOBehaviorTestBase.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/FileIOBehaviorTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
 import org.apache.flink.table.store.utils.StringUtils;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/fs/FileIOFinder.java b/paimon-common/src/test/java/org/apache/paimon/fs/FileIOFinder.java
similarity index 92%
rename from paimon-common/src/test/java/org/apache/flink/table/store/fs/FileIOFinder.java
rename to paimon-common/src/test/java/org/apache/paimon/fs/FileIOFinder.java
index 8e98de0bc..7ee779634 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/fs/FileIOFinder.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/FileIOFinder.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import java.io.IOException;
 import java.io.UncheckedIOException;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/fs/HadoopConfigLoadingTest.java b/paimon-common/src/test/java/org/apache/paimon/fs/HadoopConfigLoadingTest.java
similarity index 99%
rename from paimon-common/src/test/java/org/apache/flink/table/store/fs/HadoopConfigLoadingTest.java
rename to paimon-common/src/test/java/org/apache/paimon/fs/HadoopConfigLoadingTest.java
index 23a4b6042..04c4dc752 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/fs/HadoopConfigLoadingTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/HadoopConfigLoadingTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.utils.CommonTestUtils;
 import org.apache.flink.table.store.utils.HadoopUtils;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/fs/HadoopLocalFileIOBehaviorTest.java b/paimon-common/src/test/java/org/apache/paimon/fs/HadoopLocalFileIOBehaviorTest.java
similarity index 95%
rename from paimon-common/src/test/java/org/apache/flink/table/store/fs/HadoopLocalFileIOBehaviorTest.java
rename to paimon-common/src/test/java/org/apache/paimon/fs/HadoopLocalFileIOBehaviorTest.java
index 8b799be29..57a9aba7f 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/fs/HadoopLocalFileIOBehaviorTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/HadoopLocalFileIOBehaviorTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
-import org.apache.flink.table.store.fs.hadoop.HadoopFileIO;
+import org.apache.paimon.fs.hadoop.HadoopFileIO;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.RawLocalFileSystem;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/fs/HdfsBehaviorTest.java b/paimon-common/src/test/java/org/apache/paimon/fs/HdfsBehaviorTest.java
similarity index 96%
rename from paimon-common/src/test/java/org/apache/flink/table/store/fs/HdfsBehaviorTest.java
rename to paimon-common/src/test/java/org/apache/paimon/fs/HdfsBehaviorTest.java
index 28803eaa9..e2f0f57c7 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/fs/HdfsBehaviorTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/HdfsBehaviorTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
-import org.apache.flink.table.store.fs.hadoop.HadoopFileIO;
+import org.apache.paimon.fs.hadoop.HadoopFileIO;
 import org.apache.flink.table.store.utils.OperatingSystem;
 
 import org.apache.hadoop.conf.Configuration;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/fs/LocalFileIOBehaviorTest.java b/paimon-common/src/test/java/org/apache/paimon/fs/LocalFileIOBehaviorTest.java
similarity index 92%
rename from paimon-common/src/test/java/org/apache/flink/table/store/fs/LocalFileIOBehaviorTest.java
rename to paimon-common/src/test/java/org/apache/paimon/fs/LocalFileIOBehaviorTest.java
index 71a0ba2ee..2477bdcdb 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/fs/LocalFileIOBehaviorTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/LocalFileIOBehaviorTest.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.fs;
+package org.apache.paimon.fs;
 
-import org.apache.flink.table.store.fs.local.LocalFileIO;
+import org.apache.paimon.fs.local.LocalFileIO;
 
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/io/cache/CachedRandomInputViewTest.java b/paimon-common/src/test/java/org/apache/paimon/io/cache/CachedRandomInputViewTest.java
similarity index 95%
rename from paimon-common/src/test/java/org/apache/flink/table/store/io/cache/CachedRandomInputViewTest.java
rename to paimon-common/src/test/java/org/apache/paimon/io/cache/CachedRandomInputViewTest.java
index e9e2f090d..acee86e77 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/io/cache/CachedRandomInputViewTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/io/cache/CachedRandomInputViewTest.java
@@ -16,10 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.io.cache;
+package org.apache.paimon.io.cache;
 
-import org.apache.flink.table.store.memory.MemorySegment;
-import org.apache.flink.table.store.options.MemorySize;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.options.MemorySize;
 
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactoryTest.java b/paimon-common/src/test/java/org/apache/paimon/lookup/hash/HashLookupStoreFactoryTest.java
similarity index 98%
rename from paimon-common/src/test/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactoryTest.java
rename to paimon-common/src/test/java/org/apache/paimon/lookup/hash/HashLookupStoreFactoryTest.java
index fe058a94a..a0c822280 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/lookup/hash/HashLookupStoreFactoryTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/lookup/hash/HashLookupStoreFactoryTest.java
@@ -20,11 +20,11 @@
  * Software Foundation (ASF) under the Apache License, Version 2.0. See the NOTICE file distributed with this work for
  * additional information regarding copyright ownership. */
 
-package org.apache.flink.table.store.lookup.hash;
+package org.apache.paimon.lookup.hash;
 
-import org.apache.flink.table.store.io.DataOutputSerializer;
-import org.apache.flink.table.store.io.cache.CacheManager;
-import org.apache.flink.table.store.options.MemorySize;
+import org.apache.paimon.io.DataOutputSerializer;
+import org.apache.paimon.io.cache.CacheManager;
+import org.apache.paimon.options.MemorySize;
 import org.apache.flink.table.store.utils.MathUtils;
 import org.apache.flink.table.store.utils.VarLengthIntUtils;
 
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/memory/MemorySegmentTestBase.java b/paimon-common/src/test/java/org/apache/paimon/memory/MemorySegmentTestBase.java
similarity index 99%
rename from paimon-common/src/test/java/org/apache/flink/table/store/memory/MemorySegmentTestBase.java
rename to paimon-common/src/test/java/org/apache/paimon/memory/MemorySegmentTestBase.java
index ac42d4ffa..8d8f90bcb 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/memory/MemorySegmentTestBase.java
+++ b/paimon-common/src/test/java/org/apache/paimon/memory/MemorySegmentTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.memory;
+package org.apache.paimon.memory;
 
 import org.apache.paimon.testutils.junit.parameterized.Parameters;
 import org.junit.jupiter.api.TestTemplate;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/memory/OffHeapDirectMemorySegmentTest.java b/paimon-common/src/test/java/org/apache/paimon/memory/OffHeapDirectMemorySegmentTest.java
similarity index 98%
rename from paimon-common/src/test/java/org/apache/flink/table/store/memory/OffHeapDirectMemorySegmentTest.java
rename to paimon-common/src/test/java/org/apache/paimon/memory/OffHeapDirectMemorySegmentTest.java
index 3945e2972..2cbe0313c 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/memory/OffHeapDirectMemorySegmentTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/memory/OffHeapDirectMemorySegmentTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.memory;
+package org.apache.paimon.memory;
 
 import org.apache.paimon.testutils.junit.parameterized.ParameterizedTestExtension;
 import org.junit.jupiter.api.TestTemplate;
diff --git a/paimon-common/src/test/java/org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java b/paimon-common/src/test/java/org/apache/paimon/memory/OnHeapMemorySegmentTest.java
similarity index 98%
rename from paimon-common/src/test/java/org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java
rename to paimon-common/src/test/java/org/apache/paimon/memory/OnHeapMemorySegmentTest.java
index d39365f8a..dcebaea3a 100644
--- a/paimon-common/src/test/java/org/apache/flink/table/store/memory/OnHeapMemorySegmentTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/memory/OnHeapMemorySegmentTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.memory;
+package org.apache.paimon.memory;
 
 import org.apache.paimon.testutils.junit.parameterized.ParameterizedTestExtension;
 import org.junit.jupiter.api.TestTemplate;
diff --git a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
index 89506c73e..05132af6a 100644
--- a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
+++ b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
@@ -18,13 +18,13 @@
 
 package org.apache.paimon.docs.configuration;
 
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.description.DescribedEnum;
-import org.apache.flink.table.store.options.description.Description;
-import org.apache.flink.table.store.options.description.Formatter;
-import org.apache.flink.table.store.options.description.HtmlFormatter;
-import org.apache.flink.table.store.options.description.InlineElement;
-import org.apache.flink.table.store.options.description.TextElement;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.description.DescribedEnum;
+import org.apache.paimon.options.description.Description;
+import org.apache.paimon.options.description.Formatter;
+import org.apache.paimon.options.description.HtmlFormatter;
+import org.apache.paimon.options.description.InlineElement;
+import org.apache.paimon.options.description.TextElement;
 import org.apache.flink.table.store.utils.Pair;
 import org.apache.flink.table.store.utils.ThrowingConsumer;
 import org.apache.flink.table.store.utils.TimeUtils;
@@ -61,7 +61,7 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.options.description.TextElement.text;
+import static org.apache.paimon.options.description.TextElement.text;
 import static org.apache.paimon.docs.util.Utils.escapeCharacters;
 
 /** Class used for generating code based documentation of configuration parameters. */
@@ -72,7 +72,7 @@ public class ConfigOptionsDocGenerator {
     static final OptionsClassLocation[] LOCATIONS =
             new OptionsClassLocation[] {
                 new OptionsClassLocation(
-                        "flink-table-store-common", "org.apache.flink.table.store.options"),
+                        "flink-table-store-common", "org.apache.paimon.options"),
                 new OptionsClassLocation("flink-table-store-core", "org.apache.flink.table.store"),
                 new OptionsClassLocation(
                         "flink-table-store-flink/flink-table-store-flink-common",
diff --git a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/OptionsClassLocation.java b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/OptionsClassLocation.java
index ea685d3cc..bac2886f2 100644
--- a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/OptionsClassLocation.java
+++ b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/OptionsClassLocation.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.docs.configuration;
 
-import org.apache.flink.table.store.options.ConfigOption;
+import org.apache.paimon.options.ConfigOption;
 
 /** Simple descriptor for the location of a class containing {@link ConfigOption ConfigOptions}. */
 class OptionsClassLocation {
diff --git a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
index 356961d85..20e5d0958 100644
--- a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
@@ -18,13 +18,13 @@
 
 package org.apache.paimon.docs.configuration;
 
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.ConfigOptions;
-import org.apache.flink.table.store.options.MemorySize;
-import org.apache.flink.table.store.options.description.DescribedEnum;
-import org.apache.flink.table.store.options.description.Formatter;
-import org.apache.flink.table.store.options.description.HtmlFormatter;
-import org.apache.flink.table.store.options.description.InlineElement;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.ConfigOptions;
+import org.apache.paimon.options.MemorySize;
+import org.apache.paimon.options.description.DescribedEnum;
+import org.apache.paimon.options.description.Formatter;
+import org.apache.paimon.options.description.HtmlFormatter;
+import org.apache.paimon.options.description.InlineElement;
 import org.apache.flink.table.store.utils.Pair;
 
 import org.apache.paimon.annotation.ConfigGroup;
@@ -43,7 +43,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.flink.table.store.options.description.TextElement.text;
+import static org.apache.paimon.options.description.TextElement.text;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for the {@link ConfigOptionsDocGenerator}. */
diff --git a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
index 773ce46ce..91d31bcb7 100644
--- a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.docs.configuration;
 
-import org.apache.flink.table.store.options.ConfigOption;
+import org.apache.paimon.options.ConfigOption;
 import org.apache.flink.table.store.utils.Pair;
 
 import org.apache.paimon.annotation.Documentation;
diff --git a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
index faa591096..5b18ea18a 100644
--- a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.docs.configuration.data;
 
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.ConfigOptions;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.ConfigOptions;
 
 import org.apache.paimon.annotation.Documentation;
 
diff --git a/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
index cc456de1c..0c5595fe5 100644
--- a/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
+++ b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
@@ -20,7 +20,7 @@ package org.apache.paimon.oss;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
diff --git a/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
index 807376b40..b9b6a6b0b 100644
--- a/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
+++ b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
@@ -20,7 +20,7 @@ package org.apache.paimon.s3;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.fs.FileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
index 65073e571..d24f5ec1b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
@@ -33,7 +33,7 @@ import org.apache.flink.table.store.CoreOptions.LogConsistency;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
 import org.apache.flink.table.store.utils.Preconditions;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
index 71408352e..0b5ac14b8 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
@@ -23,7 +23,7 @@ import org.apache.flink.api.common.typeutils.TypeSerializerSchemaCompatibility;
 import org.apache.flink.api.common.typeutils.TypeSerializerSnapshot;
 import org.apache.flink.core.memory.DataInputView;
 import org.apache.flink.core.memory.DataOutputView;
-import org.apache.flink.table.store.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
index 2a1901a3c..81bffe328 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
@@ -21,8 +21,8 @@ package org.apache.paimon.connector;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.catalog.Catalog;
 import org.apache.flink.table.store.file.catalog.CatalogFactory;
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.ConfigOptions;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.ConfigOptions;
 
 import java.util.Collections;
 import java.util.Set;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
index 29b9e41a2..66d34b21b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
@@ -19,17 +19,17 @@
 package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.ConfigOptions;
-import org.apache.flink.table.store.options.description.Description;
-import org.apache.flink.table.store.options.description.TextElement;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.ConfigOptions;
+import org.apache.paimon.options.description.Description;
+import org.apache.paimon.options.description.TextElement;
 
 import java.lang.reflect.Field;
 import java.time.Duration;
 import java.util.ArrayList;
 import java.util.List;
 
-import static org.apache.flink.table.store.options.ConfigOptions.key;
+import static org.apache.paimon.options.ConfigOptions.key;
 
 /** Options for flink connector. */
 public class FlinkConnectorOptions {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
index 593917a1d..7ad2d1967 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
@@ -20,7 +20,7 @@ package org.apache.paimon.connector;
 
 import org.apache.flink.configuration.ReadableConfig;
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import java.util.Map;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
index 497f1a521..0d85ea78d 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
@@ -28,8 +28,8 @@ import org.apache.flink.table.expressions.TypeLiteralExpression;
 import org.apache.flink.table.expressions.ValueLiteralExpression;
 import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
 import org.apache.flink.table.functions.FunctionDefinition;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.utils.TypeUtils;
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.logical.LogicalType;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
index 938e8814d..fc10dbc2d 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.MemorySize;
-import org.apache.flink.table.store.options.Options;
-import org.apache.flink.table.store.options.description.Description;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.MemorySize;
+import org.apache.paimon.options.Options;
+import org.apache.paimon.options.description.Description;
 
 import org.apache.paimon.annotation.Documentation;
 import org.rocksdb.BlockBasedTableConfig;
@@ -36,9 +36,9 @@ import org.rocksdb.TableFormatConfig;
 
 import java.io.File;
 
-import static org.apache.flink.table.store.options.ConfigOptions.key;
-import static org.apache.flink.table.store.options.description.LinkElement.link;
-import static org.apache.flink.table.store.options.description.TextElement.code;
+import static org.apache.paimon.options.ConfigOptions.key;
+import static org.apache.paimon.options.description.LinkElement.link;
+import static org.apache.paimon.options.description.TextElement.code;
 import static org.rocksdb.CompactionStyle.FIFO;
 import static org.rocksdb.CompactionStyle.LEVEL;
 import static org.rocksdb.CompactionStyle.NONE;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
index c22da6f64..d28a8d97e 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
@@ -28,7 +28,7 @@ import org.apache.flink.table.store.file.catalog.CatalogLock;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import org.apache.paimon.connector.sink.TableStoreSink;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
index 6ab601903..5d391aa2e 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
@@ -29,8 +29,8 @@ import org.apache.flink.table.store.file.catalog.Catalog;
 import org.apache.flink.table.store.file.catalog.CatalogFactory;
 import org.apache.flink.table.store.file.catalog.Identifier;
 import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.flink.table.store.options.CatalogOptions;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.CatalogOptions;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.Table;
 import org.apache.flink.table.store.types.DataType;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
index 86f1eaff1..eca62d6b8 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
@@ -27,7 +27,7 @@ import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 
 import org.apache.paimon.connector.sink.CompactorSinkBuilder;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogOptions.java
index 89c17ebe8..a6252cce6 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogOptions.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.connector.kafka;
 
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.ConfigOptions;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.ConfigOptions;
 
 /** Options for kafka log. */
 public class KafkaLogOptions {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
index 3f3c95218..470a62798 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
@@ -30,7 +30,7 @@ import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.factories.FactoryUtil;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.utils.DataTypeUtils;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
index d31757108..1aedc2f06 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
@@ -23,10 +23,10 @@ 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.store.CoreOptions;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateFilter;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateFilter;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.source.StreamDataTableScan;
 import org.apache.flink.table.store.table.source.TableStreamingReader;
@@ -60,7 +60,7 @@ import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.transformFieldMapping;
+import static org.apache.paimon.file.predicate.PredicateBuilder.transformFieldMapping;
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
 import static org.apache.paimon.connector.RocksDBOptions.LOOKUP_CACHE_ROWS;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
index 24c06e220..879deebbe 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.connector.lookup;
 
-import org.apache.flink.table.store.io.DataInputDeserializer;
-import org.apache.flink.table.store.io.DataOutputSerializer;
+import org.apache.paimon.io.DataInputDeserializer;
+import org.apache.paimon.io.DataOutputSerializer;
 
 import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
 import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java
index 5891b449b..cd0e3b655 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java
@@ -40,7 +40,7 @@ public class RocksDBStateFactory implements Closeable {
 
     private final ColumnFamilyOptions columnFamilyOptions;
 
-    public RocksDBStateFactory(String path, org.apache.flink.table.store.options.Options conf)
+    public RocksDBStateFactory(String path, org.apache.paimon.options.Options conf)
             throws IOException {
         DBOptions dbOptions =
                 RocksDBOptions.createDBOptions(
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
index 8a06cfe11..493f115b0 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
@@ -31,7 +31,7 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.streaming.api.functions.sink.DiscardingSink;
 import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.utils.Preconditions;
 import org.apache.flink.util.function.SerializableFunction;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
index 4c120c6d3..30b91bdc2 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
@@ -30,7 +30,7 @@ import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
 import org.apache.flink.table.store.CoreOptions.MergeEngine;
 import org.apache.flink.table.store.file.catalog.CatalogLock;
 import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.AppendOnlyFileStoreTable;
 import org.apache.flink.table.store.table.ChangelogValueCountFileStoreTable;
 import org.apache.flink.table.store.table.ChangelogWithKeyFileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java
index cb7395b7e..7a78e8dbd 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java
@@ -24,8 +24,8 @@ import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.source.StreamDataTableScan;
 import org.apache.flink.table.store.table.source.snapshot.ContinuousCompactorFollowUpScanner;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java
index e1456132d..0610e573f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java
@@ -22,7 +22,7 @@ import org.apache.flink.api.connector.source.Boundedness;
 import org.apache.flink.api.connector.source.SourceReaderContext;
 import org.apache.flink.api.connector.source.SplitEnumerator;
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.table.DataTable;
 import org.apache.flink.table.store.table.source.StreamDataTableScan;
 import org.apache.flink.table.store.table.source.TableRead;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
index 343753c57..6eb648fc9 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
@@ -29,8 +29,8 @@ import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.StartupMode;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.source.StreamDataTableScan;
 import org.apache.flink.table.types.logical.LogicalType;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
index 1eb00966f..7bd2b6076 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
@@ -23,8 +23,8 @@ import org.apache.flink.table.connector.source.abilities.SupportsFilterPushDown;
 import org.apache.flink.table.connector.source.abilities.SupportsLimitPushDown;
 import org.apache.flink.table.connector.source.abilities.SupportsProjectionPushDown;
 import org.apache.flink.table.expressions.ResolvedExpression;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.table.Table;
 import org.apache.flink.table.types.logical.RowType;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
index b955d6cee..a09fed229 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
@@ -22,7 +22,7 @@ import org.apache.flink.api.connector.source.Boundedness;
 import org.apache.flink.api.connector.source.SplitEnumerator;
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
 import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.flink.table.store.table.DataTable;
 import org.apache.flink.table.store.table.source.BatchDataTableScan;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java
index 0f5956919..1f4be690e 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java
@@ -23,7 +23,7 @@ import org.apache.flink.table.connector.ChangelogMode;
 import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.connector.source.SourceProvider;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.table.DataTable;
 import org.apache.flink.table.store.table.Table;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
index dbe941423..25c7aae55 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
@@ -29,8 +29,8 @@ import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
 import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
 import org.apache.flink.table.store.CoreOptions.LogConsistency;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.AppendOnlyFileStoreTable;
 import org.apache.flink.table.store.table.ChangelogValueCountFileStoreTable;
 import org.apache.flink.table.store.table.ChangelogWithKeyFileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
index fb8fbead0..690cf29a5 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
@@ -25,7 +25,7 @@ import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
 import org.apache.flink.table.store.types.IntType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
index fbe576df0..01a9fb7a9 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
@@ -39,7 +39,7 @@ import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
 import org.apache.flink.table.types.logical.IntType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
index 32a68d49e..27486c031 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
@@ -38,7 +38,7 @@ import org.apache.flink.table.catalog.exceptions.TableNotExistException;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.catalog.AbstractCatalog;
 import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
index 20bfc525c..2fff80a31 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
@@ -25,7 +25,7 @@ import org.apache.flink.table.store.file.manifest.ManifestList;
 import org.apache.flink.table.store.file.stats.BinaryTableStats;
 import org.apache.flink.table.store.file.utils.FileStorePathFactory;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.types.VarCharType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
index 181bf7e76..dbf6230b2 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
@@ -25,8 +25,8 @@ import org.apache.flink.table.expressions.ResolvedExpression;
 import org.apache.flink.table.expressions.ValueLiteralExpression;
 import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
 import org.apache.flink.table.functions.FunctionDefinition;
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.logical.BigIntType;
 import org.apache.flink.table.types.logical.DoubleType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java
index 7e296b30c..c218187fd 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector.lookup;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.store.types.RowType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
index faa414a51..3514900d0 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
@@ -23,7 +23,7 @@ import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.reader.RecordReaderIterator;
 import org.apache.flink.table.store.table.FileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
index 3c20db9ce..7858a93d5 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
@@ -27,7 +27,7 @@ import org.apache.flink.table.store.file.memory.MemoryOwner;
 import org.apache.flink.table.store.file.mergetree.compact.DeduplicateMergeFunction;
 import org.apache.flink.table.store.file.operation.KeyValueFileStoreRead;
 import org.apache.flink.table.store.file.operation.KeyValueFileStoreWrite;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.KeyValueFieldsExtractor;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
@@ -36,7 +36,7 @@ import org.apache.flink.table.store.file.utils.RecordWriter;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.table.source.KeyValueTableRead;
 import org.apache.flink.table.store.table.source.TableRead;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
index a4eff1cbc..488e8d6af 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.format.avro;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.fs.PositionOutputStream;
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.ConfigOptions;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.ConfigOptions;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Projection;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormatFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormatFactory.java
index c9b569ad4..4df2f48a5 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormatFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormatFactory.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.format.avro;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileFormatFactory;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
index a25ec3c6b..f3f62e47d 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormatFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormatFactory.java
index 22ca20a99..948dc5b69 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormatFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormatFactory.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import org.apache.paimon.format.FileFormatFactory;
 
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/orc/SerializableHadoopConfigWrapper.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/SerializableHadoopConfigWrapper.java
index 4b6a279f3..878986a26 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/orc/SerializableHadoopConfigWrapper.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/SerializableHadoopConfigWrapper.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.io.DataInputDeserializer;
-import org.apache.flink.table.store.io.DataOutputSerializer;
+import org.apache.paimon.io.DataInputDeserializer;
+import org.apache.paimon.io.DataOutputSerializer;
 
 import org.apache.hadoop.conf.Configuration;
 
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
index 528fa4686..b0f23f100 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.format.orc.filter;
 
-import org.apache.flink.table.store.file.predicate.FieldRef;
-import org.apache.flink.table.store.file.predicate.FunctionVisitor;
+import org.apache.paimon.file.predicate.FieldRef;
+import org.apache.paimon.file.predicate.FunctionVisitor;
 import org.apache.flink.table.store.types.DataType;
 
 import org.apache.hadoop.hive.ql.io.sarg.PredicateLeaf;
@@ -35,7 +35,7 @@ import java.util.List;
 import java.util.Optional;
 
 /**
- * Convert {@link org.apache.flink.table.store.file.predicate.Predicate} to {@link
+ * Convert {@link org.apache.paimon.file.predicate.Predicate} to {@link
  * OrcFilters.Predicate} for orc.
  */
 public class OrcPredicateFunctionVisitor
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
index 8f26e5649..eec173152 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Projection;
 
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormatFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormatFactory.java
index a4b17c067..3abd91b15 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormatFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormatFactory.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import org.apache.paimon.format.FileFormatFactory;
 import org.apache.parquet.hadoop.ParquetOutputFormat;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetReaderFactory.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetReaderFactory.java
index 05b9f4108..ade411863 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetReaderFactory.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetReaderFactory.java
@@ -20,7 +20,7 @@ package org.apache.paimon.format.parquet;
 
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.reader.RecordReader.RecordIterator;
 import org.apache.flink.table.store.types.DataType;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/RowDataParquetBuilder.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/RowDataParquetBuilder.java
index 3f9986704..19104c26f 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/RowDataParquetBuilder.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/writer/RowDataParquetBuilder.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.format.parquet.writer;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/BulkFileFormatTest.java b/paimon-format/src/test/java/org/apache/paimon/format/BulkFileFormatTest.java
index a62caf3c1..66a758c04 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/BulkFileFormatTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/BulkFileFormatTest.java
@@ -21,7 +21,7 @@ package org.apache.paimon.format;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.PositionOutputStream;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileFormatTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileFormatTest.java
index 2d1867526..335854c5f 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileFormatTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileFormatTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileStatsExtractorTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileStatsExtractorTest.java
index 7a9c40966..386484e17 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileStatsExtractorTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFileStatsExtractorTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.BinaryType;
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
index c93c4da90..40b491ce9 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.format.orc;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.RowType;
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileFormatTest.java b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileFormatTest.java
index 5e1cf53c2..0f238da66 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileFormatTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileFormatTest.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.ConfigOptions;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.ConfigOptions;
+import org.apache.paimon.options.Options;
 
 import org.apache.parquet.format.CompressionCodec;
 import org.apache.parquet.hadoop.ParquetOutputFormat;
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractorTest.java b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractorTest.java
index 9a3169a58..4e5fe56b1 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractorTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetFileStatsExtractorTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.format.parquet;
 
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.BigIntType;
 import org.apache.flink.table.store.types.BinaryType;
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetReadWriteTest.java b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetReadWriteTest.java
index 44d30cbc6..2e65bfc90 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetReadWriteTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/parquet/ParquetReadWriteTest.java
@@ -20,7 +20,7 @@ package org.apache.paimon.format.parquet;
 
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.BigIntType;
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
index 91bf9766e..280bc2c43 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
@@ -28,7 +28,7 @@ import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.OptionsUtils;
+import org.apache.paimon.options.OptionsUtils;
 import org.apache.flink.table.store.table.TableType;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.utils.StringUtils;
@@ -60,8 +60,8 @@ import java.util.Optional;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.options.CatalogOptions.LOCK_ENABLED;
-import static org.apache.flink.table.store.options.CatalogOptions.TABLE_TYPE;
+import static org.apache.paimon.options.CatalogOptions.LOCK_ENABLED;
+import static org.apache.paimon.options.CatalogOptions.TABLE_TYPE;
 import static org.apache.flink.table.store.utils.Preconditions.checkState;
 import static org.apache.paimon.hive.HiveCatalogLock.acquireTimeout;
 import static org.apache.paimon.hive.HiveCatalogLock.checkMaxSleep;
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
index 0db2c2bf6..f68e92817 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogFactory.java
@@ -23,9 +23,9 @@ import org.apache.flink.table.store.file.catalog.Catalog;
 import org.apache.flink.table.store.file.catalog.CatalogFactory;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.CatalogOptions;
-import org.apache.flink.table.store.options.ConfigOption;
-import org.apache.flink.table.store.options.ConfigOptions;
+import org.apache.paimon.options.CatalogOptions;
+import org.apache.paimon.options.ConfigOption;
+import org.apache.paimon.options.ConfigOptions;
 import org.apache.flink.table.store.utils.Preconditions;
 
 import org.apache.hadoop.conf.Configuration;
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
index c8bc909af..363b2b849 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalogLock.java
@@ -37,8 +37,8 @@ import java.time.Duration;
 import java.util.Collections;
 import java.util.concurrent.Callable;
 
-import static org.apache.flink.table.store.options.CatalogOptions.LOCK_ACQUIRE_TIMEOUT;
-import static org.apache.flink.table.store.options.CatalogOptions.LOCK_CHECK_MAX_SLEEP;
+import static org.apache.paimon.options.CatalogOptions.LOCK_ACQUIRE_TIMEOUT;
+import static org.apache.paimon.options.CatalogOptions.LOCK_CHECK_MAX_SLEEP;
 
 /** Hive {@link CatalogLock}. */
 public class HiveCatalogLock implements CatalogLock {
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/SerializableHiveConf.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/SerializableHiveConf.java
index 9ee9a4010..acdcc7de9 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/SerializableHiveConf.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/SerializableHiveConf.java
@@ -17,8 +17,8 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.io.DataInputDeserializer;
-import org.apache.flink.table.store.io.DataOutputSerializer;
+import org.apache.paimon.io.DataInputDeserializer;
+import org.apache.paimon.io.DataOutputSerializer;
 
 import org.apache.hadoop.hive.conf.HiveConf;
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
index fa29d0f04..5180e895e 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/SearchArgumentToPredicateConverter.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/SearchArgumentToPredicateConverter.java
index 4449b299e..f2a2e0413 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/SearchArgumentToPredicateConverter.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/SearchArgumentToPredicateConverter.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Preconditions;
@@ -36,7 +36,7 @@ import java.util.List;
 import java.util.Optional;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.convertJavaObject;
+import static org.apache.paimon.file.predicate.PredicateBuilder.convertJavaObject;
 
 /** Converts {@link SearchArgument} to {@link Predicate} with best effort. */
 public class SearchArgumentToPredicateConverter {
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
index 57e5c2bcc..c94030079 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.hive;
 
 import org.apache.flink.table.store.file.utils.JsonSerdeUtil;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.metastore.api.hive_metastoreConstants;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
index e27679636..49b67a84c 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
@@ -20,9 +20,9 @@ package org.apache.paimon.hive.mapred;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
 import org.apache.flink.table.store.table.source.DataTableScan;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
index f0bc33eb0..90aa9a0ad 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.hive.mapred;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
-import org.apache.flink.table.store.io.DataInputDeserializer;
-import org.apache.flink.table.store.io.DataOutputSerializer;
+import org.apache.paimon.io.DataInputDeserializer;
+import org.apache.paimon.io.DataOutputSerializer;
 import org.apache.flink.table.store.table.source.DataSplit;
 
 import org.apache.hadoop.fs.Path;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
index a52b26d8a..aaa1eb1a4 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
@@ -23,7 +23,7 @@ import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
 import org.apache.flink.table.store.types.RowType;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
index 10fc477ea..b7433c342 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
index 72138ad63..9b3e01154 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
@@ -21,7 +21,7 @@ package org.apache.paimon.hive;
 import org.apache.flink.connectors.hive.FlinkEmbeddedHiveRunner;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.sink.StreamTableCommit;
 import org.apache.flink.table.store.table.sink.StreamTableWrite;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java
index f3b90127e..45c0ddc77 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.hive.mapred;
 
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.sink.StreamTableCommit;
 import org.apache.flink.table.store.table.sink.StreamTableWrite;
diff --git a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
index 788a9c8df..b75b0ba50 100644
--- a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
+++ b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkDataSourceReader.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.table.Table;
 import org.apache.flink.table.store.table.source.ReadBuilder;
 import org.apache.flink.table.store.table.source.Split;
diff --git a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
index b498eb4a0..e34d262b0 100644
--- a/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
+++ b/paimon-spark/paimon-spark-2/src/main/java/org/apache/paimon/spark/SparkSource.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
 
 import org.apache.spark.sql.SparkSession;
diff --git a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
index 1e44431d5..ab18c113e 100644
--- a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
@@ -23,7 +23,7 @@ import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
 import org.apache.flink.table.store.table.sink.StreamTableCommit;
diff --git a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
index 94c9fbfcb..23bb92463 100644
--- a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DateType;
 import org.apache.flink.table.store.types.IntType;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
index e5762dca6..4dc90d427 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
@@ -24,7 +24,7 @@ import org.apache.flink.table.store.file.catalog.CatalogFactory;
 import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaChange;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.Preconditions;
 
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkFilterConverter.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkFilterConverter.java
index 67c06464d..697b2f29d 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkFilterConverter.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkFilterConverter.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.RowType;
 
@@ -41,7 +41,7 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.file.predicate.PredicateBuilder.convertJavaObject;
+import static org.apache.paimon.file.predicate.PredicateBuilder.convertJavaObject;
 
 /** Conversion from {@link Filter} to {@link Predicate}. */
 public class SparkFilterConverter {
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
index 6182c6c83..38d453bfd 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkScanBuilder.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.table.Table;
 
 import org.apache.spark.sql.connector.read.Scan;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
index 4ef360904..799971563 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkSource.java
@@ -20,7 +20,7 @@ package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.flink.table.store.options.Options;
+import org.apache.paimon.options.Options;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
 
 import org.apache.spark.sql.SparkSession;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
index 27309f1d1..000b8f9bb 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.spark;
 
 import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.flink.table.store.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.table.DataTable;
 import org.apache.flink.table.store.table.SupportsPartition;
 import org.apache.flink.table.store.table.Table;
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
index 94c9fbfcb..23bb92463 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkFilterConverterTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.file.predicate.PredicateBuilder;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DateType;
 import org.apache.flink.table.store.types.IntType;


[incubator-paimon] 28/32: [core] Rename paimon: connector to flink

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 0524726d67789a1d73d424cd9383377687834104
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Sat Mar 18 00:27:22 2023 +0800

    [core] Rename paimon: connector to flink
---
 docs/content/how-to/writing-tables.md              | 20 ++++-----
 docs/content/maintenance/write-performance.md      |  4 +-
 paimon-docs/README.md                              |  2 +-
 .../configuration/ConfigOptionsDocGenerator.java   |  4 +-
 .../apache/paimon/tests/FlinkActionsE2eTest.java   |  8 ++--
 .../{connector => flink}/TableConfigUtils.java     |  2 +-
 .../TableStoreDataStreamScanProvider.java          |  2 +-
 .../TableStoreDataStreamSinkProvider.java          |  2 +-
 .../lookup/LookupRuntimeProviderFactory.java       |  2 +-
 .../lookup/OldLookupFunction.java                  |  2 +-
 .../utils/StreamExecutionEnvironmentUtils.java     |  2 +-
 .../utils/TableEnvironmentUtils.java               |  2 +-
 .../{connector => flink}/BatchFileStoreITCase.java |  2 +-
 .../apache/paimon/flink}/CatalogITCaseBase.java    |  2 +-
 .../paimon/flink}/ContinuousFileStoreITCase.java   |  4 +-
 .../apache/paimon/flink}/FlinkActionITCase.java    |  4 +-
 .../{connector => flink}/LookupJoinITCase.java     |  2 +-
 .../lookup/LookupRuntimeProviderFactory.java       |  2 +-
 .../lookup/OldLookupFunction.java                  |  2 +-
 .../{connector => flink}/BatchFileStoreITCase.java |  2 +-
 .../apache/paimon/flink}/CatalogITCaseBase.java    |  2 +-
 .../paimon/flink}/ContinuousFileStoreITCase.java   |  4 +-
 .../apache/paimon/flink}/FlinkActionITCase.java    |  4 +-
 .../{connector => flink}/LookupJoinITCase.java     |  2 +-
 .../AbstractTableStoreFactory.java                 | 18 ++++----
 .../BinaryRowTypeSerializer.java                   |  2 +-
 .../{connector => flink}/DataCatalogTable.java     |  2 +-
 .../DataTypeToLogicalType.java                     |  2 +-
 .../paimon/{connector => flink}/FlinkCatalog.java  |  6 +--
 .../{connector => flink}/FlinkCatalogFactory.java  |  2 +-
 .../FlinkConnectorOptions.java                     |  2 +-
 .../paimon/{connector => flink}/FlinkFileIO.java   |  2 +-
 .../{connector => flink}/FlinkFileIOLoader.java    |  2 +-
 .../paimon/{connector => flink}/FlinkRowData.java  |  4 +-
 .../{connector => flink}/FlinkRowWrapper.java      |  6 +--
 .../paimon/{connector => flink}/FlinkUtils.java    |  2 +-
 .../paimon/{connector => flink}/HadoopUtils.java   |  2 +-
 .../LogicalTypeConversion.java                     |  2 +-
 .../LogicalTypeToDataType.java                     |  2 +-
 .../{connector => flink}/PredicateConverter.java   |  4 +-
 .../{connector => flink}/ProjectedRowData.java     |  2 +-
 .../paimon/{connector => flink}/Projection.java    |  2 +-
 .../{connector => flink}/RocksDBOptions.java       |  2 +-
 .../{connector => flink}/SystemCatalogTable.java   |  4 +-
 .../{connector => flink}/TableConfigUtils.java     |  2 +-
 .../TableStoreConnectorFactory.java                |  6 +--
 .../TableStoreDataStreamScanProvider.java          |  2 +-
 .../TableStoreDataStreamSinkProvider.java          |  2 +-
 .../VersionedSerializerWrapper.java                |  2 +-
 .../paimon/{connector => flink}/action/Action.java |  2 +-
 .../{connector => flink}/action/ActionBase.java    | 10 ++---
 .../{connector => flink}/action/CompactAction.java | 12 +++---
 .../{connector => flink}/action/DeleteAction.java  |  4 +-
 .../action/DropPartitionAction.java                |  6 +--
 .../{connector => flink}/action/FlinkActions.java  |  4 +-
 .../action/MergeIntoAction.java                    |  8 ++--
 .../kafka/KafkaLogDeserializationSchema.java       |  6 +--
 .../kafka/KafkaLogOptions.java                     |  2 +-
 .../kafka/KafkaLogSerializationSchema.java         |  4 +-
 .../kafka/KafkaLogSinkProvider.java                |  6 +--
 .../kafka/KafkaLogSourceProvider.java              |  4 +-
 .../kafka/KafkaLogStoreFactory.java                |  6 +--
 .../kafka/KafkaSinkFunction.java                   |  4 +-
 .../{connector => flink}/log/LogSinkProvider.java  |  4 +-
 .../log/LogSourceProvider.java                     |  2 +-
 .../log/LogStoreTableFactory.java                  |  2 +-
 .../{connector => flink}/log/LogWriteCallback.java |  4 +-
 .../lookup/FileStoreLookupFunction.java            |  8 ++--
 .../lookup/LookupRuntimeProviderFactory.java       |  2 +-
 .../{connector => flink}/lookup/LookupTable.java   |  2 +-
 .../lookup/NewLookupFunction.java                  |  2 +-
 .../lookup/PrimaryKeyLookupTable.java              |  2 +-
 .../lookup/RocksDBSetState.java                    |  2 +-
 .../{connector => flink}/lookup/RocksDBState.java  |  2 +-
 .../lookup/RocksDBStateFactory.java                |  4 +-
 .../lookup/RocksDBValueState.java                  |  2 +-
 .../lookup/SecondaryIndexLookupTable.java          |  2 +-
 .../sink/BucketStreamPartitioner.java              |  4 +-
 .../{connector => flink}/sink/Committable.java     |  2 +-
 .../sink/CommittableSerializer.java                |  2 +-
 .../sink/CommittableStateManager.java              |  2 +-
 .../sink/CommittableTypeInfo.java                  |  2 +-
 .../{connector => flink}/sink/Committer.java       |  2 +-
 .../sink/CommitterOperator.java                    |  2 +-
 .../{connector => flink}/sink/CompactorSink.java   |  2 +-
 .../sink/CompactorSinkBuilder.java                 |  2 +-
 .../{connector => flink}/sink/FileStoreSink.java   |  4 +-
 .../{connector => flink}/sink/FlinkSink.java       |  8 ++--
 .../sink/FlinkSinkBuilder.java                     |  4 +-
 .../sink/FullChangelogStoreSinkWrite.java          |  4 +-
 .../sink/LogOffsetCommittable.java                 |  2 +-
 .../{connector => flink}/sink/LogSinkFunction.java |  2 +-
 .../sink/LookupChangelogStoreSinkWrite.java        |  2 +-
 .../sink/NoopCommittableStateManager.java          |  2 +-
 .../sink/OffsetRowDataHashStreamPartitioner.java   |  4 +-
 .../sink/PrepareCommitOperator.java                |  2 +-
 .../RestoreAndFailCommittableStateManager.java     |  2 +-
 .../{connector => flink}/sink/StateUtils.java      |  2 +-
 .../{connector => flink}/sink/StoreCommitter.java  |  2 +-
 .../sink/StoreCompactOperator.java                 |  8 ++--
 .../{connector => flink}/sink/StoreSinkWrite.java  |  2 +-
 .../sink/StoreSinkWriteImpl.java                   |  2 +-
 .../sink/StoreWriteOperator.java                   |  6 +--
 .../{connector => flink}/sink/TableStoreSink.java  | 12 +++---
 .../source/CompactorSourceBuilder.java             |  4 +-
 .../source/ContinuousFileSplitEnumerator.java      |  2 +-
 .../source/ContinuousFileStoreSource.java          |  4 +-
 .../source/FileStoreSourceReader.java              |  2 +-
 .../source/FileStoreSourceSplit.java               |  2 +-
 .../source/FileStoreSourceSplitGenerator.java      |  2 +-
 .../source/FileStoreSourceSplitReader.java         |  4 +-
 .../source/FileStoreSourceSplitSerializer.java     |  2 +-
 .../source/FileStoreSourceSplitState.java          |  2 +-
 .../{connector => flink}/source/FlinkSource.java   |  2 +-
 .../source/FlinkSourceBuilder.java                 |  8 ++--
 .../source/FlinkTableSource.java                   |  6 +--
 .../source/LogHybridSourceFactory.java             |  4 +-
 .../source/PendingSplitsCheckpoint.java            |  2 +-
 .../source/PendingSplitsCheckpointSerializer.java  |  2 +-
 .../source/RecordsFunction.java                    |  2 +-
 .../source/SimpleSystemSource.java                 |  2 +-
 .../source/SingleIteratorRecords.java              |  2 +-
 .../source/StaticFileStoreSource.java              |  2 +-
 .../source/StaticFileStoreSplitEnumerator.java     |  2 +-
 .../source/SystemTableSource.java                  |  2 +-
 .../source/TableStoreSource.java                   | 14 +++----
 .../utils/StreamExecutionEnvironmentUtils.java     |  2 +-
 .../utils/TableEnvironmentUtils.java               |  2 +-
 .../org.apache.flink.table.factories.Factory       |  6 +--
 .../AbstractTableStoreFactoryTest.java             |  2 +-
 .../AppendOnlyTableITCase.java                     |  2 +-
 .../{connector => flink}/BatchFileStoreITCase.java |  2 +-
 .../BinaryRowTypeSerializerTest.java               |  2 +-
 .../{connector => flink}/CatalogITCaseBase.java    |  4 +-
 .../{connector => flink}/CatalogTableITCase.java   |  2 +-
 .../{connector => flink}/ChangelogModeTest.java    | 10 ++---
 .../ChangelogWithKeyFileStoreTableITCase.java      |  6 +--
 .../CompositePkAndMultiPartitionedTableITCase.java | 26 ++++++------
 ...AndMultiPartitionedTableWIthKafkaLogITCase.java | 38 ++++++++---------
 .../ComputedColumnAndWatermarkTableITCase.java     | 28 ++++++-------
 .../ContinuousFileStoreITCase.java                 |  4 +-
 .../{connector => flink}/CreateTableITCase.java    |  2 +-
 .../{connector => flink}/DropTableITCase.java      |  2 +-
 .../{connector => flink}/FileStoreITCase.java      | 16 ++++----
 .../FileSystemCatalogITCase.java                   |  4 +-
 .../{connector => flink}/FiniteTestSource.java     |  2 +-
 .../{connector => flink}/FlinkCatalogTest.java     |  2 +-
 .../ForceCompactionITCase.java                     |  2 +-
 .../FullCompactionFileStoreITCase.java             |  2 +-
 .../{connector => flink}/LargeDataITCase.java      |  2 +-
 .../{connector => flink}/LogSystemITCase.java      |  4 +-
 .../LookupChangelogWithAggITCase.java              |  2 +-
 .../{connector => flink}/LookupJoinITCase.java     |  2 +-
 .../{connector => flink}/MappingTableITCase.java   |  4 +-
 .../{connector => flink}/PartialUpdateITCase.java  |  2 +-
 .../{connector => flink}/PreAggregationITCase.java |  2 +-
 .../PredicateConverterTest.java                    |  2 +-
 .../{connector => flink}/PredicateITCase.java      |  2 +-
 .../{connector => flink}/ReadWriteTableITCase.java | 48 +++++++++++-----------
 .../{connector => flink}/RescaleBucketITCase.java  |  2 +-
 .../{connector => flink}/SchemaChangeITCase.java   |  2 +-
 .../{connector => flink}/SerializableRowData.java  |  2 +-
 .../{connector => flink}/ShowCreateUtil.java       |  2 +-
 .../StreamingReadWriteTableWithKafkaLogITCase.java | 38 ++++++++---------
 .../StreamingWarehouseITCase.java                  | 10 ++---
 .../{connector => flink}/TableStoreTestBase.java   |  4 +-
 .../action/ActionITCaseBase.java                   |  4 +-
 .../action/CompactActionITCase.java                |  4 +-
 .../action/DeleteActionITCase.java                 | 10 ++---
 .../action/DropPartitionActionITCase.java          |  2 +-
 .../action/MergeIntoActionITCase.java              | 20 ++++-----
 .../kafka/KafkaLogSerializationTest.java           | 10 ++---
 .../kafka/KafkaLogTestUtils.java                   |  8 ++--
 .../kafka/KafkaTableTestBase.java                  |  4 +-
 .../lookup/LookupTableTest.java                    |  2 +-
 .../sink/CommittableSerializerTest.java            |  2 +-
 .../sink/CommitterOperatorTest.java                |  4 +-
 .../sink/CommitterOperatorTestBase.java            |  2 +-
 .../sink/CompactorSinkITCase.java                  |  6 +--
 .../sink/FileStoreShuffleBucketTest.java           |  8 ++--
 .../sink/LogOffsetCommittableTest.java             |  2 +-
 .../sink/SinkSavepointITCase.java                  |  4 +-
 .../source/CompactorSourceITCase.java              |  4 +-
 .../source/ContinuousFileSplitEnumeratorTest.java  |  2 +-
 .../source/FileStoreSourceReaderTest.java          |  4 +-
 .../source/FileStoreSourceSplitGeneratorTest.java  |  2 +-
 .../source/FileStoreSourceSplitReaderTest.java     |  8 ++--
 .../source/FileStoreSourceSplitSerializerTest.java |  2 +-
 .../source/FileStoreSourceSplitStateTest.java      |  6 +--
 .../PendingSplitsCheckpointSerializerTest.java     |  6 +--
 .../source/RecordsFunctionTest.java                |  6 +--
 .../source/SingleIteratorRecordsTest.java          |  2 +-
 .../source/StaticFileStoreSplitEnumeratorTest.java |  4 +-
 .../source/TestChangelogDataReadWrite.java         |  2 +-
 .../util/AbstractTestBase.java                     |  2 +-
 .../util/MiniClusterWithClientExtension.java       |  2 +-
 .../util/ReadWriteTableTestUtil.java               | 16 ++++----
 .../org/apache/paimon/hive/HiveCatalogITCase.java  |  2 +-
 198 files changed, 455 insertions(+), 455 deletions(-)

diff --git a/docs/content/how-to/writing-tables.md b/docs/content/how-to/writing-tables.md
index 5a3c72c74..aa5b989bf 100644
--- a/docs/content/how-to/writing-tables.md
+++ b/docs/content/how-to/writing-tables.md
@@ -204,7 +204,7 @@ Run the following command to submit a drop-partition job for the table.
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.paimon.connector.action.FlinkActions \
+    -c org.apache.paimon.flink.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
     /path/to/paimon-flink-**-{{< version >}}.jar \
     drop-partition \
@@ -222,7 +222,7 @@ For more information of drop-partition, see
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.paimon.connector.action.FlinkActions \
+    -c org.apache.paimon.flink.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
     /path/to/paimon-flink-**-{{< version >}}.jar \
     drop-partition --help
@@ -244,7 +244,7 @@ Run the following command to submit a 'delete' job for the table.
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.paimon.connector.action.FlinkActions \
+    -c org.apache.paimon.flink.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
     /path/to/paimon-flink-**-{{< version >}}.jar \
     delete \
@@ -263,7 +263,7 @@ For more information of 'delete', see
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.paimon.connector.action.FlinkActions \
+    -c org.apache.paimon.flink.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
     /path/to/paimon-flink-**-{{< version >}}.jar \
     delete --help
@@ -312,7 +312,7 @@ Run the following command to submit a 'merge-into' job for the table.
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.paimon.connector.action.FlinkActions \
+    -c org.apache.paimon.flink.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
     /path/to/paimon-flink-**-{{< version >}}.jar \
     merge-into \
@@ -339,7 +339,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 -- Find all orders mentioned in the source table, then mark as important if the price is above 100 
 -- or delete if the price is under 10.
 ./flink run \
-    -c org.apache.paimon.connector.action.FlinkActions \
+    -c org.apache.paimon.flink.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
     /path/to/paimon-flink-**-{{< version >}}.jar \
     merge-into \
@@ -357,7 +357,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 -- For matched order rows, increase the price, and if there is no match, insert the order from the 
 -- source table:
 ./flink run \
-    -c org.apache.paimon.connector.action.FlinkActions \
+    -c org.apache.paimon.flink.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
     /path/to/paimon-flink-**-{{< version >}}.jar \
     merge-into \
@@ -374,7 +374,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 -- For not matched by source order rows (which are in the target table and does not match any row in the
 -- source table based on the merge-condition), decrease the price or if the mark is 'trivial', delete them:
 ./flink run \
-    -c org.apache.paimon.connector.action.FlinkActions \
+    -c org.apache.paimon.flink.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
     /path/to/paimon-flink-**-{{< version >}}.jar \
     merge-into \
@@ -392,7 +392,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 -- An source-sql example: 
 -- Create a temporary view S in new catalog and use it as source table
 ./flink run \
-    -c org.apache.paimon.connector.action.FlinkActions \
+    -c org.apache.paimon.flink.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
     /path/to/paimon-flink-**-{{< version >}}.jar \
     merge-into \
@@ -451,7 +451,7 @@ For more information of 'merge-into', see
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.paimon.connector.action.FlinkActions \
+    -c org.apache.paimon.flink.action.FlinkActions \
     -Dclassloader.resolve-order=parent-first \
     /path/to/paimon-flink-**-{{< version >}}.jar \
     merge-into --help
diff --git a/docs/content/maintenance/write-performance.md b/docs/content/maintenance/write-performance.md
index 587a2ddee..a0597c073 100644
--- a/docs/content/maintenance/write-performance.md
+++ b/docs/content/maintenance/write-performance.md
@@ -155,7 +155,7 @@ Run the following command to submit a compaction job for the table.
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.paimon.connector.action.FlinkActions \
+    -c org.apache.paimon.flink.action.FlinkActions \
     /path/to/paimon-flink-**-{{< version >}}.jar \
     compact \
     --warehouse <warehouse-path> \
@@ -175,7 +175,7 @@ For more usage of the compact action, see
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.paimon.connector.action.FlinkActions \
+    -c org.apache.paimon.flink.action.FlinkActions \
     /path/to/paimon-flink-**-{{< version >}}.jar \
     compact --help
 ```
diff --git a/paimon-docs/README.md b/paimon-docs/README.md
index cbf7d44e5..f8fabf8a2 100644
--- a/paimon-docs/README.md
+++ b/paimon-docs/README.md
@@ -23,7 +23,7 @@ This module contains generators that create HTML files directly from Flink Table
 
 ## Configuration documentation
 
-The `ConfigOptionsDocGenerator` can be used to generate a reference of `ConfigOptions`. By default, a separate file is generated for each `*Options` class found in `org.apache.paimon`, `org.apache.paimon.connector` and `org.apache.paimon.connector.kafka`. 
+The `ConfigOptionsDocGenerator` can be used to generate a reference of `ConfigOptions`. By default, a separate file is generated for each `*Options` class found in `org.apache.paimon`, `org.apache.paimon.flink` and `org.apache.paimon.flink.kafka`. 
 The `@ConfigGroups` annotation can be used to generate multiple files from a single class.
 
 To integrate an `*Options` class from another package, add another module-package argument pair to `ConfigOptionsDocGenerator#LOCATIONS`.
diff --git a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
index 440d4ba16..627a2faaa 100644
--- a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
+++ b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
@@ -73,9 +73,9 @@ public class ConfigOptionsDocGenerator {
                 new OptionsClassLocation("paimon-common", "org.apache.paimon.options"),
                 new OptionsClassLocation("paimon-core", "org.apache.paimon"),
                 new OptionsClassLocation(
-                        "paimon-flink/paimon-flink-common", "org.apache.paimon.connector"),
+                        "paimon-flink/paimon-flink-common", "org.apache.paimon.flink"),
                 new OptionsClassLocation(
-                        "paimon-flink/paimon-flink-common", "org.apache.paimon.connector.kafka")
+                        "paimon-flink/paimon-flink-common", "org.apache.paimon.flink.kafka")
             };
     static final String DEFAULT_PATH_PREFIX = "src/main/java";
 
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
index 5c82e5195..b592dd169 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/FlinkActionsE2eTest.java
@@ -103,7 +103,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "bin/flink",
                         "run",
                         "-c",
-                        "org.apache.paimon.connector.action.FlinkActions",
+                        "org.apache.paimon.flink.action.FlinkActions",
                         "-D",
                         "execution.checkpointing.interval=1s",
                         "-Dclassloader.resolve-order=parent-first",
@@ -168,7 +168,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "-p",
                         "1",
                         "-c",
-                        "org.apache.paimon.connector.action.FlinkActions",
+                        "org.apache.paimon.flink.action.FlinkActions",
                         "-Dclassloader.resolve-order=parent-first",
                         "lib/paimon-flink.jar",
                         "drop-partition",
@@ -228,7 +228,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "-p",
                         "1",
                         "-c",
-                        "org.apache.paimon.connector.action.FlinkActions",
+                        "org.apache.paimon.flink.action.FlinkActions",
                         "-Dclassloader.resolve-order=parent-first",
                         "lib/paimon-flink.jar",
                         "delete",
@@ -296,7 +296,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "-p",
                         "1",
                         "-c",
-                        "org.apache.paimon.connector.action.FlinkActions",
+                        "org.apache.paimon.flink.action.FlinkActions",
                         "-Dclassloader.resolve-order=parent-first",
                         "lib/paimon-flink.jar",
                         "merge-into",
diff --git a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableConfigUtils.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableConfigUtils.java
similarity index 96%
rename from paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableConfigUtils.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableConfigUtils.java
index 00cd9d60b..1fef9f4a0 100644
--- a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableConfigUtils.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableConfigUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.configuration.ReadableConfig;
diff --git a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableStoreDataStreamScanProvider.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
similarity index 97%
rename from paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableStoreDataStreamScanProvider.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
index cddc4cc5e..57b707b09 100644
--- a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableStoreDataStreamScanProvider.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
diff --git a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableStoreDataStreamSinkProvider.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
similarity index 97%
rename from paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableStoreDataStreamSinkProvider.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
index 9702b1d20..f915df85b 100644
--- a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableStoreDataStreamSinkProvider.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.streaming.api.datastream.DataStreamSink;
diff --git a/paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/lookup/LookupRuntimeProviderFactory.java
similarity index 96%
rename from paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/lookup/LookupRuntimeProviderFactory.java
index e6687dc73..b23b83a3c 100644
--- a/paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/lookup/LookupRuntimeProviderFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.flink.table.connector.source.LookupTableSource.LookupRuntimeProvider;
 import org.apache.flink.table.connector.source.TableFunctionProvider;
diff --git a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/lookup/OldLookupFunction.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/lookup/OldLookupFunction.java
similarity index 97%
rename from paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/lookup/OldLookupFunction.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/lookup/OldLookupFunction.java
index f77435850..402948935 100644
--- a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/lookup/OldLookupFunction.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/lookup/OldLookupFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
diff --git a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/utils/StreamExecutionEnvironmentUtils.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/utils/StreamExecutionEnvironmentUtils.java
similarity index 97%
rename from paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/utils/StreamExecutionEnvironmentUtils.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/utils/StreamExecutionEnvironmentUtils.java
index 0d517d012..05b8dcba0 100644
--- a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/utils/StreamExecutionEnvironmentUtils.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/utils/StreamExecutionEnvironmentUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.utils;
+package org.apache.paimon.flink.utils;
 
 import org.apache.flink.configuration.ReadableConfig;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
diff --git a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/utils/TableEnvironmentUtils.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/utils/TableEnvironmentUtils.java
similarity index 98%
rename from paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/utils/TableEnvironmentUtils.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/utils/TableEnvironmentUtils.java
index a2bdfa8ae..b4fbd56e5 100644
--- a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/utils/TableEnvironmentUtils.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/utils/TableEnvironmentUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.utils;
+package org.apache.paimon.flink.utils;
 
 import org.apache.flink.api.dag.Transformation;
 import org.apache.flink.table.api.TableEnvironment;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/BatchFileStoreITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
rename to paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/BatchFileStoreITCase.java
index 5f3b79393..bdaed701d 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/BatchFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/CatalogITCaseBase.java
similarity index 99%
rename from paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
rename to paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/CatalogITCaseBase.java
index 26698b250..84b871c2c 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/CatalogITCaseBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/ContinuousFileStoreITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
rename to paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/ContinuousFileStoreITCase.java
index 1eb637033..9a6fcc1b8 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/ContinuousFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
@@ -34,7 +34,7 @@ import java.util.Comparator;
 import java.util.List;
 import java.util.concurrent.TimeoutException;
 
-import static org.apache.paimon.connector.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
+import static org.apache.paimon.flink.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/FlinkActionITCase.java
similarity index 95%
rename from paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
rename to paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/FlinkActionITCase.java
index 20fdf6a86..aa219faa6 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/FlinkActionITCase.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
-import org.apache.paimon.connector.action.DeleteAction;
+import org.apache.paimon.flink.action.DeleteAction;
 import org.apache.paimon.utils.BlockingIterator;
 import org.junit.Test;
 
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/LookupJoinITCase.java
similarity index 98%
rename from paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
rename to paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/LookupJoinITCase.java
index c64159dc6..6ffb949c6 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/flink/LookupJoinITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
diff --git a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java b/paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/flink/lookup/LookupRuntimeProviderFactory.java
similarity index 96%
rename from paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
rename to paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/flink/lookup/LookupRuntimeProviderFactory.java
index e6687dc73..b23b83a3c 100644
--- a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
+++ b/paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/flink/lookup/LookupRuntimeProviderFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.flink.table.connector.source.LookupTableSource.LookupRuntimeProvider;
 import org.apache.flink.table.connector.source.TableFunctionProvider;
diff --git a/paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/connector/lookup/OldLookupFunction.java b/paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/flink/lookup/OldLookupFunction.java
similarity index 97%
rename from paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/connector/lookup/OldLookupFunction.java
rename to paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/flink/lookup/OldLookupFunction.java
index f77435850..402948935 100644
--- a/paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/connector/lookup/OldLookupFunction.java
+++ b/paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/flink/lookup/OldLookupFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/BatchFileStoreITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
rename to paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/BatchFileStoreITCase.java
index 5f3b79393..bdaed701d 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/BatchFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/CatalogITCaseBase.java
similarity index 99%
rename from paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
rename to paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/CatalogITCaseBase.java
index 26698b250..84b871c2c 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/CatalogITCaseBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/ContinuousFileStoreITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
rename to paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/ContinuousFileStoreITCase.java
index 1eb637033..9a6fcc1b8 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/ContinuousFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
@@ -34,7 +34,7 @@ import java.util.Comparator;
 import java.util.List;
 import java.util.concurrent.TimeoutException;
 
-import static org.apache.paimon.connector.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
+import static org.apache.paimon.flink.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/FlinkActionITCase.java
similarity index 95%
rename from paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
rename to paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/FlinkActionITCase.java
index 20fdf6a86..aa219faa6 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/FlinkActionITCase.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
-import org.apache.paimon.connector.action.DeleteAction;
+import org.apache.paimon.flink.action.DeleteAction;
 import org.apache.paimon.utils.BlockingIterator;
 import org.junit.Test;
 
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/LookupJoinITCase.java
similarity index 98%
rename from paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
rename to paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/LookupJoinITCase.java
index c64159dc6..6ffb949c6 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/flink/LookupJoinITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractTableStoreFactory.java
similarity index 93%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractTableStoreFactory.java
index d4431e616..1624de1a3 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractTableStoreFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.configuration.ConfigOption;
@@ -34,10 +34,10 @@ import org.apache.paimon.CoreOptions.LogChangelogMode;
 import org.apache.paimon.CoreOptions.LogConsistency;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.catalog.CatalogContext;
-import org.apache.paimon.connector.log.LogStoreTableFactory;
-import org.apache.paimon.connector.sink.TableStoreSink;
-import org.apache.paimon.connector.source.SystemTableSource;
-import org.apache.paimon.connector.source.TableStoreSource;
+import org.apache.paimon.flink.log.LogStoreTableFactory;
+import org.apache.paimon.flink.sink.TableStoreSink;
+import org.apache.paimon.flink.source.SystemTableSource;
+import org.apache.paimon.flink.source.TableStoreSource;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.TableSchema;
@@ -54,10 +54,10 @@ import java.util.Set;
 
 import static org.apache.paimon.CoreOptions.LOG_CHANGELOG_MODE;
 import static org.apache.paimon.CoreOptions.LOG_CONSISTENCY;
-import static org.apache.paimon.connector.FlinkConnectorOptions.LOG_SYSTEM;
-import static org.apache.paimon.connector.FlinkConnectorOptions.NONE;
-import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
-import static org.apache.paimon.connector.log.LogStoreTableFactory.discoverLogStoreFactory;
+import static org.apache.paimon.flink.FlinkConnectorOptions.LOG_SYSTEM;
+import static org.apache.paimon.flink.FlinkConnectorOptions.NONE;
+import static org.apache.paimon.flink.LogicalTypeConversion.toLogicalType;
+import static org.apache.paimon.flink.log.LogStoreTableFactory.discoverLogStoreFactory;
 
 /** Abstract paimon factory to create table source and table sink. */
 public abstract class AbstractTableStoreFactory
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/BinaryRowTypeSerializer.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/BinaryRowTypeSerializer.java
index 8526607bb..10fccbab2 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/BinaryRowTypeSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.api.common.typeutils.TypeSerializer;
 import org.apache.flink.api.common.typeutils.TypeSerializerSchemaCompatibility;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataCatalogTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/DataCatalogTable.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataCatalogTable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/DataCatalogTable.java
index a48541cb2..8a57442ba 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataCatalogTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/DataCatalogTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.TableSchema;
 import org.apache.flink.table.catalog.CatalogBaseTable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataTypeToLogicalType.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/DataTypeToLogicalType.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataTypeToLogicalType.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/DataTypeToLogicalType.java
index 09ded1e49..d09cb7ccc 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataTypeToLogicalType.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/DataTypeToLogicalType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.types.logical.LogicalType;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
index ee71bbf5c..5b53e2239 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.TableSchema;
 import org.apache.flink.table.catalog.AbstractCatalog;
@@ -64,8 +64,8 @@ import static org.apache.flink.table.descriptors.Schema.SCHEMA;
 import static org.apache.flink.table.factories.FactoryUtil.CONNECTOR;
 import static org.apache.flink.table.types.utils.TypeConversions.fromLogicalToDataType;
 import static org.apache.paimon.CoreOptions.PATH;
-import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
-import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
+import static org.apache.paimon.flink.LogicalTypeConversion.toDataType;
+import static org.apache.paimon.flink.LogicalTypeConversion.toLogicalType;
 
 /** Catalog for paimon. */
 public class FlinkCatalog extends AbstractCatalog {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalogFactory.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalogFactory.java
index 4620afa43..94aa3d91f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalogFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.paimon.catalog.Catalog;
 import org.apache.paimon.catalog.CatalogContext;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkConnectorOptions.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkConnectorOptions.java
index 644a2f1b7..ec459d3d8 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkConnectorOptions.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.options.ConfigOption;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkFileIO.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkFileIO.java
index 42e62893d..efef84f48 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkFileIO.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.core.fs.FSDataInputStream;
 import org.apache.flink.core.fs.FSDataOutputStream;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIOLoader.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkFileIOLoader.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIOLoader.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkFileIOLoader.java
index 7b3be5a23..5b34e9d82 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIOLoader.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkFileIOLoader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOLoader;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowData.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkRowData.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowData.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkRowData.java
index 8c27ef160..d451a4368 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowData.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkRowData.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.data.ArrayData;
 import org.apache.flink.table.data.DecimalData;
@@ -34,7 +34,7 @@ import org.apache.paimon.data.InternalMap;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
 
-import static org.apache.paimon.connector.FlinkRowWrapper.fromFlinkRowKind;
+import static org.apache.paimon.flink.FlinkRowWrapper.fromFlinkRowKind;
 
 /** Convert to Flink row data. */
 public class FlinkRowData implements RowData {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkRowWrapper.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkRowWrapper.java
index 1b291bb94..e95c8d3b0 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkRowWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.data.DecimalData;
 import org.apache.flink.table.data.GenericRowData;
@@ -31,8 +31,8 @@ import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.types.RowKind;
 
-import static org.apache.paimon.connector.FlinkRowData.toFlinkRowKind;
-import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
+import static org.apache.paimon.flink.FlinkRowData.toFlinkRowKind;
+import static org.apache.paimon.flink.LogicalTypeConversion.toDataType;
 
 /** Convert from Flink row data. */
 public class FlinkRowWrapper implements InternalRow {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkUtils.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkUtils.java
index 7ac866373..88fe0150b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.configuration.ReadableConfig;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/HadoopUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/HadoopUtils.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/HadoopUtils.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/HadoopUtils.java
index d6e09085d..b05884b29 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/HadoopUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/HadoopUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.configuration.ConfigConstants;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeConversion.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/LogicalTypeConversion.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeConversion.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/LogicalTypeConversion.java
index 7ad27f7ae..eb906a68b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeConversion.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/LogicalTypeConversion.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.types.logical.LogicalType;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeToDataType.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/LogicalTypeToDataType.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeToDataType.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/LogicalTypeToDataType.java
index 5069ecb9c..fcfd2fc27 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeToDataType.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/LogicalTypeToDataType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.types.logical.ArrayType;
 import org.apache.flink.table.types.logical.BigIntType;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/PredicateConverter.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/PredicateConverter.java
index a28d1bcb0..e6eb48c74 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/PredicateConverter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.data.conversion.DataStructureConverters;
 import org.apache.flink.table.expressions.CallExpression;
@@ -46,7 +46,7 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
 import static org.apache.flink.table.types.logical.utils.LogicalTypeCasts.supportsImplicitCast;
-import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
+import static org.apache.paimon.flink.LogicalTypeConversion.toDataType;
 
 /**
  * Convert {@link Expression} to {@link Predicate}.
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/ProjectedRowData.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/ProjectedRowData.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/ProjectedRowData.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/ProjectedRowData.java
index 2f2a70e86..6bdbe5880 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/ProjectedRowData.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/ProjectedRowData.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.data.ArrayData;
 import org.apache.flink.table.data.DecimalData;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/Projection.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/Projection.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/Projection.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/Projection.java
index 4a8ecf43e..521d8a013 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/Projection.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/Projection.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.logical.RowType;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/RocksDBOptions.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/RocksDBOptions.java
index f66d4a556..1f96bdbd2 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/RocksDBOptions.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.paimon.annotation.Documentation;
 import org.apache.paimon.options.ConfigOption;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/SystemCatalogTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/SystemCatalogTable.java
similarity index 95%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/SystemCatalogTable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/SystemCatalogTable.java
index fda6533fa..7ea09f3b9 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/SystemCatalogTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/SystemCatalogTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.Schema;
 import org.apache.flink.table.catalog.CatalogTable;
@@ -29,7 +29,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 
-import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
+import static org.apache.paimon.flink.LogicalTypeConversion.toLogicalType;
 
 /** A {@link CatalogTable} to represent system table. */
 public class SystemCatalogTable implements CatalogTable {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableConfigUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableConfigUtils.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableConfigUtils.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableConfigUtils.java
index 0203eca71..ffeb9b92e 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableConfigUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableConfigUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.configuration.ReadableConfig;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreConnectorFactory.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreConnectorFactory.java
index 4159bba8f..3d70000f0 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreConnectorFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.catalog.ResolvedCatalogTable;
 import org.apache.flink.table.connector.sink.DynamicTableSink;
@@ -26,7 +26,7 @@ import org.apache.flink.table.factories.FactoryUtil;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.catalog.CatalogLock;
-import org.apache.paimon.connector.sink.TableStoreSink;
+import org.apache.paimon.flink.sink.TableStoreSink;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
@@ -35,7 +35,7 @@ import org.apache.paimon.schema.SchemaManager;
 import javax.annotation.Nullable;
 
 import static org.apache.paimon.CoreOptions.AUTO_CREATE;
-import static org.apache.paimon.connector.FlinkCatalogFactory.IDENTIFIER;
+import static org.apache.paimon.flink.FlinkCatalogFactory.IDENTIFIER;
 
 /** A paimon {@link DynamicTableFactory} to create source and sink. */
 public class TableStoreConnectorFactory extends AbstractTableStoreFactory {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreDataStreamScanProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreDataStreamScanProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
index ae8bd7ae9..b76bb9740 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreDataStreamScanProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreDataStreamSinkProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreDataStreamSinkProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
index e245823dd..2b3e9cc94 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreDataStreamSinkProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.streaming.api.datastream.DataStreamSink;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/VersionedSerializerWrapper.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/VersionedSerializerWrapper.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/VersionedSerializerWrapper.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/VersionedSerializerWrapper.java
index ce0981966..2a17eeacf 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/VersionedSerializerWrapper.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/VersionedSerializerWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.core.io.SimpleVersionedSerializer;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/Action.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/Action.java
index 0e4c86099..f12868d5f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/Action.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.action;
+package org.apache.paimon.flink.action;
 
 import org.apache.flink.api.java.tuple.Tuple3;
 import org.apache.flink.api.java.utils.MultipleParameterTool;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/ActionBase.java
similarity index 95%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/ActionBase.java
index f29b0443f..af46bb1d1 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/ActionBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.action;
+package org.apache.paimon.flink.action;
 
 import org.apache.flink.api.dag.Transformation;
 import org.apache.flink.streaming.api.datastream.DataStream;
@@ -30,10 +30,10 @@ import org.apache.paimon.catalog.Catalog;
 import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.catalog.CatalogFactory;
 import org.apache.paimon.catalog.Identifier;
-import org.apache.paimon.connector.FlinkCatalog;
-import org.apache.paimon.connector.LogicalTypeConversion;
-import org.apache.paimon.connector.sink.FlinkSinkBuilder;
-import org.apache.paimon.connector.utils.TableEnvironmentUtils;
+import org.apache.paimon.flink.FlinkCatalog;
+import org.apache.paimon.flink.LogicalTypeConversion;
+import org.apache.paimon.flink.sink.FlinkSinkBuilder;
+import org.apache.paimon.flink.utils.TableEnvironmentUtils;
 import org.apache.paimon.operation.Lock;
 import org.apache.paimon.options.CatalogOptions;
 import org.apache.paimon.options.Options;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/CompactAction.java
similarity index 93%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/CompactAction.java
index 169c9447a..067f3c054 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/CompactAction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.action;
+package org.apache.paimon.flink.action;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.api.java.tuple.Tuple3;
@@ -28,9 +28,9 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.connector.sink.CompactorSinkBuilder;
-import org.apache.paimon.connector.source.CompactorSourceBuilder;
-import org.apache.paimon.connector.utils.StreamExecutionEnvironmentUtils;
+import org.apache.paimon.flink.sink.CompactorSinkBuilder;
+import org.apache.paimon.flink.source.CompactorSourceBuilder;
+import org.apache.paimon.flink.utils.StreamExecutionEnvironmentUtils;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.slf4j.Logger;
@@ -40,8 +40,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 
-import static org.apache.paimon.connector.action.Action.getPartitions;
-import static org.apache.paimon.connector.action.Action.getTablePath;
+import static org.apache.paimon.flink.action.Action.getPartitions;
+import static org.apache.paimon.flink.action.Action.getTablePath;
 
 /** Table compact action for Flink. */
 public class CompactAction extends ActionBase {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DeleteAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/DeleteAction.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DeleteAction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/DeleteAction.java
index 0cfba60e4..6aa6a386d 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DeleteAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/DeleteAction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.action;
+package org.apache.paimon.flink.action;
 
 import org.apache.flink.api.java.tuple.Tuple3;
 import org.apache.flink.api.java.utils.MultipleParameterTool;
@@ -35,7 +35,7 @@ import java.util.List;
 import java.util.Optional;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.connector.action.Action.getTablePath;
+import static org.apache.paimon.flink.action.Action.getTablePath;
 
 /** Delete from table action for Flink. */
 public class DeleteAction extends ActionBase {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DropPartitionAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/DropPartitionAction.java
similarity index 95%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DropPartitionAction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/DropPartitionAction.java
index 578bbbb95..0394264c9 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DropPartitionAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/DropPartitionAction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.action;
+package org.apache.paimon.flink.action;
 
 import org.apache.flink.api.java.tuple.Tuple3;
 import org.apache.flink.api.java.utils.MultipleParameterTool;
@@ -30,8 +30,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 
-import static org.apache.paimon.connector.action.Action.getPartitions;
-import static org.apache.paimon.connector.action.Action.getTablePath;
+import static org.apache.paimon.flink.action.Action.getPartitions;
+import static org.apache.paimon.flink.action.Action.getTablePath;
 
 /** Table drop partition action for Flink. */
 public class DropPartitionAction extends ActionBase {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/FlinkActions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/FlinkActions.java
similarity index 93%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/FlinkActions.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/FlinkActions.java
index 0d488f5dc..16c8296f7 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/FlinkActions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/FlinkActions.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.action;
+package org.apache.paimon.flink.action;
 
 import java.util.Optional;
 
-import static org.apache.paimon.connector.action.Action.Factory.printHelp;
+import static org.apache.paimon.flink.action.Action.Factory.printHelp;
 
 /** Table maintenance actions for Flink. */
 public class FlinkActions {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/MergeIntoAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/MergeIntoAction.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/MergeIntoAction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/MergeIntoAction.java
index 669aff130..7870702b0 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/MergeIntoAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/MergeIntoAction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.action;
+package org.apache.paimon.flink.action;
 
 import org.apache.flink.api.java.tuple.Tuple3;
 import org.apache.flink.api.java.utils.MultipleParameterTool;
@@ -29,7 +29,7 @@ import org.apache.flink.table.data.conversion.DataStructureConverters;
 import org.apache.flink.table.types.utils.TypeConversions;
 import org.apache.flink.types.RowKind;
 
-import org.apache.paimon.connector.LogicalTypeConversion;
+import org.apache.paimon.flink.LogicalTypeConversion;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
@@ -47,8 +47,8 @@ import java.util.Optional;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import static org.apache.paimon.connector.action.Action.getTablePath;
-import static org.apache.paimon.connector.action.Action.parseKeyValues;
+import static org.apache.paimon.flink.action.Action.getTablePath;
+import static org.apache.paimon.flink.action.Action.parseKeyValues;
 
 /**
  * Flink action for 'MERGE INTO', which references the syntax as follows (we use 'upsert' semantics
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogDeserializationSchema.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogDeserializationSchema.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogDeserializationSchema.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogDeserializationSchema.java
index 3f53f4479..a31596bc8 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogDeserializationSchema.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogDeserializationSchema.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.kafka;
+package org.apache.paimon.flink.kafka;
 
 import org.apache.flink.api.common.serialization.DeserializationSchema;
 import org.apache.flink.api.common.typeinfo.TypeInformation;
@@ -31,8 +31,8 @@ import org.apache.flink.types.RowKind;
 import org.apache.flink.util.Collector;
 
 import org.apache.kafka.clients.consumer.ConsumerRecord;
-import org.apache.paimon.connector.ProjectedRowData;
-import org.apache.paimon.connector.Projection;
+import org.apache.paimon.flink.ProjectedRowData;
+import org.apache.paimon.flink.Projection;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogOptions.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogOptions.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogOptions.java
index a6252cce6..e76a7a912 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogOptions.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.kafka;
+package org.apache.paimon.flink.kafka;
 
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.ConfigOptions;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogSerializationSchema.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogSerializationSchema.java
index 02fe3c1cd..4f547cdba 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogSerializationSchema.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.kafka;
+package org.apache.paimon.flink.kafka;
 
 import org.apache.flink.api.common.serialization.SerializationSchema;
 import org.apache.flink.connector.kafka.sink.KafkaRecordSerializationSchema;
@@ -25,7 +25,7 @@ import org.apache.flink.table.data.RowData;
 
 import org.apache.kafka.clients.producer.ProducerRecord;
 import org.apache.paimon.CoreOptions.LogChangelogMode;
-import org.apache.paimon.connector.FlinkRowData;
+import org.apache.paimon.flink.FlinkRowData;
 import org.apache.paimon.table.sink.SinkRecord;
 import org.apache.paimon.types.RowKind;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogSinkProvider.java
similarity index 95%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogSinkProvider.java
index b08d48b01..eb37cc63c 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogSinkProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.kafka;
+package org.apache.paimon.flink.kafka;
 
 import org.apache.flink.api.common.serialization.SerializationSchema;
 import org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer.Semantic;
@@ -25,8 +25,8 @@ import org.apache.flink.table.data.RowData;
 import org.apache.paimon.CoreOptions.LogChangelogMode;
 import org.apache.paimon.CoreOptions.LogConsistency;
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.connector.log.LogSinkProvider;
-import org.apache.paimon.connector.sink.LogSinkFunction;
+import org.apache.paimon.flink.log.LogSinkProvider;
+import org.apache.paimon.flink.sink.LogSinkFunction;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogSourceProvider.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogSourceProvider.java
index 00701cd38..94bf04b4b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogSourceProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.kafka;
+package org.apache.paimon.flink.kafka;
 
 import org.apache.flink.api.common.serialization.DeserializationSchema;
 import org.apache.flink.connector.kafka.source.KafkaSource;
@@ -29,7 +29,7 @@ import org.apache.kafka.common.TopicPartition;
 import org.apache.paimon.CoreOptions.LogConsistency;
 import org.apache.paimon.CoreOptions.StartupMode;
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.connector.log.LogSourceProvider;
+import org.apache.paimon.flink.log.LogSourceProvider;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogStoreFactory.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogStoreFactory.java
index 1e7c8787b..4f2d0266a 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaLogStoreFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.kafka;
+package org.apache.paimon.flink.kafka;
 
 import org.apache.flink.api.common.serialization.DeserializationSchema;
 import org.apache.flink.api.common.serialization.SerializationSchema;
@@ -33,7 +33,7 @@ import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.utils.DataTypeUtils;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.connector.log.LogStoreTableFactory;
+import org.apache.paimon.flink.log.LogStoreTableFactory;
 import org.apache.paimon.options.Options;
 
 import javax.annotation.Nullable;
@@ -50,7 +50,7 @@ import static org.apache.paimon.CoreOptions.LOG_CHANGELOG_MODE;
 import static org.apache.paimon.CoreOptions.LOG_CONSISTENCY;
 import static org.apache.paimon.CoreOptions.LogConsistency;
 import static org.apache.paimon.CoreOptions.SCAN_TIMESTAMP_MILLIS;
-import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
+import static org.apache.paimon.flink.kafka.KafkaLogOptions.TOPIC;
 
 /** The Kafka {@link LogStoreTableFactory} implementation. */
 public class KafkaLogStoreFactory implements LogStoreTableFactory {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaSinkFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaSinkFunction.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaSinkFunction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaSinkFunction.java
index 74b07a9c1..5d2c22f91 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaSinkFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/kafka/KafkaSinkFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.kafka;
+package org.apache.paimon.flink.kafka;
 
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.streaming.connectors.kafka.FlinkKafkaException;
@@ -25,7 +25,7 @@ import org.apache.flink.streaming.connectors.kafka.KafkaSerializationSchema;
 
 import org.apache.kafka.clients.producer.Callback;
 import org.apache.kafka.clients.producer.ProducerRecord;
-import org.apache.paimon.connector.sink.LogSinkFunction;
+import org.apache.paimon.flink.sink.LogSinkFunction;
 import org.apache.paimon.table.sink.SinkRecord;
 
 import java.util.Properties;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogSinkProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogSinkProvider.java
similarity index 91%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogSinkProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogSinkProvider.java
index cc35d18ed..0869d6976 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogSinkProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogSinkProvider.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.log;
+package org.apache.paimon.flink.log;
 
-import org.apache.paimon.connector.sink.LogSinkFunction;
+import org.apache.paimon.flink.sink.LogSinkFunction;
 
 import java.io.Serializable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogSourceProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogSourceProvider.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogSourceProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogSourceProvider.java
index 625e552b4..08a697dcf 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogSourceProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogSourceProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.log;
+package org.apache.paimon.flink.log;
 
 import org.apache.flink.api.connector.source.Source;
 import org.apache.flink.connector.base.source.hybrid.HybridSource;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogStoreTableFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogStoreTableFactory.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogStoreTableFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogStoreTableFactory.java
index e24dbbe49..ecdd504ef 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogStoreTableFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogStoreTableFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.log;
+package org.apache.paimon.flink.log;
 
 import org.apache.flink.api.common.serialization.DeserializationSchema;
 import org.apache.flink.api.common.serialization.SerializationSchema;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogWriteCallback.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogWriteCallback.java
similarity index 94%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogWriteCallback.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogWriteCallback.java
index beccc46ca..067c82bba 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogWriteCallback.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/log/LogWriteCallback.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.log;
+package org.apache.paimon.flink.log;
 
-import org.apache.paimon.connector.sink.LogSinkFunction.WriteCallback;
+import org.apache.paimon.flink.sink.LogSinkFunction.WriteCallback;
 
 import java.util.HashMap;
 import java.util.Map;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/FileStoreLookupFunction.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/FileStoreLookupFunction.java
index 2502d5de8..2f81fb7ba 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/FileStoreLookupFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.flink.streaming.api.operators.StreamingRuntimeContext;
 import org.apache.flink.table.data.RowData;
@@ -26,9 +26,9 @@ import org.apache.flink.table.functions.TableFunction;
 import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.connector.FlinkRowData;
-import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.flink.FlinkRowData;
+import org.apache.paimon.flink.FlinkRowWrapper;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateFilter;
@@ -60,7 +60,7 @@ import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
-import static org.apache.paimon.connector.RocksDBOptions.LOOKUP_CACHE_ROWS;
+import static org.apache.paimon.flink.RocksDBOptions.LOOKUP_CACHE_ROWS;
 import static org.apache.paimon.predicate.PredicateBuilder.transformFieldMapping;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/LookupRuntimeProviderFactory.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/LookupRuntimeProviderFactory.java
index 7b5bb5644..47e99f1ea 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/LookupRuntimeProviderFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.flink.table.connector.source.LookupTableSource.LookupRuntimeProvider;
 import org.apache.flink.table.connector.source.lookup.LookupFunctionProvider;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/LookupTable.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/LookupTable.java
index 738577765..403786ada 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/LookupTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/NewLookupFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/NewLookupFunction.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/NewLookupFunction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/NewLookupFunction.java
index 90a5ed455..25b20d036 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/NewLookupFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/NewLookupFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.functions.FunctionContext;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/PrimaryKeyLookupTable.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/PrimaryKeyLookupTable.java
index 840584294..13e04089d 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/PrimaryKeyLookupTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalSerializers;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBSetState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBSetState.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBSetState.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBSetState.java
index 790068079..0eb13f340 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBSetState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBSetState.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.Serializer;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBState.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBState.java
index 1df90cc92..453df2b32 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBState.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
 import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBStateFactory.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBStateFactory.java
index cd0e3b655..85a6aff7c 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBStateFactory.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
-import org.apache.paimon.connector.RocksDBOptions;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.Serializer;
+import org.apache.paimon.flink.RocksDBOptions;
 import org.rocksdb.ColumnFamilyDescriptor;
 import org.rocksdb.ColumnFamilyHandle;
 import org.rocksdb.ColumnFamilyOptions;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBValueState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBValueState.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBValueState.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBValueState.java
index 2f2cd78fc..a7809203b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBValueState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/RocksDBValueState.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.Serializer;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/SecondaryIndexLookupTable.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/SecondaryIndexLookupTable.java
index b97b55ead..80aeb20ac 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/lookup/SecondaryIndexLookupTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalSerializers;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/BucketStreamPartitioner.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/BucketStreamPartitioner.java
index 7fe8ba0de..dac9c9714 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/BucketStreamPartitioner.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.runtime.io.network.api.writer.SubtaskStateMapper;
 import org.apache.flink.runtime.plugable.SerializationDelegate;
@@ -24,8 +24,8 @@ import org.apache.flink.streaming.runtime.partitioner.StreamPartitioner;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
 
-import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.flink.FlinkRowWrapper;
 import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.sink.BucketComputer;
 import org.apache.paimon.table.sink.PartitionComputer;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/Committable.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/Committable.java
index e9fe5fd3a..99cee468f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/Committable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 /** Committable produced by {@link PrepareCommitOperator}. */
 public class Committable {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableSerializer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommittableSerializer.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableSerializer.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommittableSerializer.java
index 3dc21ff09..531ee8b5a 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableSerializer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommittableSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.core.io.SimpleVersionedSerializer;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommittableStateManager.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommittableStateManager.java
index 7712a9803..00af5dc1a 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommittableStateManager.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableTypeInfo.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommittableTypeInfo.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableTypeInfo.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommittableTypeInfo.java
index 74c4ff83a..82bb8324e 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableTypeInfo.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommittableTypeInfo.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.api.common.ExecutionConfig;
 import org.apache.flink.api.common.typeinfo.TypeInformation;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/Committer.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/Committer.java
index 9a2bb6026..5c47c959e 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/Committer.java
@@ -17,7 +17,7 @@
  *
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.paimon.manifest.ManifestCommittable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommitterOperator.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommitterOperator.java
index 7605bcdb4..76d69ed10 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CommitterOperator.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CompactorSink.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CompactorSink.java
index cca36ab7e..6e34c3775 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CompactorSink.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CompactorSinkBuilder.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CompactorSinkBuilder.java
index 494c9c703..d369b4c35 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CompactorSinkBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.streaming.api.datastream.DataStreamSink;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FileStoreSink.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FileStoreSink.java
index b1a3bfaa6..544480868 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FileStoreSink.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.util.function.SerializableFunction;
 
-import org.apache.paimon.connector.VersionedSerializerWrapper;
+import org.apache.paimon.flink.VersionedSerializerWrapper;
 import org.apache.paimon.manifest.ManifestCommittableSerializer;
 import org.apache.paimon.operation.Lock;
 import org.apache.paimon.table.FileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkSink.java
similarity index 95%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkSink.java
index e7097c416..488f93269 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkSink.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.configuration.ExecutionOptions;
@@ -33,7 +33,7 @@ import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.util.function.SerializableFunction;
 
-import org.apache.paimon.connector.utils.StreamExecutionEnvironmentUtils;
+import org.apache.paimon.flink.utils.StreamExecutionEnvironmentUtils;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.utils.Preconditions;
@@ -41,8 +41,8 @@ import org.apache.paimon.utils.Preconditions;
 import java.io.Serializable;
 import java.util.UUID;
 
-import static org.apache.paimon.connector.FlinkConnectorOptions.CHANGELOG_PRODUCER_FULL_COMPACTION_TRIGGER_INTERVAL;
-import static org.apache.paimon.connector.FlinkConnectorOptions.CHANGELOG_PRODUCER_LOOKUP_WAIT;
+import static org.apache.paimon.flink.FlinkConnectorOptions.CHANGELOG_PRODUCER_FULL_COMPACTION_TRIGGER_INTERVAL;
+import static org.apache.paimon.flink.FlinkConnectorOptions.CHANGELOG_PRODUCER_LOOKUP_WAIT;
 
 /** Abstract sink of paimon. */
 public abstract class FlinkSink implements Serializable {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkSinkBuilder.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkSinkBuilder.java
index ee32ba8ce..d85152833 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkSinkBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.annotation.VisibleForTesting;
 import org.apache.flink.streaming.api.datastream.DataStream;
@@ -25,7 +25,7 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.streaming.api.transformations.PartitionTransformation;
 import org.apache.flink.table.data.RowData;
 
-import org.apache.paimon.connector.FlinkConnectorOptions;
+import org.apache.paimon.flink.FlinkConnectorOptions;
 import org.apache.paimon.operation.Lock;
 import org.apache.paimon.table.FileStoreTable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FullChangelogStoreSinkWrite.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FullChangelogStoreSinkWrite.java
index ebc03fe54..e4dfd0d69 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FullChangelogStoreSinkWrite.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.api.common.state.ListState;
 import org.apache.flink.api.common.state.ListStateDescriptor;
@@ -32,9 +32,9 @@ import org.apache.flink.runtime.state.StateSnapshotContext;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.Snapshot;
-import org.apache.paimon.connector.BinaryRowTypeSerializer;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.flink.BinaryRowTypeSerializer;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.SinkRecord;
 import org.apache.paimon.utils.SnapshotManager;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogOffsetCommittable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/LogOffsetCommittable.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogOffsetCommittable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/LogOffsetCommittable.java
index c837ff490..287c2e491 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogOffsetCommittable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/LogOffsetCommittable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import java.nio.ByteBuffer;
 import java.util.Objects;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogSinkFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/LogSinkFunction.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogSinkFunction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/LogSinkFunction.java
index 39c386868..c66949045 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogSinkFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/LogSinkFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.streaming.api.functions.sink.SinkFunction;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/LookupChangelogStoreSinkWrite.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/LookupChangelogStoreSinkWrite.java
index 1455d79cf..2f26c9be4 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/LookupChangelogStoreSinkWrite.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/NoopCommittableStateManager.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/NoopCommittableStateManager.java
index 11d7b10b1..faed598c7 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/NoopCommittableStateManager.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/OffsetRowDataHashStreamPartitioner.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/OffsetRowDataHashStreamPartitioner.java
index 5690fef1f..09d0abab3 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/OffsetRowDataHashStreamPartitioner.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.runtime.io.network.api.writer.SubtaskStateMapper;
 import org.apache.flink.runtime.plugable.SerializationDelegate;
@@ -24,8 +24,8 @@ import org.apache.flink.streaming.runtime.partitioner.StreamPartitioner;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
 
-import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.flink.FlinkRowWrapper;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.OffsetRow;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/PrepareCommitOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/PrepareCommitOperator.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/PrepareCommitOperator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/PrepareCommitOperator.java
index 374c151c9..e1d795e44 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/PrepareCommitOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/PrepareCommitOperator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.streaming.api.operators.AbstractStreamOperator;
 import org.apache.flink.streaming.api.operators.BoundedOneInput;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/RestoreAndFailCommittableStateManager.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/RestoreAndFailCommittableStateManager.java
index c95d177f1..1f4f2c37d 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/RestoreAndFailCommittableStateManager.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.api.common.state.ListState;
 import org.apache.flink.api.common.state.ListStateDescriptor;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StateUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StateUtils.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StateUtils.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StateUtils.java
index e0b656de8..56792c27a 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StateUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StateUtils.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.api.common.state.ListState;
 import org.apache.flink.api.common.state.ListStateDescriptor;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreCommitter.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreCommitter.java
index 671c94b61..f3f58d98a 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreCommitter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.paimon.manifest.ManifestCommittable;
 import org.apache.paimon.table.sink.CommitMessage;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreCompactOperator.java
similarity index 94%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreCompactOperator.java
index 988885f71..1dd7697cb 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreCompactOperator.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.flink.FlinkRowWrapper;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataFileMetaSerializer;
 import org.apache.paimon.table.FileStoreTable;
@@ -39,8 +39,8 @@ import java.util.List;
  * A dedicated operator for manual triggered compaction.
  *
  * <p>In-coming records are generated by sources built from {@link
- * org.apache.paimon.connector.source.CompactorSourceBuilder}. The records will contain partition
- * keys in the first few columns, and bucket number in the last column.
+ * org.apache.paimon.flink.source.CompactorSourceBuilder}. The records will contain partition keys
+ * in the first few columns, and bucket number in the last column.
  */
 public class StoreCompactOperator extends PrepareCommitOperator {
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreSinkWrite.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreSinkWrite.java
index 5cb6af328..8d358a621 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreSinkWrite.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreSinkWriteImpl.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreSinkWriteImpl.java
index c7ace62e5..ad49f7847 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreSinkWriteImpl.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreWriteOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreWriteOperator.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreWriteOperator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreWriteOperator.java
index a253eb186..2bd96b388 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreWriteOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/StoreWriteOperator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.api.common.functions.util.FunctionUtils;
 import org.apache.flink.api.common.state.CheckpointListener;
@@ -34,8 +34,8 @@ import org.apache.flink.streaming.runtime.tasks.StreamTask;
 import org.apache.flink.streaming.util.functions.StreamingFunctionUtils;
 import org.apache.flink.table.data.RowData;
 
-import org.apache.paimon.connector.FlinkRowWrapper;
-import org.apache.paimon.connector.log.LogWriteCallback;
+import org.apache.paimon.flink.FlinkRowWrapper;
+import org.apache.paimon.flink.log.LogWriteCallback;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.SinkRecord;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/TableStoreSink.java
similarity index 95%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/TableStoreSink.java
index 9dff38a6f..9dcbe349b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/TableStoreSink.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.table.catalog.ObjectIdentifier;
@@ -31,11 +31,11 @@ import org.apache.paimon.CoreOptions.ChangelogProducer;
 import org.apache.paimon.CoreOptions.LogChangelogMode;
 import org.apache.paimon.CoreOptions.MergeEngine;
 import org.apache.paimon.catalog.CatalogLock;
-import org.apache.paimon.connector.FlinkCatalog;
-import org.apache.paimon.connector.FlinkConnectorOptions;
-import org.apache.paimon.connector.TableStoreDataStreamSinkProvider;
-import org.apache.paimon.connector.log.LogSinkProvider;
-import org.apache.paimon.connector.log.LogStoreTableFactory;
+import org.apache.paimon.flink.FlinkCatalog;
+import org.apache.paimon.flink.FlinkConnectorOptions;
+import org.apache.paimon.flink.TableStoreDataStreamSinkProvider;
+import org.apache.paimon.flink.log.LogSinkProvider;
+import org.apache.paimon.flink.log.LogStoreTableFactory;
 import org.apache.paimon.operation.Lock;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.AppendOnlyFileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/CompactorSourceBuilder.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/CompactorSourceBuilder.java
index 38a281b11..dd8f1af20 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/CompactorSourceBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.common.eventtime.WatermarkStrategy;
 import org.apache.flink.api.connector.source.Source;
@@ -25,7 +25,7 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
 
-import org.apache.paimon.connector.LogicalTypeConversion;
+import org.apache.paimon.flink.LogicalTypeConversion;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.table.FileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumerator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/ContinuousFileSplitEnumerator.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumerator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/ContinuousFileSplitEnumerator.java
index c1689af61..19602324a 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumerator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/ContinuousFileSplitEnumerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.connector.source.SourceEvent;
 import org.apache.flink.api.connector.source.SplitEnumerator;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/ContinuousFileStoreSource.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/ContinuousFileStoreSource.java
index 5701ae704..c23816e3c 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/ContinuousFileStoreSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.connector.source.Boundedness;
 import org.apache.flink.api.connector.source.SourceReaderContext;
@@ -33,7 +33,7 @@ import javax.annotation.Nullable;
 import java.util.ArrayList;
 import java.util.Collection;
 
-import static org.apache.paimon.connector.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
+import static org.apache.paimon.flink.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
 
 /** Unbounded {@link FlinkSource} for reading records. It continuously monitors new snapshots. */
 public class ContinuousFileStoreSource extends FlinkSource {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceReader.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceReader.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceReader.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceReader.java
index 30aaf1270..a35d6c90b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceReader.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.connector.source.SourceReader;
 import org.apache.flink.api.connector.source.SourceReaderContext;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplit.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplit.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplit.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplit.java
index 2a410d414..12645488b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplit.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplit.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.connector.source.SourceSplit;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitGenerator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitGenerator.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitGenerator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitGenerator.java
index 23b8c5692..5f884cc18 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitGenerator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitGenerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.paimon.table.source.TableScan;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitReader.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitReader.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitReader.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitReader.java
index 010f4a594..6c3742717 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitReader.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.connector.base.source.reader.RecordsWithSplitIds;
 import org.apache.flink.connector.base.source.reader.splitreader.SplitReader;
@@ -28,8 +28,8 @@ import org.apache.flink.connector.file.src.util.Pool;
 import org.apache.flink.connector.file.src.util.RecordAndPosition;
 import org.apache.flink.table.data.RowData;
 
-import org.apache.paimon.connector.FlinkRowData;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.flink.FlinkRowData;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReader.RecordIterator;
 import org.apache.paimon.table.source.Split;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitSerializer.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializer.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitSerializer.java
index d289a56a8..504af90f3 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.core.io.SimpleVersionedSerializer;
 import org.apache.flink.core.memory.DataInputViewStreamWrapper;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitState.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitState.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitState.java
index 8e503e960..d8c9596f0 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FileStoreSourceSplitState.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.connector.file.src.util.CheckpointedPosition;
 import org.apache.flink.connector.file.src.util.RecordAndPosition;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FlinkSource.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FlinkSource.java
index 871529869..b6b45f455 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FlinkSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.connector.source.Source;
 import org.apache.flink.api.connector.source.SourceReader;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FlinkSourceBuilder.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FlinkSourceBuilder.java
index 08d42f068..d1831ea36 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FlinkSourceBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.common.eventtime.WatermarkStrategy;
 import org.apache.flink.api.connector.source.Boundedness;
@@ -32,8 +32,8 @@ import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.StartupMode;
-import org.apache.paimon.connector.Projection;
-import org.apache.paimon.connector.log.LogSourceProvider;
+import org.apache.paimon.flink.Projection;
+import org.apache.paimon.flink.log.LogSourceProvider;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.table.FileStoreTable;
@@ -43,7 +43,7 @@ import javax.annotation.Nullable;
 
 import java.util.Optional;
 
-import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
+import static org.apache.paimon.flink.LogicalTypeConversion.toLogicalType;
 
 /**
  * Source builder to build a Flink {@link StaticFileStoreSource} or {@link
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FlinkTableSource.java
similarity index 95%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FlinkTableSource.java
index 2bd77a218..ec220ee45 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/FlinkTableSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.table.connector.source.ScanTableSource;
 import org.apache.flink.table.connector.source.abilities.SupportsFilterPushDown;
@@ -25,8 +25,8 @@ import org.apache.flink.table.connector.source.abilities.SupportsProjectionPushD
 import org.apache.flink.table.expressions.ResolvedExpression;
 import org.apache.flink.table.types.logical.RowType;
 
-import org.apache.paimon.connector.LogicalTypeConversion;
-import org.apache.paimon.connector.PredicateConverter;
+import org.apache.paimon.flink.LogicalTypeConversion;
+import org.apache.paimon.flink.PredicateConverter;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.table.Table;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/LogHybridSourceFactory.java
similarity index 95%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/LogHybridSourceFactory.java
index c921b5367..9d4459936 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/LogHybridSourceFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.connector.source.Source;
 import org.apache.flink.connector.base.source.hybrid.HybridSource;
@@ -24,7 +24,7 @@ import org.apache.flink.connector.base.source.hybrid.HybridSource.SourceFactory;
 import org.apache.flink.table.data.RowData;
 
 import org.apache.paimon.Snapshot;
-import org.apache.paimon.connector.log.LogSourceProvider;
+import org.apache.paimon.flink.log.LogSourceProvider;
 
 import java.util.Map;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/PendingSplitsCheckpoint.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/PendingSplitsCheckpoint.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/PendingSplitsCheckpoint.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/PendingSplitsCheckpoint.java
index bd0eb5bf4..d2895a97a 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/PendingSplitsCheckpoint.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/PendingSplitsCheckpoint.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/PendingSplitsCheckpointSerializer.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializer.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/PendingSplitsCheckpointSerializer.java
index 5a5356b26..a743317b8 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/PendingSplitsCheckpointSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.core.io.SimpleVersionedSerializer;
 import org.apache.flink.core.memory.DataInputDeserializer;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/RecordsFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/RecordsFunction.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/RecordsFunction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/RecordsFunction.java
index 87021d2c2..3601c58b0 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/RecordsFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/RecordsFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.connector.source.SourceOutput;
 import org.apache.flink.connector.base.source.reader.RecordEmitter;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SimpleSystemSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SimpleSystemSource.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SimpleSystemSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SimpleSystemSource.java
index 2538eb801..5ec61ce29 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SimpleSystemSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SimpleSystemSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.connector.source.Boundedness;
 import org.apache.flink.api.connector.source.SplitEnumerator;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SingleIteratorRecords.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SingleIteratorRecords.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SingleIteratorRecords.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SingleIteratorRecords.java
index 165d046ba..7361b8f54 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SingleIteratorRecords.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SingleIteratorRecords.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.connector.base.source.reader.RecordsWithSplitIds;
 import org.apache.flink.connector.file.src.reader.BulkFormat;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/StaticFileStoreSource.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/StaticFileStoreSource.java
index b7dcfb562..d9defdd86 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/StaticFileStoreSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.connector.source.Boundedness;
 import org.apache.flink.api.connector.source.SplitEnumerator;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/StaticFileStoreSplitEnumerator.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/StaticFileStoreSplitEnumerator.java
index 6ac65fad0..0b43eb633 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/StaticFileStoreSplitEnumerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.connector.source.SplitEnumerator;
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SystemTableSource.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SystemTableSource.java
index aad5422c2..94e2d968d 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SystemTableSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.connector.source.Source;
 import org.apache.flink.table.connector.ChangelogMode;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/TableStoreSource.java
similarity index 95%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/TableStoreSource.java
index 1fe21f5cc..1e7b0a6f9 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/TableStoreSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.common.eventtime.WatermarkStrategy;
 import org.apache.flink.table.catalog.ObjectIdentifier;
@@ -30,12 +30,12 @@ import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.paimon.CoreOptions.ChangelogProducer;
 import org.apache.paimon.CoreOptions.LogChangelogMode;
 import org.apache.paimon.CoreOptions.LogConsistency;
-import org.apache.paimon.connector.FlinkConnectorOptions;
-import org.apache.paimon.connector.TableStoreDataStreamScanProvider;
-import org.apache.paimon.connector.log.LogSourceProvider;
-import org.apache.paimon.connector.log.LogStoreTableFactory;
-import org.apache.paimon.connector.lookup.FileStoreLookupFunction;
-import org.apache.paimon.connector.lookup.LookupRuntimeProviderFactory;
+import org.apache.paimon.flink.FlinkConnectorOptions;
+import org.apache.paimon.flink.TableStoreDataStreamScanProvider;
+import org.apache.paimon.flink.log.LogSourceProvider;
+import org.apache.paimon.flink.log.LogStoreTableFactory;
+import org.apache.paimon.flink.lookup.FileStoreLookupFunction;
+import org.apache.paimon.flink.lookup.LookupRuntimeProviderFactory;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.table.AppendOnlyFileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/utils/StreamExecutionEnvironmentUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/utils/StreamExecutionEnvironmentUtils.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/utils/StreamExecutionEnvironmentUtils.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/utils/StreamExecutionEnvironmentUtils.java
index 75eaa0f8c..9f3b28bbe 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/utils/StreamExecutionEnvironmentUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/utils/StreamExecutionEnvironmentUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.utils;
+package org.apache.paimon.flink.utils;
 
 import org.apache.flink.configuration.ReadableConfig;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/utils/TableEnvironmentUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/utils/TableEnvironmentUtils.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/utils/TableEnvironmentUtils.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/utils/TableEnvironmentUtils.java
index 82ff003e2..9b7009387 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/utils/TableEnvironmentUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/utils/TableEnvironmentUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.utils;
+package org.apache.paimon.flink.utils;
 
 import org.apache.flink.api.dag.Transformation;
 import org.apache.flink.table.api.TableEnvironment;
diff --git a/paimon-flink/paimon-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory b/paimon-flink/paimon-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
index 302bbf296..0502da679 100644
--- a/paimon-flink/paimon-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
+++ b/paimon-flink/paimon-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
@@ -13,6 +13,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.paimon.connector.TableStoreConnectorFactory
-org.apache.paimon.connector.FlinkCatalogFactory
-org.apache.paimon.connector.kafka.KafkaLogStoreFactory
+org.apache.paimon.flink.TableStoreConnectorFactory
+org.apache.paimon.flink.FlinkCatalogFactory
+org.apache.paimon.flink.kafka.KafkaLogStoreFactory
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AbstractTableStoreFactoryTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AbstractTableStoreFactoryTest.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AbstractTableStoreFactoryTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AbstractTableStoreFactoryTest.java
index 354488427..d88fd5b59 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AbstractTableStoreFactoryTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AbstractTableStoreFactoryTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.types.logical.IntType;
 import org.apache.flink.table.types.logical.LogicalType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AppendOnlyTableITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AppendOnlyTableITCase.java
index f8e5357c0..d92936560 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AppendOnlyTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.planner.factories.TestValuesTableFactory;
 import org.apache.flink.types.Row;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/BatchFileStoreITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/BatchFileStoreITCase.java
index 6d64df110..bb42114b2 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/BatchFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/BinaryRowTypeSerializerTest.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/BinaryRowTypeSerializerTest.java
index 4fd2139b3..f21a2bc43 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/BinaryRowTypeSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.api.common.typeutils.SerializerTestBase;
 import org.apache.flink.api.common.typeutils.TypeSerializer;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CatalogITCaseBase.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CatalogITCaseBase.java
index 885163d24..882c82da4 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CatalogITCaseBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
@@ -36,7 +36,7 @@ import org.apache.flink.util.CloseableIterator;
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
 import org.apache.paimon.Snapshot;
-import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.flink.util.AbstractTestBase;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.utils.BlockingIterator;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CatalogTableITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CatalogTableITCase.java
index f8b6acd97..7c97ed88b 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CatalogTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogModeTest.java
similarity index 93%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogModeTest.java
index 51fc0a735..3b8e255df 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogModeTest.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.catalog.ObjectIdentifier;
 import org.apache.flink.table.connector.ChangelogMode;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.connector.kafka.KafkaLogStoreFactory;
-import org.apache.paimon.connector.log.LogStoreTableFactory;
-import org.apache.paimon.connector.sink.TableStoreSink;
-import org.apache.paimon.connector.source.TableStoreSource;
+import org.apache.paimon.flink.kafka.KafkaLogStoreFactory;
+import org.apache.paimon.flink.log.LogStoreTableFactory;
+import org.apache.paimon.flink.sink.TableStoreSink;
+import org.apache.paimon.flink.source.TableStoreSource;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogWithKeyFileStoreTableITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogWithKeyFileStoreTableITCase.java
index 6878c227d..e65dabbd4 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogWithKeyFileStoreTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.api.common.JobStatus;
 import org.apache.flink.api.common.restartstrategy.RestartStrategies;
@@ -31,8 +31,8 @@ import org.apache.flink.types.Row;
 import org.apache.flink.types.RowKind;
 import org.apache.flink.util.CloseableIterator;
 
-import org.apache.paimon.connector.action.FlinkActions;
-import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.flink.action.FlinkActions;
+import org.apache.paimon.flink.util.AbstractTestBase;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.utils.FailingFileIO;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CompositePkAndMultiPartitionedTableITCase.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CompositePkAndMultiPartitionedTableITCase.java
index 7f3a1d95a..97770f6d5 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CompositePkAndMultiPartitionedTableITCase.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
-import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.flink.util.AbstractTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
@@ -29,17 +29,17 @@ import java.util.Collections;
 import java.util.List;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.bEnv;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQuery;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.checkFileStorePath;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertOverwrite;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertOverwritePartition;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.bEnv;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildQuery;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.checkFileStorePath;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.createTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.createTemporaryTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertIntoFromTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertOverwrite;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertOverwritePartition;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testBatchRead;
 
 /** Paimon IT case when the table has composite primary keys and multiple partition fields. */
 public class CompositePkAndMultiPartitionedTableITCase extends AbstractTestBase {
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
index aa246a724..f3a88fd71 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
-import org.apache.paimon.connector.kafka.KafkaTableTestBase;
+import org.apache.paimon.flink.kafka.KafkaTableTestBase;
 import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
@@ -31,23 +31,23 @@ import java.util.Collections;
 import java.util.List;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.SCAN_LATEST;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.assertNoMoreRecords;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.bEnv;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQuery;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.checkFileStorePath;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTableWithKafkaLog;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertInto;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoPartition;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.SCAN_LATEST;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.assertNoMoreRecords;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.bEnv;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildQuery;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.checkFileStorePath;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.createTableWithKafkaLog;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.createTemporaryTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertInto;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertIntoFromTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertIntoPartition;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testBatchRead;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testStreamingRead;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.validateStreamingReadResult;
 
 /**
  * IT cases of streaming reading and writing tables which have composite primary keys and multiple
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ComputedColumnAndWatermarkTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ComputedColumnAndWatermarkTableITCase.java
similarity index 94%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ComputedColumnAndWatermarkTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ComputedColumnAndWatermarkTableITCase.java
index 94eb61dc5..50c342416 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ComputedColumnAndWatermarkTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ComputedColumnAndWatermarkTableITCase.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
-import org.apache.paimon.connector.kafka.KafkaTableTestBase;
+import org.apache.paimon.flink.kafka.KafkaTableTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
@@ -31,18 +31,18 @@ import java.util.List;
 import java.util.stream.Collectors;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.SCAN_LATEST;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQuery;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTableWithKafkaLog;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.SCAN_LATEST;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildQuery;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.createTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.createTableWithKafkaLog;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.createTemporaryTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertIntoFromTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testBatchRead;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testStreamingRead;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
 
 /** Paimon IT case when the table has computed column and watermark spec. */
 public class ComputedColumnAndWatermarkTableITCase extends KafkaTableTestBase {
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ContinuousFileStoreITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ContinuousFileStoreITCase.java
index 42b63b96c..d2ed1906b 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ContinuousFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.ValidationException;
 import org.apache.flink.testutils.junit.extensions.parameterized.ParameterizedTestExtension;
@@ -39,7 +39,7 @@ import java.util.Comparator;
 import java.util.List;
 import java.util.concurrent.TimeoutException;
 
-import static org.apache.paimon.connector.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
+import static org.apache.paimon.flink.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CreateTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CreateTableITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CreateTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CreateTableITCase.java
index fca851ef1..909905bb4 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CreateTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CreateTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.table.api.internal.TableEnvironmentImpl;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/DropTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/DropTableITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/DropTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/DropTableITCase.java
index 29451b4c6..550d25a1b 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/DropTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/DropTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.table.api.ValidationException;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FileStoreITCase.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FileStoreITCase.java
index 2df4eac94..a17fbc4c9 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.api.connector.source.Boundedness;
@@ -43,12 +43,12 @@ import org.apache.flink.types.RowKind;
 import org.apache.flink.util.CloseableIterator;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.connector.sink.FileStoreSink;
-import org.apache.paimon.connector.sink.FlinkSinkBuilder;
-import org.apache.paimon.connector.source.ContinuousFileStoreSource;
-import org.apache.paimon.connector.source.FlinkSourceBuilder;
-import org.apache.paimon.connector.source.StaticFileStoreSource;
-import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.flink.sink.FileStoreSink;
+import org.apache.paimon.flink.sink.FlinkSinkBuilder;
+import org.apache.paimon.flink.source.ContinuousFileStoreSource;
+import org.apache.paimon.flink.source.FlinkSourceBuilder;
+import org.apache.paimon.flink.source.StaticFileStoreSource;
+import org.apache.paimon.flink.util.AbstractTestBase;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
@@ -76,7 +76,7 @@ import java.util.stream.Stream;
 import static org.apache.paimon.CoreOptions.BUCKET;
 import static org.apache.paimon.CoreOptions.FILE_FORMAT;
 import static org.apache.paimon.CoreOptions.PATH;
-import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
+import static org.apache.paimon.flink.LogicalTypeConversion.toDataType;
 import static org.apache.paimon.utils.FailingFileIO.retryArtificialException;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.api.Assumptions.assumeFalse;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FileSystemCatalogITCase.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FileSystemCatalogITCase.java
index ab154f6f6..78c3fbff1 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FileSystemCatalogITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
@@ -24,7 +24,7 @@ import org.apache.flink.util.CloseableIterator;
 import org.apache.paimon.catalog.AbstractCatalog;
 import org.apache.paimon.catalog.Catalog;
 import org.apache.paimon.catalog.Identifier;
-import org.apache.paimon.connector.kafka.KafkaTableTestBase;
+import org.apache.paimon.flink.kafka.KafkaTableTestBase;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FiniteTestSource.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FiniteTestSource.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FiniteTestSource.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FiniteTestSource.java
index 748187ea1..0ebfa0867 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FiniteTestSource.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FiniteTestSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.api.common.state.CheckpointListener;
 import org.apache.flink.api.common.state.ListState;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FlinkCatalogTest.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FlinkCatalogTest.java
index c7c4cbc4f..cdf5b75fe 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FlinkCatalogTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.DataTypes;
 import org.apache.flink.table.api.Schema;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ForceCompactionITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ForceCompactionITCase.java
index 5d6321711..0bc040783 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ForceCompactionITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.Snapshot;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FullCompactionFileStoreITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FullCompactionFileStoreITCase.java
index 683f220a5..630f00770 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FullCompactionFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 import org.apache.flink.types.RowKind;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LargeDataITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LargeDataITCase.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LargeDataITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LargeDataITCase.java
index 04fbe629e..32f1acf5c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LargeDataITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LargeDataITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LogSystemITCase.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LogSystemITCase.java
index bc9b196fb..709d8be89 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LogSystemITCase.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.TableResult;
 import org.apache.flink.types.Row;
 
-import org.apache.paimon.connector.kafka.KafkaTableTestBase;
+import org.apache.paimon.flink.kafka.KafkaTableTestBase;
 import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LookupChangelogWithAggITCase.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LookupChangelogWithAggITCase.java
index 64a9bc346..b1d78825e 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LookupChangelogWithAggITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 import org.apache.flink.types.RowKind;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LookupJoinITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LookupJoinITCase.java
index e8ef14e71..063c88cde 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/LookupJoinITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/MappingTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/MappingTableITCase.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/MappingTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/MappingTableITCase.java
index 17a614e3c..d2e75ad57 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/MappingTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/MappingTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
@@ -25,7 +25,7 @@ import org.apache.flink.types.Row;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
-import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.flink.util.AbstractTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PartialUpdateITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PartialUpdateITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PartialUpdateITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PartialUpdateITCase.java
index dca0a98f6..a968700b7 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PartialUpdateITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PartialUpdateITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.config.ExecutionConfigOptions;
 import org.apache.flink.types.Row;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PreAggregationITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PreAggregationITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PreAggregationITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PreAggregationITCase.java
index 24f8c91fe..a3d83811b 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PreAggregationITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PreAggregationITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PredicateConverterTest.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PredicateConverterTest.java
index 7418f1732..398c6156c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PredicateConverterTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.DataTypes;
 import org.apache.flink.table.expressions.CallExpression;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PredicateITCase.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PredicateITCase.java
index abee498f3..d31cf6fed 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/PredicateITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ReadWriteTableITCase.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ReadWriteTableITCase.java
index cca08b28b..952f5ed3c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ReadWriteTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.api.dag.Transformation;
 import org.apache.flink.configuration.Configuration;
@@ -39,8 +39,8 @@ import org.apache.flink.table.types.logical.VarCharType;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.connector.sink.TableStoreSink;
-import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.flink.sink.TableStoreSink;
+import org.apache.paimon.flink.util.AbstractTestBase;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.schema.SchemaManager;
@@ -57,27 +57,27 @@ import java.util.Map;
 import java.util.UUID;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.paimon.connector.AbstractTableStoreFactory.buildFileStoreTable;
-import static org.apache.paimon.connector.FlinkConnectorOptions.SCAN_PARALLELISM;
-import static org.apache.paimon.connector.FlinkConnectorOptions.SINK_PARALLELISM;
-import static org.apache.paimon.connector.TableStoreTestBase.createResolvedTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.bEnv;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.bExeEnv;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQuery;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.checkFileStorePath;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertInto;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertOverwrite;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertOverwritePartition;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.sEnv;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
+import static org.apache.paimon.flink.AbstractTableStoreFactory.buildFileStoreTable;
+import static org.apache.paimon.flink.FlinkConnectorOptions.SCAN_PARALLELISM;
+import static org.apache.paimon.flink.FlinkConnectorOptions.SINK_PARALLELISM;
+import static org.apache.paimon.flink.TableStoreTestBase.createResolvedTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.bEnv;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.bExeEnv;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildQuery;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.checkFileStorePath;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.createTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.createTemporaryTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertInto;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertIntoFromTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertOverwrite;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertOverwritePartition;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.sEnv;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testBatchRead;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testStreamingRead;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.validateStreamingReadResult;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/RescaleBucketITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/RescaleBucketITCase.java
index acfe424ca..939489cf7 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/RescaleBucketITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.core.execution.JobClient;
 import org.apache.flink.core.execution.SavepointFormatType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/SchemaChangeITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/SchemaChangeITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/SchemaChangeITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/SchemaChangeITCase.java
index 66528bbf7..5c6c030bd 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/SchemaChangeITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/SchemaChangeITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/SerializableRowData.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/SerializableRowData.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/SerializableRowData.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/SerializableRowData.java
index 8b101e36f..594affc12 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/SerializableRowData.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/SerializableRowData.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.api.common.typeutils.TypeSerializer;
 import org.apache.flink.core.memory.DataInputViewStreamWrapper;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ShowCreateUtil.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ShowCreateUtil.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ShowCreateUtil.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ShowCreateUtil.java
index 187b1c053..20ff7a982 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ShowCreateUtil.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ShowCreateUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.table.api.TableException;
 import org.apache.flink.table.catalog.CatalogBaseTable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/StreamingReadWriteTableWithKafkaLogITCase.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/StreamingReadWriteTableWithKafkaLogITCase.java
index 7bd8ebb93..f0af9fdd4 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/StreamingReadWriteTableWithKafkaLogITCase.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.connector.kafka.KafkaTableTestBase;
+import org.apache.paimon.flink.kafka.KafkaTableTestBase;
 import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Disabled;
@@ -36,23 +36,23 @@ import java.util.Map;
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
 import static org.apache.paimon.CoreOptions.SCAN_MODE;
 import static org.apache.paimon.CoreOptions.SCAN_TIMESTAMP_MILLIS;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.SCAN_LATEST;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.assertNoMoreRecords;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQuery;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.checkFileStorePath;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTableWithKafkaLog;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertInto;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoPartition;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertOverwritePartition;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.SCAN_LATEST;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.assertNoMoreRecords;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildQuery;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.checkFileStorePath;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.createTableWithKafkaLog;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.createTemporaryTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertInto;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertIntoFromTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertIntoPartition;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertOverwritePartition;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testBatchRead;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testStreamingRead;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.validateStreamingReadResult;
 
 /** Streaming reading and writing with Kafka log IT cases. */
 public class StreamingReadWriteTableWithKafkaLogITCase extends KafkaTableTestBase {
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/StreamingWarehouseITCase.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/StreamingWarehouseITCase.java
index 666c90d1b..706d8129e 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/StreamingWarehouseITCase.java
@@ -16,22 +16,22 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.api.common.JobStatus;
 import org.apache.flink.core.execution.JobClient;
 import org.apache.flink.types.Row;
 
-import org.apache.paimon.connector.kafka.KafkaTableTestBase;
+import org.apache.paimon.flink.kafka.KafkaTableTestBase;
 import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.Test;
 
 import java.time.LocalDateTime;
 import java.util.function.Function;
 
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.bEnv;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.sEnv;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.bEnv;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.sEnv;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Paimon IT case to test concurrent batch overwrite and streaming insert into. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/TableStoreTestBase.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/TableStoreTestBase.java
index 86d5215e2..14426266e 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/TableStoreTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector;
+package org.apache.paimon.flink;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.api.common.restartstrategy.RestartStrategies;
@@ -38,7 +38,7 @@ import org.apache.flink.table.types.utils.TypeConversions;
 import org.apache.flink.types.Row;
 
 import org.apache.commons.io.FileUtils;
-import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.flink.util.AbstractTestBase;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.MethodSource;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/ActionITCaseBase.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/ActionITCaseBase.java
index 9fef09af2..d613fd422 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/ActionITCaseBase.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.action;
+package org.apache.paimon.flink.action;
 
 import org.apache.paimon.catalog.Catalog;
 import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.catalog.CatalogFactory;
 import org.apache.paimon.catalog.Identifier;
-import org.apache.paimon.connector.util.AbstractTestBase;
 import org.apache.paimon.data.DataFormatTestUtil;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.flink.util.AbstractTestBase;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.schema.Schema;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/CompactActionITCase.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/CompactActionITCase.java
index dcf316ce2..6fe1f980c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/CompactActionITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.action;
+package org.apache.paimon.flink.action;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.core.execution.JobClient;
@@ -25,8 +25,8 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.Snapshot;
-import org.apache.paimon.connector.FlinkConnectorOptions;
 import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.flink.FlinkConnectorOptions;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/DeleteActionITCase.java
similarity index 93%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/DeleteActionITCase.java
index be206dee4..f4905639c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/DeleteActionITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.action;
+package org.apache.paimon.flink.action;
 
 import org.apache.flink.types.Row;
 
@@ -38,10 +38,10 @@ import java.util.HashMap;
 import java.util.List;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testStreamingRead;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.validateStreamingReadResult;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.params.provider.Arguments.arguments;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/DropPartitionActionITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/DropPartitionActionITCase.java
index 6d7d8b390..e9caa5250 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/DropPartitionActionITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.action;
+package org.apache.paimon.flink.action;
 
 import org.apache.paimon.Snapshot;
 import org.apache.paimon.data.BinaryString;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/MergeIntoActionITCase.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/MergeIntoActionITCase.java
index ea20018d6..56a499671 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/MergeIntoActionITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.action;
+package org.apache.paimon.flink.action;
 
 import org.apache.flink.table.planner.factories.TestValuesTableFactory;
 import org.apache.flink.types.Row;
@@ -36,15 +36,15 @@ import java.util.List;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
 import static org.apache.paimon.CoreOptions.CHANGELOG_PRODUCER;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildDdl;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTable;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertInto;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.sEnv;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
-import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildDdl;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.createTable;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.insertInto;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.sEnv;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testBatchRead;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.testStreamingRead;
+import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.validateStreamingReadResult;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 import static org.junit.jupiter.params.provider.Arguments.arguments;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogSerializationTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/kafka/KafkaLogSerializationTest.java
similarity index 94%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogSerializationTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/kafka/KafkaLogSerializationTest.java
index 014d827d1..4da1a133e 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogSerializationTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/kafka/KafkaLogSerializationTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.kafka;
+package org.apache.paimon.flink.kafka;
 
 import org.apache.flink.connector.kafka.source.reader.deserializer.KafkaRecordDeserializationSchema;
 import org.apache.flink.table.data.RowData;
@@ -33,10 +33,10 @@ import org.junit.jupiter.api.Test;
 
 import java.util.concurrent.atomic.AtomicReference;
 
-import static org.apache.paimon.connector.FlinkRowData.toFlinkRowKind;
-import static org.apache.paimon.connector.kafka.KafkaLogTestUtils.discoverKafkaLogFactory;
-import static org.apache.paimon.connector.kafka.KafkaLogTestUtils.testContext;
-import static org.apache.paimon.connector.kafka.KafkaLogTestUtils.testRecord;
+import static org.apache.paimon.flink.FlinkRowData.toFlinkRowKind;
+import static org.apache.paimon.flink.kafka.KafkaLogTestUtils.discoverKafkaLogFactory;
+import static org.apache.paimon.flink.kafka.KafkaLogTestUtils.testContext;
+import static org.apache.paimon.flink.kafka.KafkaLogTestUtils.testRecord;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link KafkaLogSerializationSchema} and {@link KafkaLogDeserializationSchema}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/kafka/KafkaLogTestUtils.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/kafka/KafkaLogTestUtils.java
index e2f5c941a..a2a21b079 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/kafka/KafkaLogTestUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.kafka;
+package org.apache.paimon.flink.kafka;
 
 import org.apache.flink.api.common.typeinfo.TypeInformation;
 import org.apache.flink.configuration.Configuration;
@@ -42,8 +42,8 @@ import org.apache.flink.table.types.utils.TypeConversions;
 
 import org.apache.paimon.CoreOptions.LogChangelogMode;
 import org.apache.paimon.CoreOptions.LogConsistency;
-import org.apache.paimon.connector.log.LogStoreTableFactory;
 import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.flink.log.LogStoreTableFactory;
 import org.apache.paimon.table.sink.SinkRecord;
 import org.apache.paimon.types.RowKind;
 
@@ -58,9 +58,9 @@ import java.util.stream.IntStream;
 
 import static org.apache.paimon.CoreOptions.LOG_CHANGELOG_MODE;
 import static org.apache.paimon.CoreOptions.LOG_CONSISTENCY;
-import static org.apache.paimon.connector.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
-import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
 import static org.apache.paimon.data.BinaryRow.EMPTY_ROW;
+import static org.apache.paimon.flink.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
+import static org.apache.paimon.flink.kafka.KafkaLogOptions.TOPIC;
 import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 
 /** Utils for the test of {@link KafkaLogStoreFactory}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaTableTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/kafka/KafkaTableTestBase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaTableTestBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/kafka/KafkaTableTestBase.java
index 6803b816c..80c5ab395 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaTableTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/kafka/KafkaTableTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.kafka;
+package org.apache.paimon.flink.kafka;
 
 import org.apache.flink.api.common.restartstrategy.RestartStrategies;
 import org.apache.flink.streaming.api.environment.ExecutionCheckpointingOptions;
@@ -34,7 +34,7 @@ import org.apache.kafka.common.TopicPartition;
 import org.apache.kafka.common.errors.TopicExistsException;
 import org.apache.kafka.common.errors.UnknownTopicOrPartitionException;
 import org.apache.kafka.common.serialization.StringDeserializer;
-import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.flink.util.AbstractTestBase;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.extension.AfterAllCallback;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/lookup/LookupTableTest.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/lookup/LookupTableTest.java
index 21a99ad96..64a5823b1 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/lookup/LookupTableTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.lookup;
+package org.apache.paimon.flink.lookup;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CommittableSerializerTest.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CommittableSerializerTest.java
index b525b249c..4bb7fbe5f 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CommittableSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.paimon.io.CompactIncrement;
 import org.apache.paimon.io.NewFilesIncrement;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CommitterOperatorTest.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CommitterOperatorTest.java
index 74b96f3d0..de8055806 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CommitterOperatorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.api.common.ExecutionConfig;
 import org.apache.flink.api.common.typeutils.TypeSerializer;
@@ -24,8 +24,8 @@ import org.apache.flink.runtime.checkpoint.OperatorSubtaskState;
 import org.apache.flink.streaming.api.watermark.Watermark;
 import org.apache.flink.streaming.util.OneInputStreamOperatorTestHarness;
 
-import org.apache.paimon.connector.VersionedSerializerWrapper;
 import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.flink.VersionedSerializerWrapper;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.manifest.ManifestCommittableSerializer;
 import org.apache.paimon.table.FileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CommitterOperatorTestBase.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CommitterOperatorTestBase.java
index 6dcb12b3b..235b0454a 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CommitterOperatorTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CompactorSinkITCase.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CompactorSinkITCase.java
index 93637b704..f2885f763 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/CompactorSinkITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.streaming.api.datastream.DataStreamSource;
@@ -24,10 +24,10 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
 
 import org.apache.paimon.Snapshot;
-import org.apache.paimon.connector.source.CompactorSourceBuilder;
-import org.apache.paimon.connector.util.AbstractTestBase;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.flink.source.CompactorSourceBuilder;
+import org.apache.paimon.flink.util.AbstractTestBase;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.schema.Schema;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/FileStoreShuffleBucketTest.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/FileStoreShuffleBucketTest.java
index a5803dcd3..7857e40b0 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/FileStoreShuffleBucketTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.runtime.state.StateSnapshotContext;
@@ -27,10 +27,10 @@ import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
 import org.apache.flink.table.types.logical.RowType;
 
-import org.apache.paimon.connector.CatalogITCaseBase;
-import org.apache.paimon.connector.FlinkConnectorOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.flink.CatalogITCaseBase;
+import org.apache.paimon.flink.FlinkConnectorOptions;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.table.FileStoreTable;
@@ -46,7 +46,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
-import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
+import static org.apache.paimon.flink.LogicalTypeConversion.toLogicalType;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
 /** Tests of shuffle data by bucket and partition. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/LogOffsetCommittableTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/LogOffsetCommittableTest.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/LogOffsetCommittableTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/LogOffsetCommittableTest.java
index be317e545..74dda8ac6 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/LogOffsetCommittableTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/LogOffsetCommittableTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/SinkSavepointITCase.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/SinkSavepointITCase.java
index c69564733..668a7c7b1 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/sink/SinkSavepointITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.sink;
+package org.apache.paimon.flink.sink;
 
 import org.apache.flink.api.common.JobStatus;
 import org.apache.flink.configuration.CheckpointingOptions;
@@ -36,7 +36,7 @@ import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
 import org.apache.flink.util.ExceptionUtils;
 
-import org.apache.paimon.connector.util.AbstractTestBase;
+import org.apache.paimon.flink.util.AbstractTestBase;
 import org.apache.paimon.utils.FailingFileIO;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/CompactorSourceITCase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/CompactorSourceITCase.java
index 4483eb00e..b0863406b 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/CompactorSourceITCase.java
@@ -16,18 +16,18 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.util.CloseableIterator;
 
-import org.apache.paimon.connector.util.AbstractTestBase;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.flink.util.AbstractTestBase;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.io.DataFileMetaSerializer;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/ContinuousFileSplitEnumeratorTest.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/ContinuousFileSplitEnumeratorTest.java
index e0c791ffe..469083396 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/ContinuousFileSplitEnumeratorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
 import org.apache.flink.connector.testutils.source.reader.TestingSplitEnumeratorContext;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceReaderTest.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceReaderTest.java
index 95f81334e..57e89b925 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceReaderTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.connector.testutils.source.reader.TestingReaderContext;
 
@@ -35,7 +35,7 @@ import org.junit.jupiter.api.io.TempDir;
 import java.util.Arrays;
 import java.util.Collections;
 
-import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
+import static org.apache.paimon.flink.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
 import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitGeneratorTest.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitGeneratorTest.java
index cac68f355..45435a7a4 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitGeneratorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.manifest.FileKind;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitReaderTest.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitReaderTest.java
index e0ce5b4ff..71db1712a 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitReaderTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.java.tuple.Tuple2;
 import org.apache.flink.connector.base.source.reader.RecordsWithSplitIds;
@@ -51,9 +51,9 @@ import java.util.List;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
-import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newFile;
-import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
+import static org.apache.paimon.flink.LogicalTypeConversion.toDataType;
+import static org.apache.paimon.flink.source.FileStoreSourceSplitSerializerTest.newFile;
+import static org.apache.paimon.flink.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
 import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitSerializerTest.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitSerializerTest.java
index 4d16e2c00..d39eff1aa 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.core.io.SimpleVersionedSerialization;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitStateTest.java
similarity index 91%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitStateTest.java
index 84e0f57da..512f809cb 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/FileStoreSourceSplitStateTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.connector.file.src.util.RecordAndPosition;
 
@@ -24,8 +24,8 @@ import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
 
-import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newFile;
-import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
+import static org.apache.paimon.flink.source.FileStoreSourceSplitSerializerTest.newFile;
+import static org.apache.paimon.flink.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
 import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/PendingSplitsCheckpointSerializerTest.java
similarity index 94%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/PendingSplitsCheckpointSerializerTest.java
index a426256c5..77b7ac367 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/PendingSplitsCheckpointSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.core.io.SimpleVersionedSerialization;
 
@@ -26,8 +26,8 @@ import java.io.IOException;
 import java.util.Arrays;
 import java.util.Collections;
 
-import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newFile;
-import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
+import static org.apache.paimon.flink.source.FileStoreSourceSplitSerializerTest.newFile;
+import static org.apache.paimon.flink.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
 import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/RecordsFunctionTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/RecordsFunctionTest.java
similarity index 94%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/RecordsFunctionTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/RecordsFunctionTest.java
index 3fb94d6dd..a22fb9ffe 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/RecordsFunctionTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/RecordsFunctionTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.connector.base.source.reader.RecordsWithSplitIds;
 import org.apache.flink.connector.file.src.reader.BulkFormat;
@@ -27,8 +27,8 @@ import org.apache.flink.connector.testutils.source.reader.TestingReaderOutput;
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
 
-import org.apache.paimon.connector.source.RecordsFunction.IterateRecordsFunction;
-import org.apache.paimon.connector.source.RecordsFunction.SingleRecordsFunction;
+import org.apache.paimon.flink.source.RecordsFunction.IterateRecordsFunction;
+import org.apache.paimon.flink.source.RecordsFunction.SingleRecordsFunction;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/SingleIteratorRecordsTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/SingleIteratorRecordsTest.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/SingleIteratorRecordsTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/SingleIteratorRecordsTest.java
index b57ca692f..5e10ba258 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/SingleIteratorRecordsTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/SingleIteratorRecordsTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.connector.file.src.reader.BulkFormat;
 import org.apache.flink.connector.file.src.util.SingletonResultIterator;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumeratorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/StaticFileStoreSplitEnumeratorTest.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumeratorTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/StaticFileStoreSplitEnumeratorTest.java
index d1480fb54..c36b26534 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumeratorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/StaticFileStoreSplitEnumeratorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.connector.testutils.source.reader.TestingSplitEnumeratorContext;
 
@@ -28,7 +28,7 @@ import java.util.List;
 import java.util.Map;
 
 import static org.apache.flink.connector.testutils.source.reader.TestingSplitEnumeratorContext.SplitAssignmentState;
-import static org.apache.paimon.connector.source.ContinuousFileSplitEnumeratorTest.createSnapshotSplit;
+import static org.apache.paimon.flink.source.ContinuousFileSplitEnumeratorTest.createSnapshotSplit;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link StaticFileStoreSplitEnumerator}. */
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/TestChangelogDataReadWrite.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/TestChangelogDataReadWrite.java
index 723c6807c..556372e32 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/source/TestChangelogDataReadWrite.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.source;
+package org.apache.paimon.flink.source;
 
 import org.apache.flink.api.java.tuple.Tuple2;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/AbstractTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/util/AbstractTestBase.java
similarity index 98%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/AbstractTestBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/util/AbstractTestBase.java
index 5f6f55845..ee0a6660a 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/AbstractTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/util/AbstractTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.util;
+package org.apache.paimon.flink.util;
 
 import org.apache.flink.client.program.ClusterClient;
 import org.apache.flink.runtime.client.JobStatusMessage;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/MiniClusterWithClientExtension.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/util/MiniClusterWithClientExtension.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/MiniClusterWithClientExtension.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/util/MiniClusterWithClientExtension.java
index 6715c3c30..99d0d01c0 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/MiniClusterWithClientExtension.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/util/MiniClusterWithClientExtension.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.util;
+package org.apache.paimon.flink.util;
 
 import org.apache.flink.annotation.Experimental;
 import org.apache.flink.client.program.ClusterClient;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/util/ReadWriteTableTestUtil.java
similarity index 96%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/util/ReadWriteTableTestUtil.java
index dbefd4a0d..22dddb6c5 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/util/ReadWriteTableTestUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.connector.util;
+package org.apache.paimon.flink.util;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.api.common.restartstrategy.RestartStrategies;
@@ -29,8 +29,8 @@ import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.connector.ReadWriteTableITCase;
-import org.apache.paimon.connector.StreamingReadWriteTableWithKafkaLogITCase;
+import org.apache.paimon.flink.ReadWriteTableITCase;
+import org.apache.paimon.flink.StreamingReadWriteTableWithKafkaLogITCase;
 import org.apache.paimon.utils.BlockingIterator;
 
 import javax.annotation.Nullable;
@@ -47,11 +47,11 @@ import java.util.concurrent.TimeoutException;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.registerData;
 import static org.apache.paimon.CoreOptions.SCAN_MODE;
-import static org.apache.paimon.connector.FlinkConnectorOptions.LOG_SYSTEM;
-import static org.apache.paimon.connector.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
-import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
-import static org.apache.paimon.connector.kafka.KafkaTableTestBase.createTopicIfNotExists;
-import static org.apache.paimon.connector.kafka.KafkaTableTestBase.getBootstrapServers;
+import static org.apache.paimon.flink.FlinkConnectorOptions.LOG_SYSTEM;
+import static org.apache.paimon.flink.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
+import static org.apache.paimon.flink.kafka.KafkaLogOptions.TOPIC;
+import static org.apache.paimon.flink.kafka.KafkaTableTestBase.createTopicIfNotExists;
+import static org.apache.paimon.flink.kafka.KafkaTableTestBase.getBootstrapServers;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /**
diff --git a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
index 5e9ce987d..ab47360d2 100644
--- a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
@@ -37,7 +37,7 @@ import org.apache.paimon.catalog.AbstractCatalog;
 import org.apache.paimon.catalog.Catalog;
 import org.apache.paimon.catalog.CatalogLock;
 import org.apache.paimon.catalog.Identifier;
-import org.apache.paimon.connector.FlinkCatalog;
+import org.apache.paimon.flink.FlinkCatalog;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.schema.SchemaManager;
 import org.assertj.core.api.Assertions;


[incubator-paimon] 30/32: [core] Rename paimon: TableStore to Paimon 1

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit bd360c62ddcbe64bb660a05e7d31a67e310278db
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Sat Mar 18 10:08:38 2023 +0800

    [core] Rename paimon: TableStore to Paimon 1
---
 docs/content/engines/hive.md                          |  2 +-
 docs/content/how-to/creating-tables.md                |  2 +-
 .../java/org/apache/paimon/tests/HiveE2eTest.java     |  2 +-
 .../main/java/org/apache/paimon/hive/HiveCatalog.java |  4 ++--
 ...tInspector.java => PaimonDateObjectInspector.java} |  4 ++--
 ...ector.java => PaimonTimestampObjectInspector.java} |  4 ++--
 .../{TableStoreJobConf.java => PaimonJobConf.java}    |  4 ++--
 ...ableStoreHiveMetaHook.java => PaimonMetaHook.java} |  2 +-
 .../hive/{TableStoreSerDe.java => PaimonSerDe.java}   |  8 ++++----
 ...eStorageHandler.java => PaimonStorageHandler.java} |  9 ++++-----
 .../paimon/hive/mapred/TableStoreInputFormat.java     |  4 ++--
 ...tInspector.java => PaimonCharObjectInspector.java} |  4 ++--
 ...tInspector.java => PaimonDateObjectInspector.java} |  4 ++--
 ...spector.java => PaimonDecimalObjectInspector.java} |  4 ++--
 ...tInspector.java => PaimonListObjectInspector.java} |  6 +++---
 ...ctInspector.java => PaimonMapObjectInspector.java} |  8 ++++----
 ...Factory.java => PaimonObjectInspectorFactory.java} | 19 +++++++++----------
 ...spector.java => PaimonRowDataObjectInspector.java} |  6 +++---
 ...nspector.java => PaimonStringObjectInspector.java} |  4 ++--
 ...ector.java => PaimonTimestampObjectInspector.java} |  4 ++--
 ...spector.java => PaimonVarcharObjectInspector.java} |  4 ++--
 ...{TableStoreSerDeTest.java => PaimonSerDeTest.java} | 18 +++++++++---------
 ...lerITCase.java => PaimonStorageHandlerITCase.java} | 16 ++++++++--------
 ...orTest.java => PaimonCharObjectInspectorTest.java} | 12 ++++++------
 ...orTest.java => PaimonDateObjectInspectorTest.java} | 12 ++++++------
 ...est.java => PaimonDecimalObjectInspectorTest.java} | 12 ++++++------
 ...orTest.java => PaimonListObjectInspectorTest.java} |  8 ++++----
 ...torTest.java => PaimonMapObjectInspectorTest.java} | 12 ++++++------
 ...est.java => PaimonRowDataObjectInspectorTest.java} | 16 ++++++++--------
 ...Test.java => PaimonStringObjectInspectorTest.java} | 12 ++++++------
 ...t.java => PaimonTimestampObjectInspectorTest.java} | 12 ++++++------
 ...est.java => PaimonVarcharObjectInspectorTest.java} | 12 ++++++------
 32 files changed, 124 insertions(+), 126 deletions(-)

diff --git a/docs/content/engines/hive.md b/docs/content/engines/hive.md
index 5ae357cbd..11e026552 100644
--- a/docs/content/engines/hive.md
+++ b/docs/content/engines/hive.md
@@ -164,7 +164,7 @@ To access existing paimon table, you can also register them as external tables i
 -- Pointing the location to the path of table is enough.
 
 CREATE EXTERNAL TABLE external_test_table
-STORED BY 'org.apache.paimon.hive.TableStoreHiveStorageHandler'
+STORED BY 'org.apache.paimon.hive.PaimonStorageHandler'
 LOCATION '/path/to/table/store/warehouse/default.db/test_table';
 
 -- Read records from external_test_table
diff --git a/docs/content/how-to/creating-tables.md b/docs/content/how-to/creating-tables.md
index 114e6cb1d..ab8532583 100644
--- a/docs/content/how-to/creating-tables.md
+++ b/docs/content/how-to/creating-tables.md
@@ -363,7 +363,7 @@ Hive SQL only supports reading from an external table. The following SQL creates
 
 ```sql
 CREATE EXTERNAL TABLE my_table
-STORED BY 'org.apache.paimon.hive.TableStoreHiveStorageHandler'
+STORED BY 'org.apache.paimon.hive.PaimonStorageHandler'
 LOCATION 'hdfs://path/to/table';
 ```
 
diff --git a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
index a3378b2ab..8155306ca 100644
--- a/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
+++ b/paimon-e2e-tests/src/test/java/org/apache/paimon/tests/HiveE2eTest.java
@@ -77,7 +77,7 @@ public class HiveE2eTest extends E2eReaderTestBase {
         String externalTablePkDdl =
                 String.format(
                         "CREATE EXTERNAL TABLE IF NOT EXISTS %s\n"
-                                + "STORED BY 'org.apache.paimon.hive.TableStoreHiveStorageHandler'\n"
+                                + "STORED BY 'org.apache.paimon.hive.PaimonStorageHandler'\n"
                                 + "LOCATION '%s/default.db/%s';\n",
                         table, tableStorePkPath, table);
 
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
index fa35cff2b..9ff6c3d39 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
@@ -75,9 +75,9 @@ public class HiveCatalog extends AbstractCatalog {
             "org.apache.paimon.hive.mapred.TableStoreInputFormat";
     private static final String OUTPUT_FORMAT_CLASS_NAME =
             "org.apache.paimon.hive.mapred.TableStoreOutputFormat";
-    private static final String SERDE_CLASS_NAME = "org.apache.paimon.hive.TableStoreSerDe";
+    private static final String SERDE_CLASS_NAME = "org.apache.paimon.hive.PaimonSerDe";
     private static final String STORAGE_HANDLER_CLASS_NAME =
-            "org.apache.paimon.hive.TableStoreHiveStorageHandler";
+            "org.apache.paimon.hive.PaimonStorageHandler";
 
     private final HiveConf hiveConf;
     private final String clientClassName;
diff --git a/paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspector.java b/paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/PaimonDateObjectInspector.java
similarity index 93%
rename from paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspector.java
rename to paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/PaimonDateObjectInspector.java
index fe8cb82c7..80d650f3b 100644
--- a/paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/PaimonDateObjectInspector.java
@@ -25,10 +25,10 @@ import org.apache.hadoop.hive.serde2.objectinspector.primitive.DateObjectInspect
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory;
 
 /** {@link AbstractPrimitiveJavaObjectInspector} for DATE type. */
-public class TableStoreDateObjectInspector extends AbstractPrimitiveJavaObjectInspector
+public class PaimonDateObjectInspector extends AbstractPrimitiveJavaObjectInspector
         implements DateObjectInspector {
 
-    public TableStoreDateObjectInspector() {
+    public PaimonDateObjectInspector() {
         super(TypeInfoFactory.dateTypeInfo);
     }
 
diff --git a/paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspector.java b/paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/PaimonTimestampObjectInspector.java
similarity index 93%
rename from paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspector.java
rename to paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/PaimonTimestampObjectInspector.java
index 26bcedad3..384d5fafd 100644
--- a/paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-3.1/src/main/java/org/apache/paimon/hive/objectinspector/PaimonTimestampObjectInspector.java
@@ -25,10 +25,10 @@ import org.apache.hadoop.hive.serde2.objectinspector.primitive.TimestampObjectIn
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory;
 
 /** {@link AbstractPrimitiveJavaObjectInspector} for TIMESTAMP type. */
-public class TableStoreTimestampObjectInspector extends AbstractPrimitiveJavaObjectInspector
+public class PaimonTimestampObjectInspector extends AbstractPrimitiveJavaObjectInspector
         implements TimestampObjectInspector {
 
-    public TableStoreTimestampObjectInspector() {
+    public PaimonTimestampObjectInspector() {
         super(TypeInfoFactory.timestampTypeInfo);
     }
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonJobConf.java
similarity index 97%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonJobConf.java
index 6ddded952..f733e8513 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonJobConf.java
@@ -32,7 +32,7 @@ import java.util.Properties;
  * Utility class to convert Hive table property keys and get file store specific configurations from
  * {@link JobConf}.
  */
-public class TableStoreJobConf {
+public class PaimonJobConf {
 
     private static final String INTERNAL_LOCATION = "paimon.internal.location";
     private static final String INTERNAL_CATALOG_CONFIG = "paimon.catalog.config";
@@ -41,7 +41,7 @@ public class TableStoreJobConf {
 
     private final JobConf jobConf;
 
-    public TableStoreJobConf(JobConf jobConf) {
+    public PaimonJobConf(JobConf jobConf) {
         this.jobConf = jobConf;
     }
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonMetaHook.java
similarity index 97%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonMetaHook.java
index 3d6e0163b..e27292382 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonMetaHook.java
@@ -29,7 +29,7 @@ import org.apache.paimon.utils.Preconditions;
  * {@link HiveMetaHook} for paimon. Currently this class is only used to set input and output
  * formats.
  */
-public class TableStoreHiveMetaHook implements HiveMetaHook {
+public class PaimonMetaHook implements HiveMetaHook {
 
     @Override
     public void preCreateTable(Table table) throws MetaException {
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreSerDe.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonSerDe.java
similarity index 90%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreSerDe.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonSerDe.java
index c2818a7b2..2e4297352 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreSerDe.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonSerDe.java
@@ -24,7 +24,7 @@ import org.apache.hadoop.hive.serde2.SerDeException;
 import org.apache.hadoop.hive.serde2.SerDeStats;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
 import org.apache.hadoop.io.Writable;
-import org.apache.paimon.hive.objectinspector.TableStoreRowDataObjectInspector;
+import org.apache.paimon.hive.objectinspector.PaimonRowDataObjectInspector;
 
 import javax.annotation.Nullable;
 
@@ -35,16 +35,16 @@ import java.util.Properties;
  *
  * <p>Currently this class only supports deserialization.
  */
-public class TableStoreSerDe extends AbstractSerDe {
+public class PaimonSerDe extends AbstractSerDe {
 
-    private TableStoreRowDataObjectInspector inspector;
+    private PaimonRowDataObjectInspector inspector;
 
     @Override
     public void initialize(@Nullable Configuration configuration, Properties properties)
             throws SerDeException {
         HiveSchema schema = HiveSchema.extract(configuration, properties);
         inspector =
-                new TableStoreRowDataObjectInspector(
+                new PaimonRowDataObjectInspector(
                         schema.fieldNames(), schema.fieldTypes(), schema.fieldComments());
     }
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveStorageHandler.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonStorageHandler.java
similarity index 92%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveStorageHandler.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonStorageHandler.java
index 1f66aa92a..37cf0cf4e 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveStorageHandler.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonStorageHandler.java
@@ -39,8 +39,7 @@ import java.util.Map;
 import java.util.Properties;
 
 /** {@link HiveStorageHandler} for paimon. This is the entrance class of Hive API. */
-public class TableStoreHiveStorageHandler
-        implements HiveStoragePredicateHandler, HiveStorageHandler {
+public class PaimonStorageHandler implements HiveStoragePredicateHandler, HiveStorageHandler {
 
     private Configuration conf;
 
@@ -56,12 +55,12 @@ public class TableStoreHiveStorageHandler
 
     @Override
     public Class<? extends AbstractSerDe> getSerDeClass() {
-        return TableStoreSerDe.class;
+        return PaimonSerDe.class;
     }
 
     @Override
     public HiveMetaHook getMetaHook() {
-        return new TableStoreHiveMetaHook();
+        return new PaimonMetaHook();
     }
 
     @Override
@@ -72,7 +71,7 @@ public class TableStoreHiveStorageHandler
     @Override
     public void configureInputJobProperties(TableDesc tableDesc, Map<String, String> map) {
         Properties properties = tableDesc.getProperties();
-        TableStoreJobConf.configureInputJobProperties(conf, properties, map);
+        PaimonJobConf.configureInputJobProperties(conf, properties, map);
     }
 
     public void configureInputJobCredentials(TableDesc tableDesc, Map<String, String> map) {}
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
index 09258b3fb..1712edfd4 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
@@ -28,9 +28,9 @@ import org.apache.hadoop.mapred.RecordReader;
 import org.apache.hadoop.mapred.Reporter;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.catalog.CatalogContext;
+import org.apache.paimon.hive.PaimonJobConf;
 import org.apache.paimon.hive.RowDataContainer;
 import org.apache.paimon.hive.SearchArgumentToPredicateConverter;
-import org.apache.paimon.hive.TableStoreJobConf;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.schema.TableSchema;
@@ -74,7 +74,7 @@ public class TableStoreInputFormat implements InputFormat<Void, RowDataContainer
     }
 
     private FileStoreTable createFileStoreTable(JobConf jobConf) {
-        TableStoreJobConf wrapper = new TableStoreJobConf(jobConf);
+        PaimonJobConf wrapper = new PaimonJobConf(jobConf);
         Options options = new Options();
         options.set(CoreOptions.PATH, wrapper.getLocation());
         CatalogContext catalogContext = CatalogContext.create(options, jobConf);
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreCharObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonCharObjectInspector.java
similarity index 93%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreCharObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonCharObjectInspector.java
index 71e95fe90..ca297dd74 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreCharObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonCharObjectInspector.java
@@ -26,12 +26,12 @@ import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory;
 import org.apache.paimon.data.BinaryString;
 
 /** {@link AbstractPrimitiveJavaObjectInspector} for CHAR type. */
-public class TableStoreCharObjectInspector extends AbstractPrimitiveJavaObjectInspector
+public class PaimonCharObjectInspector extends AbstractPrimitiveJavaObjectInspector
         implements HiveCharObjectInspector {
 
     private final int len;
 
-    public TableStoreCharObjectInspector(int len) {
+    public PaimonCharObjectInspector(int len) {
         super(TypeInfoFactory.getCharTypeInfo(len));
         this.len = len;
     }
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonDateObjectInspector.java
similarity index 93%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonDateObjectInspector.java
index 14e992a74..27b082e9a 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonDateObjectInspector.java
@@ -27,10 +27,10 @@ import org.apache.paimon.utils.DateTimeUtils;
 import java.sql.Date;
 
 /** {@link AbstractPrimitiveJavaObjectInspector} for DATE type. */
-public class TableStoreDateObjectInspector extends AbstractPrimitiveJavaObjectInspector
+public class PaimonDateObjectInspector extends AbstractPrimitiveJavaObjectInspector
         implements DateObjectInspector {
 
-    public TableStoreDateObjectInspector() {
+    public PaimonDateObjectInspector() {
         super(TypeInfoFactory.dateTypeInfo);
     }
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDecimalObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonDecimalObjectInspector.java
similarity index 93%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDecimalObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonDecimalObjectInspector.java
index 39df6181c..2d3c9fff9 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreDecimalObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonDecimalObjectInspector.java
@@ -26,10 +26,10 @@ import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory;
 import org.apache.paimon.data.Decimal;
 
 /** {@link AbstractPrimitiveJavaObjectInspector} for DECIMAL type. */
-public class TableStoreDecimalObjectInspector extends AbstractPrimitiveJavaObjectInspector
+public class PaimonDecimalObjectInspector extends AbstractPrimitiveJavaObjectInspector
         implements HiveDecimalObjectInspector {
 
-    public TableStoreDecimalObjectInspector(int precision, int scale) {
+    public PaimonDecimalObjectInspector(int precision, int scale) {
         super(TypeInfoFactory.getDecimalTypeInfo(precision, scale));
     }
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreListObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonListObjectInspector.java
similarity index 91%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreListObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonListObjectInspector.java
index 76c8319e6..39c40c7a7 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreListObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonListObjectInspector.java
@@ -33,13 +33,13 @@ import java.util.List;
  * <p>Behaviors of this class when input is null are compatible with {@link
  * org.apache.hadoop.hive.serde2.objectinspector.StandardListObjectInspector}.
  */
-public class TableStoreListObjectInspector implements ListObjectInspector {
+public class PaimonListObjectInspector implements ListObjectInspector {
 
     private final ObjectInspector elementObjectInspector;
     private final InternalArray.ElementGetter elementGetter;
 
-    public TableStoreListObjectInspector(DataType elementType) {
-        this.elementObjectInspector = TableStoreObjectInspectorFactory.create(elementType);
+    public PaimonListObjectInspector(DataType elementType) {
+        this.elementObjectInspector = PaimonObjectInspectorFactory.create(elementType);
         this.elementGetter = InternalArray.createElementGetter(elementType);
     }
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreMapObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonMapObjectInspector.java
similarity index 92%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreMapObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonMapObjectInspector.java
index 1b1fda385..f7d6c1ea1 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreMapObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonMapObjectInspector.java
@@ -35,16 +35,16 @@ import java.util.Objects;
  * <p>Behaviors of this class when input is null are compatible with {@link
  * org.apache.hadoop.hive.serde2.objectinspector.StandardMapObjectInspector}.
  */
-public class TableStoreMapObjectInspector implements MapObjectInspector {
+public class PaimonMapObjectInspector implements MapObjectInspector {
 
     private final ObjectInspector keyObjectInspector;
     private final ObjectInspector valueObjectInspector;
     private final InternalArray.ElementGetter keyGetter;
     private final InternalArray.ElementGetter valueGetter;
 
-    public TableStoreMapObjectInspector(DataType keyType, DataType valueType) {
-        this.keyObjectInspector = TableStoreObjectInspectorFactory.create(keyType);
-        this.valueObjectInspector = TableStoreObjectInspectorFactory.create(valueType);
+    public PaimonMapObjectInspector(DataType keyType, DataType valueType) {
+        this.keyObjectInspector = PaimonObjectInspectorFactory.create(keyType);
+        this.valueObjectInspector = PaimonObjectInspectorFactory.create(valueType);
         this.keyGetter = InternalArray.createElementGetter(keyType);
         this.valueGetter = InternalArray.createElementGetter(valueType);
     }
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreObjectInspectorFactory.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonObjectInspectorFactory.java
similarity index 80%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreObjectInspectorFactory.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonObjectInspectorFactory.java
index 975f2976d..3d5646127 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreObjectInspectorFactory.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonObjectInspectorFactory.java
@@ -30,7 +30,7 @@ import org.apache.paimon.types.MapType;
 import org.apache.paimon.types.VarCharType;
 
 /** Factory to create {@link ObjectInspector}s according to the given {@link DataType}. */
-public class TableStoreObjectInspectorFactory {
+public class PaimonObjectInspectorFactory {
 
     public static ObjectInspector create(DataType logicalType) {
         switch (logicalType.getTypeRoot()) {
@@ -47,29 +47,28 @@ public class TableStoreObjectInspectorFactory {
                         (PrimitiveTypeInfo) HiveTypeUtils.logicalTypeToTypeInfo(logicalType));
             case DECIMAL:
                 DecimalType decimalType = (DecimalType) logicalType;
-                return new TableStoreDecimalObjectInspector(
+                return new PaimonDecimalObjectInspector(
                         decimalType.getPrecision(), decimalType.getScale());
             case CHAR:
                 CharType charType = (CharType) logicalType;
-                return new TableStoreCharObjectInspector(charType.getLength());
+                return new PaimonCharObjectInspector(charType.getLength());
             case VARCHAR:
                 VarCharType varCharType = (VarCharType) logicalType;
                 if (varCharType.getLength() == VarCharType.MAX_LENGTH) {
-                    return new TableStoreStringObjectInspector();
+                    return new PaimonStringObjectInspector();
                 } else {
-                    return new TableStoreVarcharObjectInspector(varCharType.getLength());
+                    return new PaimonVarcharObjectInspector(varCharType.getLength());
                 }
             case DATE:
-                return new TableStoreDateObjectInspector();
+                return new PaimonDateObjectInspector();
             case TIMESTAMP_WITHOUT_TIME_ZONE:
-                return new TableStoreTimestampObjectInspector();
+                return new PaimonTimestampObjectInspector();
             case ARRAY:
                 ArrayType arrayType = (ArrayType) logicalType;
-                return new TableStoreListObjectInspector(arrayType.getElementType());
+                return new PaimonListObjectInspector(arrayType.getElementType());
             case MAP:
                 MapType mapType = (MapType) logicalType;
-                return new TableStoreMapObjectInspector(
-                        mapType.getKeyType(), mapType.getValueType());
+                return new PaimonMapObjectInspector(mapType.getKeyType(), mapType.getValueType());
             default:
                 throw new UnsupportedOperationException(
                         "Unsupported logical type " + logicalType.asSQLString());
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreRowDataObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonRowDataObjectInspector.java
similarity index 95%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreRowDataObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonRowDataObjectInspector.java
index 6f185f2ce..e9dc491ad 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreRowDataObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonRowDataObjectInspector.java
@@ -33,13 +33,13 @@ import java.util.Map;
 import java.util.stream.Collectors;
 
 /** {@link StructObjectInspector} for {@link InternalRow}. */
-public class TableStoreRowDataObjectInspector extends StructObjectInspector {
+public class PaimonRowDataObjectInspector extends StructObjectInspector {
 
     private final List<TableStoreStructField> structFields;
     private final Map<String, TableStoreStructField> structFieldMap;
     private final String typeName;
 
-    public TableStoreRowDataObjectInspector(
+    public PaimonRowDataObjectInspector(
             List<String> fieldNames, List<DataType> fieldTypes, List<String> fieldComments) {
         this.structFields = new ArrayList<>();
         this.structFieldMap = new HashMap<>();
@@ -51,7 +51,7 @@ public class TableStoreRowDataObjectInspector extends StructObjectInspector {
             TableStoreStructField structField =
                     new TableStoreStructField(
                             name,
-                            TableStoreObjectInspectorFactory.create(logicalType),
+                            PaimonObjectInspectorFactory.create(logicalType),
                             i,
                             RowDataUtils.createNullCheckingFieldGetter(logicalType, i),
                             fieldComments.get(i));
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreStringObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonStringObjectInspector.java
similarity index 93%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreStringObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonStringObjectInspector.java
index b3dad601c..e2a92e38c 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreStringObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonStringObjectInspector.java
@@ -25,10 +25,10 @@ import org.apache.hadoop.io.Text;
 import org.apache.paimon.data.BinaryString;
 
 /** {@link AbstractPrimitiveJavaObjectInspector} for STRING type. */
-public class TableStoreStringObjectInspector extends AbstractPrimitiveJavaObjectInspector
+public class PaimonStringObjectInspector extends AbstractPrimitiveJavaObjectInspector
         implements StringObjectInspector {
 
-    public TableStoreStringObjectInspector() {
+    public PaimonStringObjectInspector() {
         super(TypeInfoFactory.stringTypeInfo);
     }
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonTimestampObjectInspector.java
similarity index 93%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonTimestampObjectInspector.java
index 548f242e7..143e4fb00 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonTimestampObjectInspector.java
@@ -25,10 +25,10 @@ import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory;
 import org.apache.paimon.data.Timestamp;
 
 /** {@link AbstractPrimitiveJavaObjectInspector} for TIMESTAMP type. */
-public class TableStoreTimestampObjectInspector extends AbstractPrimitiveJavaObjectInspector
+public class PaimonTimestampObjectInspector extends AbstractPrimitiveJavaObjectInspector
         implements TimestampObjectInspector {
 
-    public TableStoreTimestampObjectInspector() {
+    public PaimonTimestampObjectInspector() {
         super(TypeInfoFactory.timestampTypeInfo);
     }
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreVarcharObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonVarcharObjectInspector.java
similarity index 93%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreVarcharObjectInspector.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonVarcharObjectInspector.java
index 8ccafbc8c..b49ae1a68 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/TableStoreVarcharObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonVarcharObjectInspector.java
@@ -26,12 +26,12 @@ import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory;
 import org.apache.paimon.data.BinaryString;
 
 /** {@link AbstractPrimitiveJavaObjectInspector} for VARCHAR type. */
-public class TableStoreVarcharObjectInspector extends AbstractPrimitiveJavaObjectInspector
+public class PaimonVarcharObjectInspector extends AbstractPrimitiveJavaObjectInspector
         implements HiveVarcharObjectInspector {
 
     private final int len;
 
-    public TableStoreVarcharObjectInspector(int len) {
+    public PaimonVarcharObjectInspector(int len) {
         super(TypeInfoFactory.getVarcharTypeInfo(len));
         this.len = len;
     }
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/PaimonSerDeTest.java
similarity index 85%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/PaimonSerDeTest.java
index 8e014d0b6..a9c719ede 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/PaimonSerDeTest.java
@@ -23,7 +23,7 @@ import org.apache.hadoop.hive.serde2.objectinspector.StructField;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.paimon.hive.objectinspector.TableStoreRowDataObjectInspector;
+import org.apache.paimon.hive.objectinspector.PaimonRowDataObjectInspector;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaManager;
 import org.junit.jupiter.api.Test;
@@ -40,17 +40,17 @@ import static org.apache.paimon.hive.RandomGenericRowDataGenerator.ROW_TYPE;
 import static org.apache.paimon.hive.RandomGenericRowDataGenerator.generate;
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link TableStoreSerDe}. */
-public class TableStoreSerDeTest {
+/** Tests for {@link PaimonSerDe}. */
+public class PaimonSerDeTest {
 
     @TempDir java.nio.file.Path tempDir;
 
     @Test
     public void testInitialize() throws Exception {
-        TableStoreSerDe serDe = createInitializedSerDe();
+        PaimonSerDe serDe = createInitializedSerDe();
         ObjectInspector o = serDe.getObjectInspector();
-        assertThat(o).isInstanceOf(TableStoreRowDataObjectInspector.class);
-        TableStoreRowDataObjectInspector oi = (TableStoreRowDataObjectInspector) o;
+        assertThat(o).isInstanceOf(PaimonRowDataObjectInspector.class);
+        PaimonRowDataObjectInspector oi = (PaimonRowDataObjectInspector) o;
         GenericRow rowData = generate();
         List<? extends StructField> structFields = oi.getAllStructFieldRefs();
         for (int i = 0; i < structFields.size(); i++) {
@@ -63,14 +63,14 @@ public class TableStoreSerDeTest {
 
     @Test
     public void testDeserialize() throws Exception {
-        TableStoreSerDe serDe = createInitializedSerDe();
+        PaimonSerDe serDe = createInitializedSerDe();
         GenericRow rowData = generate();
         RowDataContainer container = new RowDataContainer();
         container.set(rowData);
         assertThat(serDe.deserialize(container)).isEqualTo(rowData);
     }
 
-    private TableStoreSerDe createInitializedSerDe() throws Exception {
+    private PaimonSerDe createInitializedSerDe() throws Exception {
         new SchemaManager(LocalFileIO.create(), new Path(tempDir.toString()))
                 .createTable(
                         new Schema(
@@ -83,7 +83,7 @@ public class TableStoreSerDeTest {
         Properties properties = new Properties();
         properties.setProperty("location", tempDir.toString());
 
-        TableStoreSerDe serDe = new TableStoreSerDe();
+        PaimonSerDe serDe = new PaimonSerDe();
         serDe.initialize(null, properties);
         return serDe;
     }
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/PaimonStorageHandlerITCase.java
similarity index 98%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/PaimonStorageHandlerITCase.java
index 7384c9c90..0278d0736 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/PaimonStorageHandlerITCase.java
@@ -33,7 +33,7 @@ import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.hive.objectinspector.TableStoreObjectInspectorFactory;
+import org.apache.paimon.hive.objectinspector.PaimonObjectInspectorFactory;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.StreamTableCommit;
@@ -62,11 +62,11 @@ import java.util.UUID;
 import java.util.concurrent.ThreadLocalRandom;
 
 /**
- * IT cases for {@link TableStoreHiveStorageHandler} and {@link
+ * IT cases for {@link PaimonStorageHandler} and {@link
  * org.apache.paimon.hive.mapred.TableStoreInputFormat}.
  */
 @RunWith(FlinkEmbeddedHiveRunner.class)
-public class TableStoreHiveStorageHandlerITCase {
+public class PaimonStorageHandlerITCase {
 
     @ClassRule public static TemporaryFolder folder = new TemporaryFolder();
 
@@ -645,7 +645,7 @@ public class TableStoreHiveStorageHandlerITCase {
                         "\n",
                         Arrays.asList(
                                 "CREATE EXTERNAL TABLE " + tableName + " ",
-                                "STORED BY '" + TableStoreHiveStorageHandler.class.getName() + "'",
+                                "STORED BY '" + PaimonStorageHandler.class.getName() + "'",
                                 "LOCATION '" + path + "'")));
         return tableName;
     }
@@ -689,7 +689,7 @@ public class TableStoreHiveStorageHandlerITCase {
                         "\n",
                         Arrays.asList(
                                 "CREATE EXTERNAL TABLE test_table",
-                                "STORED BY '" + TableStoreHiveStorageHandler.class.getName() + "'",
+                                "STORED BY '" + PaimonStorageHandler.class.getName() + "'",
                                 "LOCATION '" + root + "'")));
         List<Object[]> actual =
                 hiveShell.executeStatement("SELECT * FROM test_table WHERE f_int > 0");
@@ -712,7 +712,7 @@ public class TableStoreHiveStorageHandlerITCase {
                     continue;
                 }
                 ObjectInspector oi =
-                        TableStoreObjectInspectorFactory.create(
+                        PaimonObjectInspectorFactory.create(
                                 RandomGenericRowDataGenerator.LOGICAL_TYPES.get(i));
                 switch (oi.getCategory()) {
                     case PRIMITIVE:
@@ -802,7 +802,7 @@ public class TableStoreHiveStorageHandlerITCase {
                         "\n",
                         Arrays.asList(
                                 "CREATE EXTERNAL TABLE test_table",
-                                "STORED BY '" + TableStoreHiveStorageHandler.class.getName() + "'",
+                                "STORED BY '" + PaimonStorageHandler.class.getName() + "'",
                                 "LOCATION '" + path + "'")));
         Assert.assertEquals(
                 Arrays.asList("1", "5"),
@@ -894,7 +894,7 @@ public class TableStoreHiveStorageHandlerITCase {
                         "\n",
                         Arrays.asList(
                                 "CREATE EXTERNAL TABLE test_table",
-                                "STORED BY '" + TableStoreHiveStorageHandler.class.getName() + "'",
+                                "STORED BY '" + PaimonStorageHandler.class.getName() + "'",
                                 "LOCATION '" + path + "'")));
         Assert.assertEquals(
                 Collections.singletonList("1971-01-11\t2022-05-17 17:29:20.1"),
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreCharObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonCharObjectInspectorTest.java
similarity index 88%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreCharObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonCharObjectInspectorTest.java
index 5b97e28f6..1713171bd 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreCharObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonCharObjectInspectorTest.java
@@ -27,12 +27,12 @@ import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link TableStoreCharObjectInspector}. */
-public class TableStoreCharObjectInspectorTest {
+/** Tests for {@link PaimonCharObjectInspector}. */
+public class PaimonCharObjectInspectorTest {
 
     @Test
     public void testCategoryAndClass() {
-        TableStoreCharObjectInspector oi = new TableStoreCharObjectInspector(10);
+        PaimonCharObjectInspector oi = new PaimonCharObjectInspector(10);
 
         assertThat(oi.getCategory()).isEqualTo(ObjectInspector.Category.PRIMITIVE);
         assertThat(oi.getPrimitiveCategory())
@@ -44,7 +44,7 @@ public class TableStoreCharObjectInspectorTest {
 
     @Test
     public void testGetPrimitiveJavaObject() {
-        TableStoreCharObjectInspector oi = new TableStoreCharObjectInspector(10);
+        PaimonCharObjectInspector oi = new PaimonCharObjectInspector(10);
 
         BinaryString input1 = BinaryString.fromString("testString");
         HiveChar expected1 = new HiveChar("testString", 10);
@@ -57,7 +57,7 @@ public class TableStoreCharObjectInspectorTest {
 
     @Test
     public void testGetPrimitiveWritableObject() {
-        TableStoreCharObjectInspector oi = new TableStoreCharObjectInspector(10);
+        PaimonCharObjectInspector oi = new PaimonCharObjectInspector(10);
 
         BinaryString input1 = BinaryString.fromString("testString");
         HiveCharWritable expected1 = new HiveCharWritable(new HiveChar("testString", 10));
@@ -70,7 +70,7 @@ public class TableStoreCharObjectInspectorTest {
 
     @Test
     public void testCopyObject() {
-        TableStoreCharObjectInspector oi = new TableStoreCharObjectInspector(10);
+        PaimonCharObjectInspector oi = new PaimonCharObjectInspector(10);
 
         BinaryString input1 = BinaryString.fromString("testString");
         Object copy1 = oi.copyObject(input1);
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonDateObjectInspectorTest.java
similarity index 86%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonDateObjectInspectorTest.java
index 1076a4410..f0740053c 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreDateObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonDateObjectInspectorTest.java
@@ -29,13 +29,13 @@ import java.time.LocalDate;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link TableStoreDateObjectInspector}. */
-public class TableStoreDateObjectInspectorTest {
+/** Tests for {@link PaimonDateObjectInspector}. */
+public class PaimonDateObjectInspectorTest {
 
     @DisabledIfSystemProperty(named = "hive.main.version", matches = "3")
     @Test
     public void testCategoryAndClass() {
-        TableStoreDateObjectInspector oi = new TableStoreDateObjectInspector();
+        PaimonDateObjectInspector oi = new PaimonDateObjectInspector();
 
         assertThat(oi.getCategory()).isEqualTo(ObjectInspector.Category.PRIMITIVE);
         assertThat(oi.getPrimitiveCategory())
@@ -47,7 +47,7 @@ public class TableStoreDateObjectInspectorTest {
 
     @Test
     public void testGetPrimitiveJavaObject() {
-        TableStoreDateObjectInspector oi = new TableStoreDateObjectInspector();
+        PaimonDateObjectInspector oi = new PaimonDateObjectInspector();
 
         int input = 375;
         assertThat(oi.getPrimitiveJavaObject(input).toString()).isEqualTo("1971-01-11");
@@ -56,7 +56,7 @@ public class TableStoreDateObjectInspectorTest {
 
     @Test
     public void testGetPrimitiveWritableObject() {
-        TableStoreDateObjectInspector oi = new TableStoreDateObjectInspector();
+        PaimonDateObjectInspector oi = new PaimonDateObjectInspector();
 
         int input = 375;
         assertThat(oi.getPrimitiveWritableObject(input).get().toString()).isEqualTo("1971-01-11");
@@ -66,7 +66,7 @@ public class TableStoreDateObjectInspectorTest {
     @DisabledIfSystemProperty(named = "hive.main.version", matches = "3")
     @Test
     public void testCopyObject() {
-        TableStoreDateObjectInspector oi = new TableStoreDateObjectInspector();
+        PaimonDateObjectInspector oi = new PaimonDateObjectInspector();
 
         Date input = Date.valueOf(LocalDate.ofEpochDay(375));
         Object copy = oi.copyObject(input);
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreDecimalObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonDecimalObjectInspectorTest.java
similarity index 86%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreDecimalObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonDecimalObjectInspectorTest.java
index 529ea7bd9..9dcb394c1 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreDecimalObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonDecimalObjectInspectorTest.java
@@ -29,12 +29,12 @@ import java.math.BigDecimal;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link TableStoreDecimalObjectInspector}. */
-public class TableStoreDecimalObjectInspectorTest {
+/** Tests for {@link PaimonDecimalObjectInspector}. */
+public class PaimonDecimalObjectInspectorTest {
 
     @Test
     public void testCategoryAndClass() {
-        TableStoreDecimalObjectInspector oi = new TableStoreDecimalObjectInspector(5, 3);
+        PaimonDecimalObjectInspector oi = new PaimonDecimalObjectInspector(5, 3);
 
         assertThat(oi.getCategory()).isEqualTo(ObjectInspector.Category.PRIMITIVE);
         assertThat(oi.getPrimitiveCategory())
@@ -46,7 +46,7 @@ public class TableStoreDecimalObjectInspectorTest {
 
     @Test
     public void testGetPrimitiveJavaObject() {
-        TableStoreDecimalObjectInspector oi = new TableStoreDecimalObjectInspector(5, 3);
+        PaimonDecimalObjectInspector oi = new PaimonDecimalObjectInspector(5, 3);
 
         Decimal input = Decimal.fromBigDecimal(new BigDecimal("12.345"), 5, 3);
         HiveDecimal expected = HiveDecimal.create("12.345");
@@ -56,7 +56,7 @@ public class TableStoreDecimalObjectInspectorTest {
 
     @Test
     public void testGetPrimitiveWritableObject() {
-        TableStoreDecimalObjectInspector oi = new TableStoreDecimalObjectInspector(5, 3);
+        PaimonDecimalObjectInspector oi = new PaimonDecimalObjectInspector(5, 3);
 
         Decimal input = Decimal.fromBigDecimal(new BigDecimal("12.345"), 5, 3);
         HiveDecimalWritable expected = new HiveDecimalWritable(HiveDecimal.create("12.345"));
@@ -66,7 +66,7 @@ public class TableStoreDecimalObjectInspectorTest {
 
     @Test
     public void testCopyObject() {
-        TableStoreDecimalObjectInspector oi = new TableStoreDecimalObjectInspector(5, 3);
+        PaimonDecimalObjectInspector oi = new PaimonDecimalObjectInspector(5, 3);
 
         Decimal input1 = Decimal.fromBigDecimal(new BigDecimal("12.345"), 5, 3);
         Object copy1 = oi.copyObject(input1);
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreListObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonListObjectInspectorTest.java
similarity index 88%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreListObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonListObjectInspectorTest.java
index 5008bccc9..9644efe03 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreListObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonListObjectInspectorTest.java
@@ -28,12 +28,12 @@ import java.util.Arrays;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link TableStoreListObjectInspector}. */
-public class TableStoreListObjectInspectorTest {
+/** Tests for {@link PaimonListObjectInspector}. */
+public class PaimonListObjectInspectorTest {
 
     @Test
     public void testCategoryAndTypeName() {
-        TableStoreListObjectInspector oi = new TableStoreListObjectInspector(DataTypes.STRING());
+        PaimonListObjectInspector oi = new PaimonListObjectInspector(DataTypes.STRING());
 
         assertThat(oi.getCategory()).isEqualTo(ObjectInspector.Category.LIST);
         assertThat(oi.getTypeName()).isEqualTo("array<string>");
@@ -41,7 +41,7 @@ public class TableStoreListObjectInspectorTest {
 
     @Test
     public void testGetListAndElement() {
-        TableStoreListObjectInspector oi = new TableStoreListObjectInspector(DataTypes.STRING());
+        PaimonListObjectInspector oi = new PaimonListObjectInspector(DataTypes.STRING());
 
         BinaryString[] stringDataArray =
                 new BinaryString[] {
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreMapObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonMapObjectInspectorTest.java
similarity index 87%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreMapObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonMapObjectInspectorTest.java
index 3e2adf8cf..6a5da8dc8 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreMapObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonMapObjectInspectorTest.java
@@ -29,13 +29,13 @@ import java.util.Map;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link TableStoreMapObjectInspector}. */
-public class TableStoreMapObjectInspectorTest {
+/** Tests for {@link PaimonMapObjectInspector}. */
+public class PaimonMapObjectInspectorTest {
 
     @Test
     public void testCategoryAndTypeName() {
-        TableStoreMapObjectInspector oi =
-                new TableStoreMapObjectInspector(DataTypes.STRING(), DataTypes.BIGINT());
+        PaimonMapObjectInspector oi =
+                new PaimonMapObjectInspector(DataTypes.STRING(), DataTypes.BIGINT());
 
         assertThat(oi.getCategory()).isEqualTo(ObjectInspector.Category.MAP);
         assertThat(oi.getTypeName()).isEqualTo("map<string,bigint>");
@@ -43,8 +43,8 @@ public class TableStoreMapObjectInspectorTest {
 
     @Test
     public void testGetMapAndValue() {
-        TableStoreMapObjectInspector oi =
-                new TableStoreMapObjectInspector(DataTypes.STRING(), DataTypes.BIGINT());
+        PaimonMapObjectInspector oi =
+                new PaimonMapObjectInspector(DataTypes.STRING(), DataTypes.BIGINT());
 
         BinaryString[] keyArray =
                 new BinaryString[] {
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreRowDataObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonRowDataObjectInspectorTest.java
similarity index 90%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreRowDataObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonRowDataObjectInspectorTest.java
index 6b46a5b79..fafe17fe5 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreRowDataObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonRowDataObjectInspectorTest.java
@@ -33,13 +33,13 @@ import static org.apache.paimon.hive.RandomGenericRowDataGenerator.TYPE_NAMES;
 import static org.apache.paimon.hive.RandomGenericRowDataGenerator.generate;
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link TableStoreRowDataObjectInspector}. */
-public class TableStoreRowDataObjectInspectorTest {
+/** Tests for {@link PaimonRowDataObjectInspector}. */
+public class PaimonRowDataObjectInspectorTest {
 
     @Test
     public void testGetStructFieldRef() {
-        TableStoreRowDataObjectInspector oi =
-                new TableStoreRowDataObjectInspector(FIELD_NAMES, LOGICAL_TYPES, FIELD_COMMENTS);
+        PaimonRowDataObjectInspector oi =
+                new PaimonRowDataObjectInspector(FIELD_NAMES, LOGICAL_TYPES, FIELD_COMMENTS);
         List<? extends StructField> structFields = oi.getAllStructFieldRefs();
         List<ObjectInspector.Category> expectedOiCategories =
                 Arrays.asList(
@@ -75,8 +75,8 @@ public class TableStoreRowDataObjectInspectorTest {
 
     @Test
     public void testGetTypeName() {
-        TableStoreRowDataObjectInspector oi =
-                new TableStoreRowDataObjectInspector(FIELD_NAMES, LOGICAL_TYPES, FIELD_COMMENTS);
+        PaimonRowDataObjectInspector oi =
+                new PaimonRowDataObjectInspector(FIELD_NAMES, LOGICAL_TYPES, FIELD_COMMENTS);
         String expected =
                 "struct<"
                         + String.join(
@@ -105,8 +105,8 @@ public class TableStoreRowDataObjectInspectorTest {
 
     @Test
     public void testGetStructFieldData() {
-        TableStoreRowDataObjectInspector oi =
-                new TableStoreRowDataObjectInspector(FIELD_NAMES, LOGICAL_TYPES, FIELD_COMMENTS);
+        PaimonRowDataObjectInspector oi =
+                new PaimonRowDataObjectInspector(FIELD_NAMES, LOGICAL_TYPES, FIELD_COMMENTS);
         GenericRow rowData = generate();
         List<Object> structFieldsData = oi.getStructFieldsDataAsList(rowData);
         for (int i = 0; i < structFieldsData.size(); i++) {
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreStringObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonStringObjectInspectorTest.java
similarity index 85%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreStringObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonStringObjectInspectorTest.java
index 771527c72..80b923f7b 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreStringObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonStringObjectInspectorTest.java
@@ -26,12 +26,12 @@ import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link TableStoreStringObjectInspector}. */
-public class TableStoreStringObjectInspectorTest {
+/** Tests for {@link PaimonStringObjectInspector}. */
+public class PaimonStringObjectInspectorTest {
 
     @Test
     public void testCategoryAndClass() {
-        TableStoreStringObjectInspector oi = new TableStoreStringObjectInspector();
+        PaimonStringObjectInspector oi = new PaimonStringObjectInspector();
 
         assertThat(oi.getCategory()).isEqualTo(ObjectInspector.Category.PRIMITIVE);
         assertThat(oi.getPrimitiveCategory())
@@ -43,7 +43,7 @@ public class TableStoreStringObjectInspectorTest {
 
     @Test
     public void testGetPrimitiveJavaObject() {
-        TableStoreStringObjectInspector oi = new TableStoreStringObjectInspector();
+        PaimonStringObjectInspector oi = new PaimonStringObjectInspector();
 
         BinaryString input = BinaryString.fromString("testString");
         String expected = "testString";
@@ -53,7 +53,7 @@ public class TableStoreStringObjectInspectorTest {
 
     @Test
     public void testGetPrimitiveWritableObject() {
-        TableStoreStringObjectInspector oi = new TableStoreStringObjectInspector();
+        PaimonStringObjectInspector oi = new PaimonStringObjectInspector();
 
         BinaryString input = BinaryString.fromString("testString");
         Text expected = new Text("testString");
@@ -63,7 +63,7 @@ public class TableStoreStringObjectInspectorTest {
 
     @Test
     public void testCopyObject() {
-        TableStoreStringObjectInspector oi = new TableStoreStringObjectInspector();
+        PaimonStringObjectInspector oi = new PaimonStringObjectInspector();
 
         BinaryString input = BinaryString.fromString("testString");
         Object copy = oi.copyObject(input);
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonTimestampObjectInspectorTest.java
similarity index 86%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonTimestampObjectInspectorTest.java
index 2899c9d54..19967c258 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreTimestampObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonTimestampObjectInspectorTest.java
@@ -29,13 +29,13 @@ import java.time.LocalDateTime;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link TableStoreTimestampObjectInspector}. */
-public class TableStoreTimestampObjectInspectorTest {
+/** Tests for {@link PaimonTimestampObjectInspector}. */
+public class PaimonTimestampObjectInspectorTest {
 
     @DisabledIfSystemProperty(named = "hive.main.version", matches = "3")
     @Test
     public void testCategoryAndClass() {
-        TableStoreTimestampObjectInspector oi = new TableStoreTimestampObjectInspector();
+        PaimonTimestampObjectInspector oi = new PaimonTimestampObjectInspector();
 
         assertThat(oi.getCategory()).isEqualTo(ObjectInspector.Category.PRIMITIVE);
         assertThat(oi.getPrimitiveCategory())
@@ -47,7 +47,7 @@ public class TableStoreTimestampObjectInspectorTest {
 
     @Test
     public void testGetPrimitiveJavaObject() {
-        TableStoreTimestampObjectInspector oi = new TableStoreTimestampObjectInspector();
+        PaimonTimestampObjectInspector oi = new PaimonTimestampObjectInspector();
 
         LocalDateTime local = LocalDateTime.of(2022, 4, 27, 15, 0, 0, 100_000_000);
         Timestamp input = Timestamp.fromLocalDateTime(local);
@@ -57,7 +57,7 @@ public class TableStoreTimestampObjectInspectorTest {
 
     @Test
     public void testGetPrimitiveWritableObject() {
-        TableStoreTimestampObjectInspector oi = new TableStoreTimestampObjectInspector();
+        PaimonTimestampObjectInspector oi = new PaimonTimestampObjectInspector();
 
         LocalDateTime local = LocalDateTime.of(2022, 4, 27, 15, 0, 0, 100_000_000);
         Timestamp input = Timestamp.fromLocalDateTime(local);
@@ -69,7 +69,7 @@ public class TableStoreTimestampObjectInspectorTest {
     @DisabledIfSystemProperty(named = "hive.main.version", matches = "3")
     @Test
     public void testCopyObject() {
-        TableStoreTimestampObjectInspector oi = new TableStoreTimestampObjectInspector();
+        PaimonTimestampObjectInspector oi = new PaimonTimestampObjectInspector();
 
         // TimestampData is immutable
         Timestamp input1 = Timestamp.fromEpochMillis(10007);
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreVarcharObjectInspectorTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonVarcharObjectInspectorTest.java
similarity index 87%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreVarcharObjectInspectorTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonVarcharObjectInspectorTest.java
index 6641cbcb2..3eb28d0e6 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/TableStoreVarcharObjectInspectorTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/objectinspector/PaimonVarcharObjectInspectorTest.java
@@ -27,12 +27,12 @@ import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link TableStoreVarcharObjectInspector}. */
-public class TableStoreVarcharObjectInspectorTest {
+/** Tests for {@link PaimonVarcharObjectInspector}. */
+public class PaimonVarcharObjectInspectorTest {
 
     @Test
     public void testCategoryAndClass() {
-        TableStoreVarcharObjectInspector oi = new TableStoreVarcharObjectInspector(10);
+        PaimonVarcharObjectInspector oi = new PaimonVarcharObjectInspector(10);
 
         assertThat(oi.getCategory()).isEqualTo(ObjectInspector.Category.PRIMITIVE);
         assertThat(oi.getPrimitiveCategory())
@@ -44,7 +44,7 @@ public class TableStoreVarcharObjectInspectorTest {
 
     @Test
     public void testGetPrimitiveJavaObject() {
-        TableStoreVarcharObjectInspector oi = new TableStoreVarcharObjectInspector(10);
+        PaimonVarcharObjectInspector oi = new PaimonVarcharObjectInspector(10);
 
         BinaryString input1 = BinaryString.fromString("testString");
         HiveVarchar expected1 = new HiveVarchar("testString", 10);
@@ -57,7 +57,7 @@ public class TableStoreVarcharObjectInspectorTest {
 
     @Test
     public void testGetPrimitiveWritableObject() {
-        TableStoreVarcharObjectInspector oi = new TableStoreVarcharObjectInspector(10);
+        PaimonVarcharObjectInspector oi = new PaimonVarcharObjectInspector(10);
 
         BinaryString input1 = BinaryString.fromString("testString");
         HiveVarcharWritable expected1 = new HiveVarcharWritable(new HiveVarchar("testString", 10));
@@ -70,7 +70,7 @@ public class TableStoreVarcharObjectInspectorTest {
 
     @Test
     public void testCopyObject() {
-        TableStoreVarcharObjectInspector oi = new TableStoreVarcharObjectInspector(10);
+        PaimonVarcharObjectInspector oi = new PaimonVarcharObjectInspector(10);
 
         BinaryString input1 = BinaryString.fromString("testString");
         Object copy1 = oi.copyObject(input1);


[incubator-paimon] 25/32: [core] Rename paimon all file packages

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 427c584efc319286fa8cb162f26c4ea2e23b1e6d
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 21:00:52 2023 +0800

    [core] Rename paimon all file packages
---
 .../apache/paimon/benchmark/TableBenchmark.java    |  8 ++---
 .../java/org/apache/paimon/format/FileFormat.java  |  2 +-
 .../java/org/apache/paimon/utils/ThreadUtils.java  | 15 +++++++++
 .../paimon/{file => }/AbstractFileStore.java       |  9 +++--
 .../paimon/{file => }/AppendOnlyFileStore.java     |  7 ++--
 .../main/java/org/apache/paimon/CoreOptions.java   |  1 -
 .../org/apache/paimon/{file => }/FileStore.java    |  5 ++-
 .../org/apache/paimon/{file => }/KeyValue.java     |  2 +-
 .../paimon/{file => }/KeyValueFileStore.java       |  9 +++--
 .../paimon/{file => }/KeyValueSerializer.java      |  6 ++--
 .../org/apache/paimon/{file => }/Snapshot.java     |  8 ++---
 .../org/apache/paimon/{file => }/WriteMode.java    |  2 +-
 .../paimon/append/AppendOnlyCompactManager.java    |  5 +--
 .../org/apache/paimon/append/AppendOnlyWriter.java | 10 +++---
 .../org/apache/paimon/catalog/AbstractCatalog.java |  2 +-
 .../apache/paimon/catalog/FileSystemCatalog.java   |  6 ++--
 .../apache/paimon/disk/ChannelReaderInputView.java |  2 +-
 .../disk/ChannelReaderInputViewIterator.java       |  2 +-
 .../paimon/disk/ChannelWriterOutputView.java       |  2 +-
 .../org/apache/paimon/file/utils/ThreadUtils.java  | 38 ----------------------
 .../paimon/io/AbstractFileRecordIterator.java      |  2 +-
 .../java/org/apache/paimon/io/DataFileMeta.java    |  8 ++---
 .../apache/paimon/io/DataFileMetaSerializer.java   |  8 ++---
 .../paimon/io/KeyValueDataFileRecordReader.java    |  8 ++---
 .../apache/paimon/io/KeyValueDataFileWriter.java   |  6 ++--
 .../paimon/io/KeyValueFileReaderFactory.java       | 14 ++++----
 .../paimon/io/KeyValueFileWriterFactory.java       |  6 ++--
 .../apache/paimon/io/RowDataFileRecordReader.java  |  4 +--
 .../org/apache/paimon/io/RowDataFileWriter.java    |  4 +--
 .../org/apache/paimon/manifest/ManifestEntry.java  |  4 +--
 .../paimon/manifest/ManifestEntrySerializer.java   |  6 ++--
 .../org/apache/paimon/manifest/ManifestFile.java   | 14 ++++----
 .../apache/paimon/manifest/ManifestFileMeta.java   |  4 +--
 .../manifest/ManifestFileMetaSerializer.java       |  4 +--
 .../org/apache/paimon/manifest/ManifestList.java   |  6 ++--
 .../main/java/org/apache/paimon/memory/Buffer.java |  1 -
 .../apache/paimon/mergetree/DropDeleteReader.java  |  2 +-
 .../org/apache/paimon/mergetree/LookupLevels.java  |  2 +-
 .../apache/paimon/mergetree/MergeTreeReaders.java  |  2 +-
 .../apache/paimon/mergetree/MergeTreeWriter.java   |  8 ++---
 .../paimon/mergetree/SortBufferWriteBuffer.java    | 12 +++----
 .../org/apache/paimon/mergetree/WriteBuffer.java   |  2 +-
 .../compact/ChangelogMergeTreeRewriter.java        |  4 +--
 .../paimon/mergetree/compact/ChangelogResult.java  |  2 +-
 .../compact/DeduplicateMergeFunction.java          |  2 +-
 .../compact/FullChangelogMergeFunctionWrapper.java |  2 +-
 .../FullChangelogMergeTreeCompactRewriter.java     |  2 +-
 .../LookupChangelogMergeFunctionWrapper.java       |  2 +-
 .../mergetree/compact/LookupMergeFunction.java     |  2 +-
 .../compact/LookupMergeTreeCompactRewriter.java    |  2 +-
 .../paimon/mergetree/compact/MergeFunction.java    |  2 +-
 .../mergetree/compact/MergeFunctionWrapper.java    |  2 +-
 .../mergetree/compact/MergeTreeCompactManager.java |  5 +--
 .../compact/MergeTreeCompactRewriter.java          |  4 +--
 .../mergetree/compact/MergeTreeCompactTask.java    |  2 +-
 .../compact/PartialUpdateMergeFunction.java        |  2 +-
 .../compact/ReducerMergeFunctionWrapper.java       |  2 +-
 .../paimon/mergetree/compact/SortMergeReader.java  |  2 +-
 .../mergetree/compact/ValueCountMergeFunction.java |  2 +-
 .../compact/aggregate/AggregateMergeFunction.java  |  2 +-
 .../paimon/operation/AbstractFileStoreScan.java    | 10 +++---
 .../paimon/operation/AbstractFileStoreWrite.java   | 12 +++----
 .../paimon/operation/AppendOnlyFileStoreRead.java  | 15 +++++----
 .../paimon/operation/AppendOnlyFileStoreScan.java  |  7 ++--
 .../paimon/operation/AppendOnlyFileStoreWrite.java | 19 ++++++-----
 .../paimon/operation/FileStoreCommitImpl.java      | 12 +++----
 .../paimon/operation/FileStoreExpireImpl.java      | 10 +++---
 .../apache/paimon/operation/FileStoreWrite.java    |  4 +--
 .../paimon/operation/KeyValueFileStoreRead.java    | 13 ++++----
 .../paimon/operation/KeyValueFileStoreScan.java    |  7 ++--
 .../paimon/operation/KeyValueFileStoreWrite.java   | 21 ++++++------
 .../paimon/operation/MemoryFileStoreWrite.java     |  6 ++--
 .../org/apache/paimon/operation/ReverseReader.java |  2 +-
 .../apache/paimon/schema/SchemaEvolutionUtil.java  |  4 +--
 .../org/apache/paimon/schema/SchemaManager.java    |  8 ++---
 .../org/apache/paimon/schema/SchemaSerializer.java |  4 +--
 .../org/apache/paimon/schema/SchemaValidation.java |  4 +--
 .../java/org/apache/paimon/schema/TableSchema.java |  2 +-
 .../sort/AbstractBinaryExternalMerger.java         |  6 ++--
 .../{file => }/sort/BinaryExternalMerger.java      |  6 ++--
 .../{file => }/sort/BinaryExternalSortBuffer.java  |  8 ++---
 .../{file => }/sort/BinaryInMemorySortBuffer.java  |  6 ++--
 .../{file => }/sort/BinaryIndexedSortable.java     |  4 +--
 .../{file => }/sort/BinaryMergeIterator.java       |  4 +--
 .../apache/paimon/{file => }/sort/HeapSort.java    |  2 +-
 .../paimon/{file => }/sort/IndexedSortable.java    |  2 +-
 .../paimon/{file => }/sort/IndexedSorter.java      |  2 +-
 .../{file => }/sort/PartialOrderPriorityQueue.java |  2 +-
 .../apache/paimon/{file => }/sort/QuickSort.java   |  2 +-
 .../apache/paimon/{file => }/sort/SortBuffer.java  |  4 +--
 .../{file => }/sort/SpillChannelManager.java       |  2 +-
 .../paimon/{file => }/stats/BinaryTableStats.java  |  6 ++--
 .../stats/FieldStatsArraySerializer.java           |  6 ++--
 .../{file => }/stats/FieldStatsConverters.java     |  2 +-
 .../paimon/table/AbstractFileStoreTable.java       | 10 +++---
 .../paimon/table/AppendOnlyFileStoreTable.java     | 10 +++---
 .../table/ChangelogValueCountFileStoreTable.java   | 14 ++++----
 .../table/ChangelogWithKeyFileStoreTable.java      | 14 ++++----
 .../java/org/apache/paimon/table/DataTable.java    |  2 +-
 .../org/apache/paimon/table/FileStoreTable.java    |  7 ++--
 .../apache/paimon/table/FileStoreTableFactory.java |  6 ++--
 .../paimon/table/sink/CommitMessageImpl.java       |  6 ++--
 .../paimon/table/sink/CommitMessageSerializer.java |  6 ++--
 .../apache/paimon/table/sink/TableWriteImpl.java   |  5 +--
 .../table/source/BatchDataTableScanImpl.java       |  2 +-
 .../org/apache/paimon/table/source/DataSplit.java  |  2 +-
 .../paimon/table/source/KeyValueTableRead.java     |  2 +-
 .../table/source/ResetRowKindRecordIterator.java   |  2 +-
 .../table/source/StreamDataTableScanImpl.java      |  4 +--
 .../paimon/table/source/StreamTableScan.java       |  2 +-
 .../source/ValueContentRowDataRecordIterator.java  |  2 +-
 .../source/ValueCountRowDataRecordIterator.java    |  2 +-
 .../snapshot/BoundedWatermarkFollowUpScanner.java  |  2 +-
 .../source/snapshot/CompactedStartingScanner.java  |  2 +-
 .../CompactionChangelogFollowUpScanner.java        |  2 +-
 .../ContinuousCompactorFollowUpScanner.java        |  2 +-
 .../ContinuousCompactorStartingScanner.java        |  4 +--
 .../ContinuousFromSnapshotStartingScanner.java     |  2 +-
 .../ContinuousFromTimestampStartingScanner.java    |  2 +-
 .../snapshot/ContinuousLatestStartingScanner.java  |  2 +-
 .../source/snapshot/DeltaFollowUpScanner.java      |  2 +-
 .../table/source/snapshot/FollowUpScanner.java     |  2 +-
 .../table/source/snapshot/FullStartingScanner.java |  2 +-
 .../snapshot/InputChangelogFollowUpScanner.java    |  2 +-
 .../table/source/snapshot/SnapshotSplitReader.java |  2 +-
 .../source/snapshot/SnapshotSplitReaderImpl.java   |  4 +--
 .../table/source/snapshot/StartingScanner.java     |  2 +-
 .../StaticFromSnapshotStartingScanner.java         |  2 +-
 .../StaticFromTimestampStartingScanner.java        |  2 +-
 .../apache/paimon/table/system/AuditLogTable.java  |  6 ++--
 .../apache/paimon/table/system/BucketsTable.java   |  8 ++---
 .../org/apache/paimon/table/system/FilesTable.java | 14 ++++----
 .../apache/paimon/table/system/OptionsTable.java   |  8 ++---
 .../apache/paimon/table/system/SchemasTable.java   | 12 +++----
 .../apache/paimon/table/system/SnapshotsTable.java | 10 +++---
 .../paimon/{file => }/utils/BulkFormatMapping.java |  9 +++--
 .../paimon/{file => }/utils/CommitIncrement.java   |  2 +-
 .../{file => }/utils/ExecutorThreadFactory.java    |  2 +-
 .../utils/FatalExitExceptionHandler.java           |  2 +-
 .../{file => }/utils/FileStorePathFactory.java     |  5 ++-
 .../apache/paimon/{file => }/utils/FileUtils.java  |  2 +-
 .../{file => }/utils/IteratorRecordReader.java     |  2 +-
 .../paimon/{file => }/utils/JsonDeserializer.java  |  2 +-
 .../paimon/{file => }/utils/JsonSerdeUtil.java     |  2 +-
 .../paimon/{file => }/utils/JsonSerializer.java    |  2 +-
 .../{file => }/utils/KeyComparatorSupplier.java    |  2 +-
 .../{file => }/utils/MutableObjectIterator.java    |  2 +-
 .../paimon/{file => }/utils/ObjectSerializer.java  |  2 +-
 .../apache/paimon/{file => }/utils/OffsetRow.java  |  2 +-
 .../{file => }/utils/PartitionPathUtils.java       |  2 +-
 .../paimon/{file => }/utils/RecordWriter.java      |  2 +-
 .../apache/paimon/{file => }/utils/Restorable.java |  2 +-
 .../{file => }/utils/RowDataPartitionComputer.java |  4 +--
 .../{file => }/utils/SerializableSupplier.java     |  2 +-
 .../{file => }/utils/SerializationUtils.java       |  2 +-
 .../paimon/{file => }/utils/SnapshotManager.java   |  7 ++--
 .../utils/VersionedObjectSerializer.java           |  2 +-
 .../apache/paimon/{file => }/FileFormatTest.java   |  3 +-
 .../paimon/{file => }/KeyValueSerializerTest.java  |  6 ++--
 .../apache/paimon/{file => }/TestFileStore.java    | 21 ++++++------
 .../paimon/{file => }/TestKeyValueGenerator.java   | 10 +++---
 .../append/AppendOnlyCompactManagerTest.java       |  2 +-
 .../apache/paimon/append/AppendOnlyWriterTest.java | 12 +++----
 .../paimon/append/IterativeCompactTaskTest.java    |  2 +-
 .../{file => }/format/FileFormatSuffixTest.java    | 13 ++++----
 .../format/FileStatsExtractingAvroFormat.java      | 10 ++----
 .../FileStatsExtractingAvroFormatFactory.java      |  4 +--
 .../{file => }/format/FlushingFileFormat.java      |  8 ++---
 .../paimon/io/DataFileMetaSerializerTest.java      |  2 +-
 .../paimon/io/DataFileTestDataGenerator.java       |  6 ++--
 .../org/apache/paimon/io/DataFileTestUtils.java    |  2 +-
 .../paimon/io/KeyValueFileReadWriteTest.java       | 18 +++++-----
 .../ManifestCommittableSerializerTest.java         |  2 +-
 .../manifest/ManifestEntrySerializerTest.java      |  4 +--
 .../manifest/ManifestFileMetaSerializerTest.java   |  4 +--
 .../paimon/manifest/ManifestFileMetaTest.java      | 10 +++---
 .../apache/paimon/manifest/ManifestFileTest.java   | 10 +++---
 .../apache/paimon/manifest/ManifestListTest.java   |  6 ++--
 .../paimon/manifest/ManifestTestDataGenerator.java |  8 ++---
 .../apache/paimon/mergetree/LookupLevelsTest.java  | 18 +++++-----
 .../org/apache/paimon/mergetree/MergeTreeTest.java | 26 +++++++--------
 .../mergetree/SortBufferWriteBufferTestBase.java   |  8 ++---
 .../compact/CombiningRecordReaderTestBase.java     |  6 ++--
 .../mergetree/compact/ConcatRecordReaderTest.java  |  6 ++--
 .../FullChangelogMergeFunctionWrapperTestBase.java |  2 +-
 .../mergetree/compact/IntervalPartitionTest.java   |  4 +--
 .../LookupChangelogMergeFunctionWrapperTest.java   |  2 +-
 .../mergetree/compact/MergeFunctionTestUtils.java  |  4 +--
 .../compact/MergeTreeCompactManagerTest.java       |  4 +--
 .../ReducerMergeFunctionWrapperTestBase.java       |  2 +-
 .../mergetree/compact/SortMergeReaderTestBase.java |  6 ++--
 .../operation/CleanedFileStoreExpireTest.java      |  8 ++---
 .../paimon/operation/FileStoreCommitTest.java      | 18 +++++-----
 .../paimon/operation/FileStoreExpireTestBase.java  | 16 ++++-----
 .../operation/KeyValueFileStoreReadTest.java       | 14 ++++----
 .../operation/KeyValueFileStoreScanTest.java       | 14 ++++----
 .../paimon/operation/PartitionExpireTest.java      |  4 +--
 .../apache/paimon/operation/TestCommitThread.java  | 16 ++++-----
 .../operation/UncleanedFileStoreExpireTest.java    |  2 +-
 .../paimon/schema/DataTypeJsonParserTest.java      |  2 +-
 .../apache/paimon/schema/SchemaManagerTest.java    |  6 ++--
 .../schema/TableSchemaSerializationTest.java       |  2 +-
 .../sort/BinaryExternalSortBufferTest.java         |  4 +--
 .../{file => }/sort/IntNormalizedKeyComputer.java  |  2 +-
 .../{file => }/sort/IntRecordComparator.java       |  2 +-
 .../{file => }/stats/BinaryTableStatsTest.java     |  2 +-
 .../stats/FieldStatsArraySerializerTest.java       |  6 ++--
 .../{file => }/stats/FieldStatsCollectorTest.java  |  2 +-
 .../paimon/{file => }/stats/StatsTestUtils.java    |  2 +-
 .../{file => }/stats/TestFileStatsExtractor.java   |  6 ++--
 .../paimon/table/AppendOnlyFileDataTableTest.java  |  2 +-
 .../paimon/table/AppendOnlyFileStoreTableTest.java |  6 ++--
 .../AppendOnlyTableColumnTypeFileDataTest.java     |  2 +-
 .../AppendOnlyTableColumnTypeFileMetaTest.java     |  4 +--
 .../table/AppendOnlyTableFileMetaFilterTest.java   |  4 +--
 .../ChangelogValueCountColumnTypeFileDataTest.java |  2 +-
 .../ChangelogValueCountColumnTypeFileMetaTest.java |  4 +--
 .../ChangelogValueCountFileDataTableTest.java      |  2 +-
 .../ChangelogValueCountFileMetaFilterTest.java     |  4 +--
 .../ChangelogValueCountFileStoreTableTest.java     |  8 ++---
 .../ChangelogWithKeyColumnTypeFileDataTest.java    |  2 +-
 .../table/ChangelogWithKeyFileDataTableTest.java   |  2 +-
 .../table/ChangelogWithKeyFileMetaFilterTest.java  |  4 +--
 .../table/ChangelogWithKeyFileStoreTableTest.java  |  6 ++--
 ...hangelogWithKeyTableColumnTypeFileMetaTest.java |  6 ++--
 .../paimon/table/ColumnTypeFileMetaTestBase.java   |  4 +--
 .../paimon/table/FileMetaFilterTestBase.java       |  4 +--
 .../paimon/table/FileStoreTableTestBase.java       | 16 ++++-----
 .../paimon/table/SchemaEvolutionTableTestBase.java | 14 ++++----
 .../apache/paimon/table/SchemaEvolutionTest.java   |  4 +--
 .../paimon/table/WritePreemptMemoryTest.java       |  8 ++---
 .../apache/paimon/table/sink/TableWriteTest.java   | 12 +++----
 .../table/source/BatchDataTableScanTest.java       |  2 +-
 .../source/RowDataRecordIteratorTestBase.java      |  6 ++--
 .../ValueContentRowDataRecordIteratorTest.java     |  2 +-
 .../ValueCountRowDataRecordIteratorTest.java       |  2 +-
 .../BoundedWatermarkFollowUpScannerTest.java       |  4 +--
 .../snapshot/CompactedStartingScannerTest.java     |  2 +-
 .../CompactionChangelogFollowUpScannerTest.java    |  4 +--
 .../ContinuousCompactorFollowUpScannerTest.java    |  4 +--
 .../ContinuousCompactorStartingScannerTest.java    |  2 +-
 ...ContinuousFromTimestampStartingScannerTest.java |  2 +-
 .../ContinuousLatestStartingScannerTest.java       |  2 +-
 .../source/snapshot/DeltaFollowUpScannerTest.java  |  4 +--
 .../source/snapshot/FullStartingScannerTest.java   |  2 +-
 .../InputChangelogFollowUpScannerTest.java         |  4 +--
 .../table/source/snapshot/ScannerTestBase.java     | 10 +++---
 .../paimon/{file => }/utils/BlockingIterator.java  |  2 +-
 .../paimon/{file => }/utils/FailingFileIO.java     |  3 +-
 .../{file => }/utils/FileStorePathFactoryTest.java |  4 +--
 .../{file => }/utils/ObjectSerializerTestBase.java |  2 +-
 .../paimon/{file => }/utils/OffsetRowTest.java     |  2 +-
 .../paimon/{file => }/utils/ReusingKeyValue.java   |  4 +--
 .../paimon/{file => }/utils/ReusingTestData.java   |  5 ++-
 .../{file => }/utils/SnapshotManagerTest.java      |  2 +-
 .../{file => }/utils/TestReusingRecordReader.java  |  4 +--
 .../paimon/{file => }/utils/TraceableFileIO.java   |  3 +-
 .../org.apache.paimon.format.FileFormatFactory     |  2 +-
 .../services/org.apache.paimon.fs.FileIOLoader     |  4 +--
 .../apache/paimon/connector/CatalogITCaseBase.java |  4 +--
 .../connector/ContinuousFileStoreITCase.java       |  6 ++--
 .../apache/paimon/connector/FlinkActionITCase.java |  2 +-
 .../apache/paimon/connector/LookupJoinITCase.java  |  2 +-
 .../apache/paimon/connector/CatalogITCaseBase.java |  4 +--
 .../connector/ContinuousFileStoreITCase.java       |  6 ++--
 .../apache/paimon/connector/FlinkActionITCase.java |  2 +-
 .../apache/paimon/connector/LookupJoinITCase.java  |  2 +-
 .../connector/AbstractTableStoreFactory.java       |  2 +-
 .../connector/TableStoreConnectorFactory.java      |  4 +--
 .../apache/paimon/connector/action/ActionBase.java |  6 ++--
 .../connector/lookup/FileStoreLookupFunction.java  |  2 +-
 .../sink/FullChangelogStoreSinkWrite.java          |  4 +--
 .../sink/OffsetRowDataHashStreamPartitioner.java   |  2 +-
 .../RestoreAndFailCommittableStateManager.java     |  2 +-
 .../connector/sink/StoreCompactOperator.java       |  2 +-
 .../paimon/connector/sink/TableStoreSink.java      |  2 +-
 .../connector/source/FlinkSourceBuilder.java       |  2 +-
 .../connector/source/LogHybridSourceFactory.java   |  2 +-
 .../connector/source/StaticFileStoreSource.java    |  4 +--
 .../source/StaticFileStoreSplitEnumerator.java     |  2 +-
 .../paimon/connector/source/TableStoreSource.java  |  2 +-
 .../paimon/connector/AppendOnlyTableITCase.java    |  2 +-
 .../apache/paimon/connector/CatalogITCaseBase.java |  6 ++--
 .../paimon/connector/CatalogTableITCase.java       |  4 +--
 .../apache/paimon/connector/ChangelogModeTest.java |  4 +--
 .../ChangelogWithKeyFileStoreTableITCase.java      |  2 +-
 ...AndMultiPartitionedTableWIthKafkaLogITCase.java |  2 +-
 .../connector/ContinuousFileStoreITCase.java       |  6 ++--
 .../apache/paimon/connector/FileStoreITCase.java   | 10 +++---
 .../paimon/connector/FileSystemCatalogITCase.java  |  4 +--
 .../paimon/connector/ForceCompactionITCase.java    | 10 +++---
 .../connector/FullCompactionFileStoreITCase.java   |  2 +-
 .../apache/paimon/connector/LogSystemITCase.java   |  2 +-
 .../connector/LookupChangelogWithAggITCase.java    |  2 +-
 .../apache/paimon/connector/LookupJoinITCase.java  |  2 +-
 .../paimon/connector/PredicateConverterTest.java   |  2 +-
 .../paimon/connector/ReadWriteTableITCase.java     |  4 +--
 .../paimon/connector/RescaleBucketITCase.java      |  6 ++--
 .../StreamingReadWriteTableWithKafkaLogITCase.java |  2 +-
 .../paimon/connector/StreamingWarehouseITCase.java |  2 +-
 .../paimon/connector/action/ActionITCaseBase.java  | 10 +++---
 .../connector/action/CompactActionITCase.java      |  2 +-
 .../connector/action/DeleteActionITCase.java       |  4 +--
 .../action/DropPartitionActionITCase.java          |  2 +-
 .../connector/action/MergeIntoActionITCase.java    |  2 +-
 .../connector/sink/CommitterOperatorTest.java      |  4 +--
 .../connector/sink/CommitterOperatorTestBase.java  |  4 +--
 .../paimon/connector/sink/CompactorSinkITCase.java |  8 ++---
 .../connector/sink/FileStoreShuffleBucketTest.java |  2 +-
 .../paimon/connector/sink/SinkSavepointITCase.java |  2 +-
 .../connector/source/CompactorSourceITCase.java    |  4 +--
 .../source/FileStoreSourceReaderTest.java          |  4 +--
 .../source/FileStoreSourceSplitGeneratorTest.java  |  2 +-
 .../source/FileStoreSourceSplitReaderTest.java     |  8 ++---
 .../source/FileStoreSourceSplitSerializerTest.java |  2 +-
 .../source/TestChangelogDataReadWrite.java         | 18 +++++-----
 .../connector/util/ReadWriteTableTestUtil.java     |  2 +-
 .../apache/paimon/format/avro/AvroFileFormat.java  |  2 +-
 .../apache/paimon/format/orc/OrcFileFormat.java    |  2 +-
 .../orc/filter/OrcPredicateFunctionVisitor.java    |  3 +-
 .../paimon/format/parquet/ParquetFileFormat.java   |  2 +-
 .../paimon/format/orc/OrcFilterConverterTest.java  |  4 +--
 .../java/org/apache/paimon/hive/HiveCatalog.java   |  6 ++--
 .../org/apache/paimon/hive/HiveCatalogITCase.java  |  4 +--
 .../java/org/apache/paimon/hive/HiveSchema.java    |  2 +-
 .../org/apache/paimon/hive/TableStoreJobConf.java  |  2 +-
 .../paimon/hive/mapred/TableStoreInputFormat.java  |  4 +--
 .../paimon/hive/mapred/TableStoreRecordReader.java |  2 +-
 .../org/apache/paimon/hive/FileStoreTestUtils.java |  7 ++--
 .../apache/paimon/hive/HiveTableSchemaTest.java    |  4 +--
 .../hive/TableStoreHiveStorageHandlerITCase.java   |  2 +-
 .../apache/paimon/hive/TableStoreSerDeTest.java    |  4 +--
 .../apache/paimon/spark/SimpleTableTestHelper.java |  4 +--
 .../java/org/apache/paimon/spark/SparkCatalog.java |  8 ++---
 .../org/apache/paimon/spark/SparkReadITCase.java   |  2 +-
 .../org/apache/paimon/spark/SparkReadTestBase.java |  2 +-
 336 files changed, 812 insertions(+), 852 deletions(-)

diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
index 72f1a697b..f31e14729 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
@@ -22,15 +22,15 @@ import org.apache.flink.table.store.catalog.CatalogContext;
 
 import org.apache.commons.math3.random.RandomDataGenerator;
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.catalog.Catalog;
 import org.apache.paimon.catalog.CatalogFactory;
 import org.apache.paimon.catalog.Identifier;
-import org.apache.paimon.schema.Schema;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.options.CatalogOptions;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.schema.Schema;
 import org.apache.paimon.table.Table;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataTypes;
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java b/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
index 946e549db..77862e826 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FileFormat.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.format;
 
-import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.types.RowType;
 
 import javax.annotation.Nullable;
diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/ThreadUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/ThreadUtils.java
index d70041194..6e617473b 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/ThreadUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/ThreadUtils.java
@@ -18,6 +18,13 @@
 
 package org.apache.paimon.utils;
 
+import org.slf4j.Logger;
+
+import java.lang.management.ManagementFactory;
+import java.lang.management.ThreadInfo;
+import java.util.Arrays;
+import java.util.stream.Collectors;
+
 /** Utils for thread. */
 public class ThreadUtils {
 
@@ -29,4 +36,12 @@ public class ThreadUtils {
         }
         return builder.toString();
     }
+
+    public static void errorLogThreadDump(Logger logger) {
+        final ThreadInfo[] perThreadInfo =
+                ManagementFactory.getThreadMXBean().dumpAllThreads(true, true);
+        logger.error(
+                "Thread dump: \n{}",
+                Arrays.stream(perThreadInfo).map(Object::toString).collect(Collectors.joining()));
+    }
 }
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java b/paimon-core/src/main/java/org/apache/paimon/AbstractFileStore.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
rename to paimon-core/src/main/java/org/apache/paimon/AbstractFileStore.java
index aab0b6526..f644129a9 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
+++ b/paimon-core/src/main/java/org/apache/paimon/AbstractFileStore.java
@@ -16,21 +16,20 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file;
+package org.apache.paimon;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.manifest.ManifestFile;
 import org.apache.paimon.manifest.ManifestList;
 import org.apache.paimon.operation.FileStoreCommitImpl;
 import org.apache.paimon.operation.FileStoreExpireImpl;
 import org.apache.paimon.operation.PartitionExpire;
 import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FileStorePathFactory;
+import org.apache.paimon.utils.SnapshotManager;
 
 import java.time.Duration;
 import java.util.Comparator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java b/paimon-core/src/main/java/org/apache/paimon/AppendOnlyFileStore.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
rename to paimon-core/src/main/java/org/apache/paimon/AppendOnlyFileStore.java
index d446dfc29..893039c23 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
+++ b/paimon-core/src/main/java/org/apache/paimon/AppendOnlyFileStore.java
@@ -16,16 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file;
+package org.apache.paimon;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.format.FileFormatDiscover;
+import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.operation.AppendOnlyFileStoreRead;
 import org.apache.paimon.operation.AppendOnlyFileStoreScan;
 import org.apache.paimon.operation.AppendOnlyFileStoreWrite;
 import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.format.FileFormatDiscover;
-import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowType;
 
 import java.util.Comparator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java b/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java
index 0792f3e15..4a046c7f0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java
+++ b/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java
@@ -20,7 +20,6 @@ package org.apache.paimon;
 
 import org.apache.paimon.annotation.Documentation.ExcludeFromDocumentation;
 import org.apache.paimon.annotation.Documentation.Immutable;
-import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.ConfigOption;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/FileStore.java b/paimon-core/src/main/java/org/apache/paimon/FileStore.java
similarity index 93%
rename from paimon-core/src/main/java/org/apache/paimon/file/FileStore.java
rename to paimon-core/src/main/java/org/apache/paimon/FileStore.java
index 18a26c861..57fb4d23c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/FileStore.java
+++ b/paimon-core/src/main/java/org/apache/paimon/FileStore.java
@@ -16,17 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file;
+package org.apache.paimon;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.paimon.operation.FileStoreCommit;
 import org.apache.paimon.operation.FileStoreExpire;
 import org.apache.paimon.operation.FileStoreRead;
 import org.apache.paimon.operation.FileStoreScan;
 import org.apache.paimon.operation.FileStoreWrite;
 import org.apache.paimon.operation.PartitionExpire;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.SnapshotManager;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java b/paimon-core/src/main/java/org/apache/paimon/KeyValue.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java
rename to paimon-core/src/main/java/org/apache/paimon/KeyValue.java
index 3d6f16254..8afc27a87 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java
+++ b/paimon-core/src/main/java/org/apache/paimon/KeyValue.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file;
+package org.apache.paimon;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java b/paimon-core/src/main/java/org/apache/paimon/KeyValueFileStore.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
rename to paimon-core/src/main/java/org/apache/paimon/KeyValueFileStore.java
index f0c0f68c8..1201c8e96 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
+++ b/paimon-core/src/main/java/org/apache/paimon/KeyValueFileStore.java
@@ -16,20 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file;
+package org.apache.paimon;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.format.FileFormatDiscover;
+import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.mergetree.compact.MergeFunctionFactory;
 import org.apache.paimon.operation.KeyValueFileStoreRead;
 import org.apache.paimon.operation.KeyValueFileStoreScan;
 import org.apache.paimon.operation.KeyValueFileStoreWrite;
 import org.apache.paimon.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.utils.KeyComparatorSupplier;
-import org.apache.paimon.format.FileFormatDiscover;
-import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.KeyComparatorSupplier;
 
 import java.util.Comparator;
 import java.util.function.Supplier;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java b/paimon-core/src/main/java/org/apache/paimon/KeyValueSerializer.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/KeyValueSerializer.java
index d7dc7f876..34fd9b140 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/KeyValueSerializer.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file;
+package org.apache.paimon;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.JoinedRow;
-import org.apache.paimon.file.utils.ObjectSerializer;
-import org.apache.paimon.file.utils.OffsetRow;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.ObjectSerializer;
+import org.apache.paimon.utils.OffsetRow;
 
 /**
  * Serializer for {@link KeyValue}.
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java b/paimon-core/src/main/java/org/apache/paimon/Snapshot.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java
rename to paimon-core/src/main/java/org/apache/paimon/Snapshot.java
index 2f4a6dee2..e953a1b0c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java
+++ b/paimon-core/src/main/java/org/apache/paimon/Snapshot.java
@@ -16,19 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file;
+package org.apache.paimon;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonCreator;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonGetter;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonProperty;
 
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.manifest.ManifestEntry;
 import org.apache.paimon.manifest.ManifestFileMeta;
 import org.apache.paimon.manifest.ManifestList;
 import org.apache.paimon.operation.FileStoreScan;
-import org.apache.paimon.file.utils.JsonSerdeUtil;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
+import org.apache.paimon.utils.JsonSerdeUtil;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/WriteMode.java b/paimon-core/src/main/java/org/apache/paimon/WriteMode.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/WriteMode.java
rename to paimon-core/src/main/java/org/apache/paimon/WriteMode.java
index 4a4c63bf7..ea353845f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/WriteMode.java
+++ b/paimon-core/src/main/java/org/apache/paimon/WriteMode.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file;
+package org.apache.paimon;
 
 import org.apache.paimon.options.description.DescribedEnum;
 import org.apache.paimon.options.description.InlineElement;
diff --git a/paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyCompactManager.java b/paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyCompactManager.java
index a81dc6050..c4dcec18e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyCompactManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyCompactManager.java
@@ -18,13 +18,14 @@
 
 package org.apache.paimon.append;
 
+import org.apache.paimon.AppendOnlyFileStore;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.compact.CompactFutureManager;
 import org.apache.paimon.compact.CompactResult;
 import org.apache.paimon.compact.CompactTask;
+import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataFilePathFactory;
-import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.utils.Preconditions;
 
 import java.io.IOException;
@@ -38,7 +39,7 @@ import java.util.Set;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ExecutorService;
 
-/** Compact manager for {@link org.apache.paimon.file.AppendOnlyFileStore}. */
+/** Compact manager for {@link AppendOnlyFileStore}. */
 public class AppendOnlyCompactManager extends CompactFutureManager {
 
     private final FileIO fileIO;
diff --git a/paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyWriter.java b/paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyWriter.java
index 1c7b7c156..f5a8a13c3 100644
--- a/paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/append/AppendOnlyWriter.java
@@ -19,21 +19,21 @@
 
 package org.apache.paimon.append;
 
-import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.compact.CompactManager;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.io.CompactIncrement;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.io.NewFilesIncrement;
 import org.apache.paimon.io.RowDataRollingFileWriter;
-import org.apache.paimon.file.utils.CommitIncrement;
-import org.apache.paimon.file.utils.RecordWriter;
-import org.apache.paimon.format.FileFormat;
-import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.CommitIncrement;
 import org.apache.paimon.utils.LongCounter;
 import org.apache.paimon.utils.Preconditions;
+import org.apache.paimon.utils.RecordWriter;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/catalog/AbstractCatalog.java b/paimon-core/src/main/java/org/apache/paimon/catalog/AbstractCatalog.java
index 42095c604..beecbe5af 100644
--- a/paimon-core/src/main/java/org/apache/paimon/catalog/AbstractCatalog.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/AbstractCatalog.java
@@ -19,9 +19,9 @@
 package org.apache.paimon.catalog;
 
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.Table;
diff --git a/paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalog.java b/paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalog.java
index 0808a9ac7..f3ef51620 100644
--- a/paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalog.java
+++ b/paimon-core/src/main/java/org/apache/paimon/catalog/FileSystemCatalog.java
@@ -18,13 +18,13 @@
 
 package org.apache.paimon.catalog;
 
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaChange;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.FileStatus;
-import org.apache.paimon.fs.Path;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputView.java b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputView.java
index bc99ab6cb..5d1abea41 100644
--- a/paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputView.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputView.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.disk;
 
-import org.apache.paimon.data.AbstractPagedInputView;
 import org.apache.paimon.compression.BlockCompressionFactory;
 import org.apache.paimon.compression.BlockDecompressor;
+import org.apache.paimon.data.AbstractPagedInputView;
 import org.apache.paimon.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputViewIterator.java b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputViewIterator.java
index d86909df5..51cca5e94 100644
--- a/paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputViewIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelReaderInputViewIterator.java
@@ -20,8 +20,8 @@ package org.apache.paimon.disk;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
-import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.utils.MutableObjectIterator;
 
 import java.io.EOFException;
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/disk/ChannelWriterOutputView.java b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelWriterOutputView.java
index 7883b1d2a..f157e03ab 100644
--- a/paimon-core/src/main/java/org/apache/paimon/disk/ChannelWriterOutputView.java
+++ b/paimon-core/src/main/java/org/apache/paimon/disk/ChannelWriterOutputView.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.disk;
 
-import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.compression.BlockCompressionFactory;
 import org.apache.paimon.compression.BlockCompressor;
+import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/ThreadUtils.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/ThreadUtils.java
deleted file mode 100644
index 4db461ef5..000000000
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/ThreadUtils.java
+++ /dev/null
@@ -1,38 +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.paimon.file.utils;
-
-import org.slf4j.Logger;
-
-import java.lang.management.ManagementFactory;
-import java.lang.management.ThreadInfo;
-import java.util.Arrays;
-import java.util.stream.Collectors;
-
-/** {@code ThreadUtils} collects helper methods in the context of threading. */
-public class ThreadUtils {
-
-    public static void errorLogThreadDump(Logger logger) {
-        final ThreadInfo[] perThreadInfo =
-                ManagementFactory.getThreadMXBean().dumpAllThreads(true, true);
-        logger.error(
-                "Thread dump: \n{}",
-                Arrays.stream(perThreadInfo).map(Object::toString).collect(Collectors.joining()));
-    }
-}
diff --git a/paimon-core/src/main/java/org/apache/paimon/io/AbstractFileRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/io/AbstractFileRecordIterator.java
index 68f63be5a..d9a91322b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/io/AbstractFileRecordIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/AbstractFileRecordIterator.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.io;
 
-import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.casting.CastFieldGetter;
 import org.apache.paimon.casting.CastedRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.utils.ProjectedRow;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/io/DataFileMeta.java b/paimon-core/src/main/java/org/apache/paimon/io/DataFileMeta.java
index de0c78c64..39fbfe036 100644
--- a/paimon-core/src/main/java/org/apache/paimon/io/DataFileMeta.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/DataFileMeta.java
@@ -21,8 +21,8 @@ package org.apache.paimon.io;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.stats.BinaryTableStats;
+import org.apache.paimon.stats.FieldStatsArraySerializer;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
@@ -36,9 +36,9 @@ import java.util.List;
 import java.util.Objects;
 
 import static org.apache.paimon.data.BinaryRow.EMPTY_ROW;
-import static org.apache.paimon.file.utils.SerializationUtils.newBytesType;
-import static org.apache.paimon.file.utils.SerializationUtils.newStringType;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
+import static org.apache.paimon.utils.SerializationUtils.newBytesType;
+import static org.apache.paimon.utils.SerializationUtils.newStringType;
 
 /** Metadata of a data file. */
 public class DataFileMeta {
diff --git a/paimon-core/src/main/java/org/apache/paimon/io/DataFileMetaSerializer.java b/paimon-core/src/main/java/org/apache/paimon/io/DataFileMetaSerializer.java
index 51b9102da..764741763 100644
--- a/paimon-core/src/main/java/org/apache/paimon/io/DataFileMetaSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/DataFileMetaSerializer.java
@@ -21,13 +21,13 @@ package org.apache.paimon.io;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.file.utils.ObjectSerializer;
+import org.apache.paimon.stats.BinaryTableStats;
+import org.apache.paimon.utils.ObjectSerializer;
 
-import static org.apache.paimon.file.utils.SerializationUtils.deserializeBinaryRow;
-import static org.apache.paimon.file.utils.SerializationUtils.serializeBinaryRow;
 import static org.apache.paimon.utils.RowDataUtils.fromStringArrayData;
 import static org.apache.paimon.utils.RowDataUtils.toStringArrayData;
+import static org.apache.paimon.utils.SerializationUtils.deserializeBinaryRow;
+import static org.apache.paimon.utils.SerializationUtils.serializeBinaryRow;
 
 /** Serializer for {@link DataFileMeta}. */
 public class DataFileMetaSerializer extends ObjectSerializer<DataFileMeta> {
diff --git a/paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileRecordReader.java b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileRecordReader.java
index 95dd0c383..8690e3217 100644
--- a/paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileRecordReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileRecordReader.java
@@ -18,16 +18,16 @@
 
 package org.apache.paimon.io;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.KeyValueSerializer;
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.KeyValueSerializer;
 import org.apache.paimon.casting.CastFieldGetter;
-import org.apache.paimon.file.utils.FileUtils;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FileUtils;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileWriter.java
index b2e2e9631..731303b97 100644
--- a/paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueDataFileWriter.java
@@ -18,17 +18,17 @@
 
 package org.apache.paimon.io;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatWriterFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.stats.BinaryTableStats;
+import org.apache.paimon.stats.FieldStatsArraySerializer;
 import org.apache.paimon.types.RowType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileReaderFactory.java b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileReaderFactory.java
index e516c634d..75de5709d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileReaderFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileReaderFactory.java
@@ -18,19 +18,19 @@
 
 package org.apache.paimon.io;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.predicate.Predicate;
-import org.apache.paimon.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.BulkFormatMapping;
-import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.format.FileFormatDiscover;
 import org.apache.paimon.format.FormatKey;
 import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.BulkFormatMapping;
+import org.apache.paimon.utils.FileStorePathFactory;
 import org.apache.paimon.utils.Projection;
 
 import javax.annotation.Nullable;
diff --git a/paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileWriterFactory.java b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileWriterFactory.java
index b7dcbd813..c0bd2f0f9 100644
--- a/paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileWriterFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/KeyValueFileWriterFactory.java
@@ -18,17 +18,17 @@
 
 package org.apache.paimon.io;
 
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.KeyValueSerializer;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.KeyValueSerializer;
-import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatWriterFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FileStorePathFactory;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/io/RowDataFileRecordReader.java b/paimon-core/src/main/java/org/apache/paimon/io/RowDataFileRecordReader.java
index 11c3118ab..d3e8bb16c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/io/RowDataFileRecordReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/RowDataFileRecordReader.java
@@ -18,13 +18,13 @@
 
 package org.apache.paimon.io;
 
-import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.casting.CastFieldGetter;
-import org.apache.paimon.file.utils.FileUtils;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.utils.FileUtils;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/io/RowDataFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/io/RowDataFileWriter.java
index da9fea7a6..22afd08a6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/io/RowDataFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/RowDataFileWriter.java
@@ -20,12 +20,12 @@
 package org.apache.paimon.io;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatWriterFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.stats.BinaryTableStats;
+import org.apache.paimon.stats.FieldStatsArraySerializer;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.LongCounter;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntry.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntry.java
index a503d0cab..84af10819 100644
--- a/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntry.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntry.java
@@ -20,11 +20,11 @@ package org.apache.paimon.manifest;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.io.DataFileMeta;
-import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.TinyIntType;
+import org.apache.paimon.utils.FileStorePathFactory;
 import org.apache.paimon.utils.Preconditions;
 
 import java.util.ArrayList;
@@ -34,7 +34,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Objects;
 
-import static org.apache.paimon.file.utils.SerializationUtils.newBytesType;
+import static org.apache.paimon.utils.SerializationUtils.newBytesType;
 
 /** Entry of a manifest file, representing an addition / deletion of a data file. */
 public class ManifestEntry {
diff --git a/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntrySerializer.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntrySerializer.java
index 316208ecd..ad398e2ac 100644
--- a/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntrySerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestEntrySerializer.java
@@ -21,10 +21,10 @@ package org.apache.paimon.manifest;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.io.DataFileMetaSerializer;
-import org.apache.paimon.file.utils.VersionedObjectSerializer;
+import org.apache.paimon.utils.VersionedObjectSerializer;
 
-import static org.apache.paimon.file.utils.SerializationUtils.deserializeBinaryRow;
-import static org.apache.paimon.file.utils.SerializationUtils.serializeBinaryRow;
+import static org.apache.paimon.utils.SerializationUtils.deserializeBinaryRow;
+import static org.apache.paimon.utils.SerializationUtils.serializeBinaryRow;
 
 /** Serializer for {@link ManifestEntry}. */
 public class ManifestEntrySerializer extends VersionedObjectSerializer<ManifestEntry> {
diff --git a/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFile.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFile.java
index 3405b27e8..3f136da45 100644
--- a/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFile.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFile.java
@@ -19,20 +19,20 @@
 package org.apache.paimon.manifest;
 
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.io.RollingFileWriter;
-import org.apache.paimon.io.SingleFileWriter;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.stats.FieldStatsArraySerializer;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.file.utils.FileUtils;
-import org.apache.paimon.file.utils.VersionedObjectSerializer;
 import org.apache.paimon.format.FieldStatsCollector;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.FormatWriterFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.io.RollingFileWriter;
+import org.apache.paimon.io.SingleFileWriter;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.stats.FieldStatsArraySerializer;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FileStorePathFactory;
+import org.apache.paimon.utils.FileUtils;
+import org.apache.paimon.utils.VersionedObjectSerializer;
 
 import java.io.IOException;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMeta.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMeta.java
index eee3f37b9..b9d638b5b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMeta.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMeta.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.manifest;
 
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.stats.BinaryTableStats;
+import org.apache.paimon.stats.FieldStatsArraySerializer;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMetaSerializer.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMetaSerializer.java
index 2de80fbe3..bba5803a1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMetaSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestFileMetaSerializer.java
@@ -21,8 +21,8 @@ package org.apache.paimon.manifest;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.file.utils.VersionedObjectSerializer;
+import org.apache.paimon.stats.BinaryTableStats;
+import org.apache.paimon.utils.VersionedObjectSerializer;
 
 /** Serializer for {@link ManifestFileMeta}. */
 public class ManifestFileMetaSerializer extends VersionedObjectSerializer<ManifestFileMeta> {
diff --git a/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestList.java b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestList.java
index 2dd41a3a8..c95718da0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestList.java
+++ b/paimon-core/src/main/java/org/apache/paimon/manifest/ManifestList.java
@@ -18,9 +18,6 @@
 
 package org.apache.paimon.manifest;
 
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.file.utils.FileUtils;
-import org.apache.paimon.file.utils.VersionedObjectSerializer;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.FormatWriter;
@@ -29,6 +26,9 @@ import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.PositionOutputStream;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FileStorePathFactory;
+import org.apache.paimon.utils.FileUtils;
+import org.apache.paimon.utils.VersionedObjectSerializer;
 
 import java.io.IOException;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/memory/Buffer.java b/paimon-core/src/main/java/org/apache/paimon/memory/Buffer.java
index c22d2339e..0bd395dbd 100644
--- a/paimon-core/src/main/java/org/apache/paimon/memory/Buffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/memory/Buffer.java
@@ -20,7 +20,6 @@ package org.apache.paimon.memory;
 
 import org.apache.paimon.annotation.Experimental;
 
-
 import java.nio.ByteBuffer;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/DropDeleteReader.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/DropDeleteReader.java
index 27f69e587..7bb50d177 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/DropDeleteReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/DropDeleteReader.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.mergetree;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/LookupLevels.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/LookupLevels.java
index 6d4f7e40c..d1db060d8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/LookupLevels.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/LookupLevels.java
@@ -22,10 +22,10 @@ import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
 import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
 import org.apache.flink.shaded.guava30.com.google.common.cache.RemovalNotification;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.RowCompactedSerializer;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataOutputSerializer;
 import org.apache.paimon.lookup.LookupStoreFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeReaders.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeReaders.java
index c46d556b6..d77ffaf56 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeReaders.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeReaders.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.mergetree;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.KeyValueFileReaderFactory;
 import org.apache.paimon.mergetree.compact.ConcatRecordReader;
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeWriter.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeWriter.java
index 51a9da81e..085d83bec 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/MergeTreeWriter.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.mergetree;
 
 import org.apache.paimon.CoreOptions.ChangelogProducer;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.compact.CompactManager;
 import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.disk.IOManager;
 import org.apache.paimon.io.CompactIncrement;
 import org.apache.paimon.io.DataFileMeta;
@@ -33,9 +33,9 @@ import org.apache.paimon.io.RollingFileWriter;
 import org.apache.paimon.memory.MemoryOwner;
 import org.apache.paimon.memory.MemorySegmentPool;
 import org.apache.paimon.mergetree.compact.MergeFunction;
-import org.apache.paimon.file.utils.CommitIncrement;
-import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.CommitIncrement;
+import org.apache.paimon.utils.RecordWriter;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/SortBufferWriteBuffer.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/SortBufferWriteBuffer.java
index 7ca7fa426..8ff9d536c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/SortBufferWriteBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/SortBufferWriteBuffer.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.mergetree;
 
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.KeyValueSerializer;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.codegen.CodeGenUtils;
 import org.apache.paimon.codegen.NormalizedKeyComputer;
@@ -27,20 +29,18 @@ import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.data.serializer.InternalSerializers;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.KeyValueSerializer;
 import org.apache.paimon.disk.IOManager;
 import org.apache.paimon.memory.MemorySegmentPool;
 import org.apache.paimon.mergetree.compact.MergeFunction;
 import org.apache.paimon.mergetree.compact.ReducerMergeFunctionWrapper;
-import org.apache.paimon.file.sort.BinaryExternalSortBuffer;
-import org.apache.paimon.file.sort.BinaryInMemorySortBuffer;
-import org.apache.paimon.file.sort.SortBuffer;
-import org.apache.paimon.file.utils.MutableObjectIterator;
+import org.apache.paimon.sort.BinaryExternalSortBuffer;
+import org.apache.paimon.sort.BinaryInMemorySortBuffer;
+import org.apache.paimon.sort.SortBuffer;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.MutableObjectIterator;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/WriteBuffer.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/WriteBuffer.java
index 283fddd70..9b2749fb7 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/WriteBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/WriteBuffer.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.mergetree;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.mergetree.compact.MergeFunction;
 import org.apache.paimon.types.RowKind;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogMergeTreeRewriter.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogMergeTreeRewriter.java
index e0b802632..be3a79358 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogMergeTreeRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogMergeTreeRewriter.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.KeyValueFileReaderFactory;
 import org.apache.paimon.io.KeyValueFileWriterFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogResult.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogResult.java
index 0fd4f0eae..55c574525 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogResult.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ChangelogResult.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.types.RowKind;
 
 import javax.annotation.Nullable;
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/DeduplicateMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/DeduplicateMergeFunction.java
index 3efccb91b..e05e2a33c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/DeduplicateMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/DeduplicateMergeFunction.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapper.java
index 09139ce7b..53214a0af 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapper.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapper.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.Preconditions;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
index d13ab10b8..207f1c258 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.mergetree.compact;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.KeyValueFileReaderFactory;
 import org.apache.paimon.io.KeyValueFileWriterFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
index 0aae5fc44..e2ee56346 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.mergetree.compact;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
 
 import java.util.function.Function;
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeFunction.java
index ab46cdabf..254e5cb25 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeFunction.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeTreeCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeTreeCompactRewriter.java
index 6f16767da..c83f0ca4d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeTreeCompactRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/LookupMergeTreeCompactRewriter.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.mergetree.compact;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.KeyValueFileReaderFactory;
 import org.apache.paimon.io.KeyValueFileWriterFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunction.java
index 5e73bb65d..a5aa32851 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunction.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunctionWrapper.java
index 34b2fe688..26fdfe85d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunctionWrapper.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunctionWrapper.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManager.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManager.java
index f9ff47de6..06fde6d6b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManager.java
@@ -18,11 +18,12 @@
 
 package org.apache.paimon.mergetree.compact;
 
+import org.apache.paimon.KeyValueFileStore;
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.compact.CompactFutureManager;
 import org.apache.paimon.compact.CompactResult;
 import org.apache.paimon.compact.CompactUnit;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.mergetree.LevelSortedRun;
 import org.apache.paimon.mergetree.Levels;
@@ -38,7 +39,7 @@ import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ExecutorService;
 import java.util.stream.Collectors;
 
-/** Compact manager for {@link org.apache.paimon.file.KeyValueFileStore}. */
+/** Compact manager for {@link KeyValueFileStore}. */
 public class MergeTreeCompactManager extends CompactFutureManager {
 
     private static final Logger LOG = LoggerFactory.getLogger(MergeTreeCompactManager.class);
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactRewriter.java
index 23dcbb1b6..4adc1ce03 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactRewriter.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.compact.CompactResult;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.KeyValueFileReaderFactory;
 import org.apache.paimon.io.KeyValueFileWriterFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactTask.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactTask.java
index 2f32250e1..c08398f2a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactTask.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeTreeCompactTask.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.compact.CompactResult;
 import org.apache.paimon.compact.CompactTask;
 import org.apache.paimon.compact.CompactUnit;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.mergetree.SortedRun;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/PartialUpdateMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/PartialUpdateMergeFunction.java
index 107c19c7d..fe15d3e1c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/PartialUpdateMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/PartialUpdateMergeFunction.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.mergetree.compact;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.Projection;
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapper.java
index dfbf7b972..40c0732b0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapper.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapper.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 
 /**
  * Wrapper for {@link MergeFunction}s which works like a reducer.
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/SortMergeReader.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/SortMergeReader.java
index 878446908..897f8d83a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/SortMergeReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/SortMergeReader.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.mergetree.compact;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.utils.Preconditions;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ValueCountMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ValueCountMergeFunction.java
index 6ae480176..f675be665 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ValueCountMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/ValueCountMergeFunction.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.mergetree.compact;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
 
 import javax.annotation.Nullable;
diff --git a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/AggregateMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/AggregateMergeFunction.java
index 933fd0ae1..d4fff82ea 100644
--- a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/AggregateMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/AggregateMergeFunction.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.mergetree.compact.aggregate;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.mergetree.compact.MergeFunction;
 import org.apache.paimon.mergetree.compact.MergeFunctionFactory;
 import org.apache.paimon.options.Options;
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreScan.java
index d9a8b88a1..31deda6f3 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreScan.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.manifest.ManifestEntry;
 import org.apache.paimon.manifest.ManifestFile;
 import org.apache.paimon.manifest.ManifestFileMeta;
@@ -29,14 +29,14 @@ import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.stats.FieldStatsArraySerializer;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.file.utils.FileUtils;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.stats.FieldStatsArraySerializer;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FileStorePathFactory;
+import org.apache.paimon.utils.FileUtils;
 import org.apache.paimon.utils.Filter;
 import org.apache.paimon.utils.Preconditions;
 import org.apache.paimon.utils.RowDataToObjectArrayConverter;
+import org.apache.paimon.utils.SnapshotManager;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreWrite.java
index 9c671be0b..de4d31d48 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreWrite.java
@@ -18,19 +18,19 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.disk.IOManager;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.manifest.ManifestEntry;
-import org.apache.paimon.file.utils.CommitIncrement;
-import org.apache.paimon.file.utils.ExecutorThreadFactory;
-import org.apache.paimon.file.utils.RecordWriter;
-import org.apache.paimon.file.utils.Restorable;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageImpl;
+import org.apache.paimon.utils.CommitIncrement;
+import org.apache.paimon.utils.ExecutorThreadFactory;
+import org.apache.paimon.utils.RecordWriter;
+import org.apache.paimon.utils.Restorable;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreRead.java b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreRead.java
index e94140e72..6bcfc27fd 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreRead.java
@@ -18,24 +18,25 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.AppendOnlyFileStore;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.format.FileFormatDiscover;
+import org.apache.paimon.format.FormatKey;
+import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.io.RowDataFileRecordReader;
 import org.apache.paimon.mergetree.compact.ConcatRecordReader;
 import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.schema.IndexCastMapping;
 import org.apache.paimon.schema.SchemaEvolutionUtil;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.BulkFormatMapping;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.format.FileFormatDiscover;
-import org.apache.paimon.format.FormatKey;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.BulkFormatMapping;
+import org.apache.paimon.utils.FileStorePathFactory;
 import org.apache.paimon.utils.Projection;
 
 import javax.annotation.Nullable;
@@ -48,7 +49,7 @@ import java.util.Map;
 
 import static org.apache.paimon.predicate.PredicateBuilder.splitAnd;
 
-/** {@link FileStoreRead} for {@link org.apache.paimon.file.AppendOnlyFileStore}. */
+/** {@link FileStoreRead} for {@link AppendOnlyFileStore}. */
 public class AppendOnlyFileStoreRead implements FileStoreRead<InternalRow> {
 
     private final FileIO fileIO;
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java
index b7408a501..f2382fb5b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java
@@ -18,14 +18,15 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.AppendOnlyFileStore;
 import org.apache.paimon.manifest.ManifestEntry;
 import org.apache.paimon.manifest.ManifestFile;
 import org.apache.paimon.manifest.ManifestList;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.stats.FieldStatsConverters;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.stats.FieldStatsConverters;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.SnapshotManager;
 
 import java.util.List;
 
@@ -33,7 +34,7 @@ import static org.apache.paimon.predicate.PredicateBuilder.and;
 import static org.apache.paimon.predicate.PredicateBuilder.pickTransformFieldMapping;
 import static org.apache.paimon.predicate.PredicateBuilder.splitAnd;
 
-/** {@link FileStoreScan} for {@link org.apache.paimon.file.AppendOnlyFileStore}. */
+/** {@link FileStoreScan} for {@link AppendOnlyFileStore}. */
 public class AppendOnlyFileStoreScan extends AbstractFileStoreScan {
 
     private final RowType rowType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreWrite.java
index d800ebd01..8a3a97734 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreWrite.java
@@ -18,26 +18,27 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.AppendOnlyFileStore;
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.append.AppendOnlyCompactManager;
 import org.apache.paimon.append.AppendOnlyWriter;
 import org.apache.paimon.compact.CompactManager;
 import org.apache.paimon.compact.NoopCompactManager;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.io.RowDataRollingFileWriter;
-import org.apache.paimon.file.utils.CommitIncrement;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.file.utils.RecordWriter;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.format.FileFormat;
-import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.reader.RecordReaderIterator;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.CommitIncrement;
+import org.apache.paimon.utils.FileStorePathFactory;
 import org.apache.paimon.utils.LongCounter;
+import org.apache.paimon.utils.RecordWriter;
+import org.apache.paimon.utils.SnapshotManager;
 
 import javax.annotation.Nullable;
 
@@ -48,7 +49,7 @@ import java.util.concurrent.ExecutorService;
 
 import static org.apache.paimon.io.DataFileMeta.getMaxSequenceNumber;
 
-/** {@link FileStoreWrite} for {@link org.apache.paimon.file.AppendOnlyFileStore}. */
+/** {@link FileStoreWrite} for {@link AppendOnlyFileStore}. */
 public class AppendOnlyFileStoreWrite extends AbstractFileStoreWrite<InternalRow> {
 
     private final FileIO fileIO;
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreCommitImpl.java b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreCommitImpl.java
index 36b900f0f..2ef582cea 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreCommitImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreCommitImpl.java
@@ -18,9 +18,11 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.manifest.FileKind;
 import org.apache.paimon.manifest.ManifestCommittable;
@@ -28,18 +30,16 @@ import org.apache.paimon.manifest.ManifestEntry;
 import org.apache.paimon.manifest.ManifestFile;
 import org.apache.paimon.manifest.ManifestFileMeta;
 import org.apache.paimon.manifest.ManifestList;
+import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FileStorePathFactory;
 import org.apache.paimon.utils.RowDataToObjectArrayConverter;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreExpireImpl.java b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreExpireImpl.java
index e86580d6c..54cfef081 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreExpireImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreExpireImpl.java
@@ -20,16 +20,16 @@ package org.apache.paimon.operation;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterables;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.manifest.ManifestEntry;
 import org.apache.paimon.manifest.ManifestFile;
 import org.apache.paimon.manifest.ManifestFileMeta;
 import org.apache.paimon.manifest.ManifestList;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
+import org.apache.paimon.utils.FileStorePathFactory;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreWrite.java
index 94e625729..5f516018d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/FileStoreWrite.java
@@ -18,13 +18,13 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.FileStore;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.FileStore;
 import org.apache.paimon.disk.IOManager;
 import org.apache.paimon.io.DataFileMeta;
-import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.SinkRecord;
+import org.apache.paimon.utils.RecordWriter;
 
 import java.util.List;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreRead.java b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreRead.java
index de9aa5a54..b796b61af 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreRead.java
@@ -18,8 +18,11 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.KeyValueFileStore;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.format.FileFormatDiscover;
+import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.KeyValueFileReaderFactory;
 import org.apache.paimon.mergetree.DropDeleteReader;
@@ -31,15 +34,13 @@ import org.apache.paimon.mergetree.compact.MergeFunctionFactory;
 import org.apache.paimon.mergetree.compact.MergeFunctionWrapper;
 import org.apache.paimon.mergetree.compact.ReducerMergeFunctionWrapper;
 import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.format.FileFormatDiscover;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FileStorePathFactory;
 import org.apache.paimon.utils.ProjectedRow;
 
 import javax.annotation.Nullable;
@@ -56,7 +57,7 @@ import static org.apache.paimon.io.DataFilePathFactory.CHANGELOG_FILE_PREFIX;
 import static org.apache.paimon.predicate.PredicateBuilder.containsFields;
 import static org.apache.paimon.predicate.PredicateBuilder.splitAnd;
 
-/** {@link FileStoreRead} implementation for {@link org.apache.paimon.file.KeyValueFileStore}. */
+/** {@link FileStoreRead} implementation for {@link KeyValueFileStore}. */
 public class KeyValueFileStoreRead implements FileStoreRead<KeyValue> {
 
     private final TableSchema tableSchema;
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java
index 07a0fd672..7011c74c0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java
@@ -18,15 +18,16 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.KeyValueFileStore;
 import org.apache.paimon.manifest.ManifestEntry;
 import org.apache.paimon.manifest.ManifestFile;
 import org.apache.paimon.manifest.ManifestList;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.stats.FieldStatsConverters;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.stats.FieldStatsConverters;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.SnapshotManager;
 
 import java.util.List;
 
@@ -34,7 +35,7 @@ import static org.apache.paimon.predicate.PredicateBuilder.and;
 import static org.apache.paimon.predicate.PredicateBuilder.pickTransformFieldMapping;
 import static org.apache.paimon.predicate.PredicateBuilder.splitAnd;
 
-/** {@link FileStoreScan} for {@link org.apache.paimon.file.KeyValueFileStore}. */
+/** {@link FileStoreScan} for {@link KeyValueFileStore}. */
 public class KeyValueFileStoreScan extends AbstractFileStoreScan {
 
     private final FieldStatsConverters fieldStatsConverters;
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreWrite.java
index 5a827c6ad..cc5baeea6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreWrite.java
@@ -20,14 +20,18 @@ package org.apache.paimon.operation;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.ChangelogProducer;
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.KeyValueFileStore;
 import org.apache.paimon.compact.CompactManager;
 import org.apache.paimon.compact.NoopCompactManager;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.format.FileFormatDiscover;
+import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.KeyValueFileReaderFactory;
 import org.apache.paimon.io.KeyValueFileWriterFactory;
+import org.apache.paimon.lookup.hash.HashLookupStoreFactory;
 import org.apache.paimon.mergetree.Levels;
 import org.apache.paimon.mergetree.LookupLevels;
 import org.apache.paimon.mergetree.MergeTreeWriter;
@@ -42,13 +46,10 @@ import org.apache.paimon.mergetree.compact.MergeTreeCompactRewriter;
 import org.apache.paimon.mergetree.compact.UniversalCompaction;
 import org.apache.paimon.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.utils.CommitIncrement;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.format.FileFormatDiscover;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.lookup.hash.HashLookupStoreFactory;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.CommitIncrement;
+import org.apache.paimon.utils.FileStorePathFactory;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -61,7 +62,7 @@ import java.util.function.Supplier;
 
 import static org.apache.paimon.io.DataFileMeta.getMaxSequenceNumber;
 
-/** {@link FileStoreWrite} for {@link org.apache.paimon.file.KeyValueFileStore}. */
+/** {@link FileStoreWrite} for {@link KeyValueFileStore}. */
 public class KeyValueFileStoreWrite extends MemoryFileStoreWrite<KeyValue> {
 
     private static final Logger LOG = LoggerFactory.getLogger(KeyValueFileStoreWrite.class);
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/MemoryFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/operation/MemoryFileStoreWrite.java
index b7b07129b..05a50c7f2 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/MemoryFileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/MemoryFileStoreWrite.java
@@ -21,12 +21,12 @@ package org.apache.paimon.operation;
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.io.cache.CacheManager;
 import org.apache.paimon.memory.HeapMemorySegmentPool;
 import org.apache.paimon.memory.MemoryOwner;
 import org.apache.paimon.memory.MemoryPoolFactory;
-import org.apache.paimon.file.utils.RecordWriter;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.io.cache.CacheManager;
+import org.apache.paimon.utils.RecordWriter;
+import org.apache.paimon.utils.SnapshotManager;
 
 import java.util.Iterator;
 import java.util.Map;
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/ReverseReader.java b/paimon-core/src/main/java/org/apache/paimon/operation/ReverseReader.java
index b821f79a3..39d301c43 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/ReverseReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/ReverseReader.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.operation;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/schema/SchemaEvolutionUtil.java b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaEvolutionUtil.java
index 79b26441c..69000f26b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/schema/SchemaEvolutionUtil.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaEvolutionUtil.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.schema;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.casting.CastExecutor;
 import org.apache.paimon.casting.CastExecutors;
 import org.apache.paimon.casting.CastFieldGetter;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.predicate.LeafPredicate;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateReplaceVisitor;
diff --git a/paimon-core/src/main/java/org/apache/paimon/schema/SchemaManager.java b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaManager.java
index a48ecc0f0..2135bed5e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/schema/SchemaManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaManager.java
@@ -21,6 +21,8 @@ package org.apache.paimon.schema;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.casting.CastExecutors;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.operation.Lock;
 import org.apache.paimon.schema.SchemaChange.AddColumn;
 import org.apache.paimon.schema.SchemaChange.DropColumn;
@@ -31,15 +33,13 @@ import org.apache.paimon.schema.SchemaChange.UpdateColumnComment;
 import org.apache.paimon.schema.SchemaChange.UpdateColumnNullability;
 import org.apache.paimon.schema.SchemaChange.UpdateColumnPosition;
 import org.apache.paimon.schema.SchemaChange.UpdateColumnType;
-import org.apache.paimon.file.utils.JsonSerdeUtil;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypeCasts;
 import org.apache.paimon.types.DataTypeVisitor;
 import org.apache.paimon.types.ReassignFieldId;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.JsonSerdeUtil;
 import org.apache.paimon.utils.Preconditions;
 
 import javax.annotation.Nullable;
@@ -58,7 +58,7 @@ import java.util.concurrent.atomic.AtomicInteger;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.utils.FileUtils.listVersionedFiles;
+import static org.apache.paimon.utils.FileUtils.listVersionedFiles;
 import static org.apache.paimon.utils.Preconditions.checkState;
 
 /** Schema Manager to manage schema versions. */
diff --git a/paimon-core/src/main/java/org/apache/paimon/schema/SchemaSerializer.java b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaSerializer.java
index 69409f7d6..8daac9105 100644
--- a/paimon-core/src/main/java/org/apache/paimon/schema/SchemaSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaSerializer.java
@@ -21,10 +21,10 @@ package org.apache.paimon.schema;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode;
 
-import org.apache.paimon.file.utils.JsonDeserializer;
-import org.apache.paimon.file.utils.JsonSerializer;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataTypeJsonParser;
+import org.apache.paimon.utils.JsonDeserializer;
+import org.apache.paimon.utils.JsonSerializer;
 import org.apache.paimon.utils.StringUtils;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/schema/SchemaValidation.java b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaValidation.java
index e8c29fae0..f0e46eaa9 100644
--- a/paimon-core/src/main/java/org/apache/paimon/schema/SchemaValidation.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaValidation.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.schema;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.DataField;
@@ -40,7 +40,7 @@ import static org.apache.paimon.CoreOptions.SCAN_SNAPSHOT_ID;
 import static org.apache.paimon.CoreOptions.SCAN_TIMESTAMP_MILLIS;
 import static org.apache.paimon.CoreOptions.SNAPSHOT_NUM_RETAINED_MAX;
 import static org.apache.paimon.CoreOptions.SNAPSHOT_NUM_RETAINED_MIN;
-import static org.apache.paimon.file.WriteMode.APPEND_ONLY;
+import static org.apache.paimon.WriteMode.APPEND_ONLY;
 import static org.apache.paimon.schema.SystemColumns.KEY_FIELD_PREFIX;
 import static org.apache.paimon.schema.SystemColumns.SYSTEM_FIELD_NAMES;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
diff --git a/paimon-core/src/main/java/org/apache/paimon/schema/TableSchema.java b/paimon-core/src/main/java/org/apache/paimon/schema/TableSchema.java
index bbfafe347..1ee97d971 100644
--- a/paimon-core/src/main/java/org/apache/paimon/schema/TableSchema.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/TableSchema.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.schema;
 
-import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.JsonSerdeUtil;
 import org.apache.paimon.utils.Preconditions;
 import org.apache.paimon.utils.StringUtils;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java b/paimon-core/src/main/java/org/apache/paimon/sort/AbstractBinaryExternalMerger.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/AbstractBinaryExternalMerger.java
index 6c746d745..8c5a7256f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/AbstractBinaryExternalMerger.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
-import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.compression.BlockCompressionFactory;
+import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.disk.ChannelReaderInputView;
 import org.apache.paimon.disk.ChannelWithMeta;
 import org.apache.paimon.disk.ChannelWriterOutputView;
 import org.apache.paimon.disk.FileChannelUtil;
 import org.apache.paimon.disk.FileIOChannel;
 import org.apache.paimon.disk.IOManager;
-import org.apache.paimon.file.utils.MutableObjectIterator;
+import org.apache.paimon.utils.MutableObjectIterator;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java b/paimon-core/src/main/java/org/apache/paimon/sort/BinaryExternalMerger.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/BinaryExternalMerger.java
index cd27cda20..75dab68c2 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/BinaryExternalMerger.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 import org.apache.paimon.codegen.RecordComparator;
+import org.apache.paimon.compression.BlockCompressionFactory;
 import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
-import org.apache.paimon.compression.BlockCompressionFactory;
 import org.apache.paimon.disk.ChannelReaderInputView;
 import org.apache.paimon.disk.ChannelReaderInputViewIterator;
 import org.apache.paimon.disk.IOManager;
-import org.apache.paimon.file.utils.MutableObjectIterator;
+import org.apache.paimon.utils.MutableObjectIterator;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/sort/BinaryExternalSortBuffer.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/BinaryExternalSortBuffer.java
index e82a1d34f..55df6205e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/BinaryExternalSortBuffer.java
@@ -16,22 +16,22 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.codegen.RecordComparator;
+import org.apache.paimon.compression.BlockCompressionFactory;
+import org.apache.paimon.compression.Lz4BlockCompressionFactory;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
-import org.apache.paimon.compression.BlockCompressionFactory;
-import org.apache.paimon.compression.Lz4BlockCompressionFactory;
 import org.apache.paimon.disk.ChannelWithMeta;
 import org.apache.paimon.disk.ChannelWriterOutputView;
 import org.apache.paimon.disk.FileChannelUtil;
 import org.apache.paimon.disk.FileIOChannel;
 import org.apache.paimon.disk.IOManager;
-import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.apache.paimon.options.MemorySize;
+import org.apache.paimon.utils.MutableObjectIterator;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/sort/BinaryInMemorySortBuffer.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/BinaryInMemorySortBuffer.java
index 351ec0f4a..3692157f8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/BinaryInMemorySortBuffer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 import org.apache.paimon.codegen.NormalizedKeyComputer;
 import org.apache.paimon.codegen.RecordComparator;
@@ -25,9 +25,9 @@ import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.SimpleCollectingOutputView;
 import org.apache.paimon.data.serializer.AbstractRowDataSerializer;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
-import org.apache.paimon.memory.MemorySegmentPool;
-import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentPool;
+import org.apache.paimon.utils.MutableObjectIterator;
 
 import java.io.EOFException;
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java b/paimon-core/src/main/java/org/apache/paimon/sort/BinaryIndexedSortable.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/BinaryIndexedSortable.java
index d9735d64c..202dc0dce 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/BinaryIndexedSortable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 import org.apache.paimon.codegen.NormalizedKeyComputer;
 import org.apache.paimon.codegen.RecordComparator;
@@ -25,8 +25,8 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.RandomAccessInputView;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
-import org.apache.paimon.memory.MemorySegmentPool;
 import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentPool;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryMergeIterator.java b/paimon-core/src/main/java/org/apache/paimon/sort/BinaryMergeIterator.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryMergeIterator.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/BinaryMergeIterator.java
index fb12633ca..26d722924 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryMergeIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/BinaryMergeIterator.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
-import org.apache.paimon.file.utils.MutableObjectIterator;
+import org.apache.paimon.utils.MutableObjectIterator;
 
 import java.io.IOException;
 import java.util.Comparator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/HeapSort.java b/paimon-core/src/main/java/org/apache/paimon/sort/HeapSort.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/HeapSort.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/HeapSort.java
index eb258e06e..7af0ea0b6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/HeapSort.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/HeapSort.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 /**
  * This file is based on source code from the Hadoop Project (http://hadoop.apache.org/), licensed
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/IndexedSortable.java b/paimon-core/src/main/java/org/apache/paimon/sort/IndexedSortable.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/IndexedSortable.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/IndexedSortable.java
index d4ad5c7f3..6c4775b50 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/IndexedSortable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/IndexedSortable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 /** Indexed sortable to provide compare and swap. */
 public interface IndexedSortable {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/IndexedSorter.java b/paimon-core/src/main/java/org/apache/paimon/sort/IndexedSorter.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/IndexedSorter.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/IndexedSorter.java
index 1705276d9..426f9d2dd 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/IndexedSorter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/IndexedSorter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 /** Indexed sorter to provide sort. */
 public interface IndexedSorter {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/PartialOrderPriorityQueue.java b/paimon-core/src/main/java/org/apache/paimon/sort/PartialOrderPriorityQueue.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/PartialOrderPriorityQueue.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/PartialOrderPriorityQueue.java
index fb68bf720..a244a6bd0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/PartialOrderPriorityQueue.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/PartialOrderPriorityQueue.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 import java.util.AbstractQueue;
 import java.util.Arrays;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/QuickSort.java b/paimon-core/src/main/java/org/apache/paimon/sort/QuickSort.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/QuickSort.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/QuickSort.java
index d0fa2efd6..13825e50d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/QuickSort.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/QuickSort.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 /** Quick sort {@link IndexedSorter}. */
 public final class QuickSort implements IndexedSorter {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/sort/SortBuffer.java
similarity index 93%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/SortBuffer.java
index 87ea498c2..723ec21c0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/SortBuffer.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.utils.MutableObjectIterator;
+import org.apache.paimon.utils.MutableObjectIterator;
 
 import java.io.IOException;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java b/paimon-core/src/main/java/org/apache/paimon/sort/SpillChannelManager.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java
rename to paimon-core/src/main/java/org/apache/paimon/sort/SpillChannelManager.java
index b90daf042..ee21427ca 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/SpillChannelManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/sort/SpillChannelManager.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 import org.apache.paimon.disk.FileIOChannel;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/stats/BinaryTableStats.java b/paimon-core/src/main/java/org/apache/paimon/stats/BinaryTableStats.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/stats/BinaryTableStats.java
rename to paimon-core/src/main/java/org/apache/paimon/stats/BinaryTableStats.java
index 39dcadd19..7923b0a4b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/stats/BinaryTableStats.java
+++ b/paimon-core/src/main/java/org/apache/paimon/stats/BinaryTableStats.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.stats;
+package org.apache.paimon.stats;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericArray;
@@ -30,9 +30,9 @@ import javax.annotation.Nullable;
 import java.util.Arrays;
 import java.util.Objects;
 
-import static org.apache.paimon.file.utils.SerializationUtils.deserializeBinaryRow;
-import static org.apache.paimon.file.utils.SerializationUtils.serializeBinaryRow;
 import static org.apache.paimon.utils.Preconditions.checkNotNull;
+import static org.apache.paimon.utils.SerializationUtils.deserializeBinaryRow;
+import static org.apache.paimon.utils.SerializationUtils.serializeBinaryRow;
 
 /** A serialized row bytes to cache {@link FieldStats}. */
 public class BinaryTableStats {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java b/paimon-core/src/main/java/org/apache/paimon/stats/FieldStatsArraySerializer.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/stats/FieldStatsArraySerializer.java
index 821748601..741f7ee33 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/stats/FieldStatsArraySerializer.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.stats;
+package org.apache.paimon.stats;
 
+import org.apache.paimon.casting.CastExecutor;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.casting.CastExecutor;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.BigIntType;
@@ -36,7 +36,7 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.IntStream;
 
-import static org.apache.paimon.file.utils.SerializationUtils.newBytesType;
+import static org.apache.paimon.utils.SerializationUtils.newBytesType;
 
 /** Serializer for array of {@link FieldStats}. */
 public class FieldStatsArraySerializer {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java b/paimon-core/src/main/java/org/apache/paimon/stats/FieldStatsConverters.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java
rename to paimon-core/src/main/java/org/apache/paimon/stats/FieldStatsConverters.java
index 1b2725c9a..b02772763 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsConverters.java
+++ b/paimon-core/src/main/java/org/apache/paimon/stats/FieldStatsConverters.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.stats;
+package org.apache.paimon.stats;
 
 import org.apache.paimon.casting.CastExecutor;
 import org.apache.paimon.schema.SchemaEvolutionUtil;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
index bb558aae0..3819924b8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
@@ -19,17 +19,16 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.FileStore;
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.file.FileStore;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.operation.FileStoreScan;
+import org.apache.paimon.options.Options;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.SchemaValidation;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.options.Options;
 import org.apache.paimon.table.sink.TableCommitImpl;
 import org.apache.paimon.table.source.BatchDataTableScan;
 import org.apache.paimon.table.source.BatchDataTableScanImpl;
@@ -38,6 +37,7 @@ import org.apache.paimon.table.source.StreamDataTableScan;
 import org.apache.paimon.table.source.StreamDataTableScanImpl;
 import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
 import org.apache.paimon.table.source.snapshot.SnapshotSplitReaderImpl;
+import org.apache.paimon.utils.SnapshotManager;
 
 import java.util.Map;
 import java.util.Objects;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
index 172d9a752..4f2e15373 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
@@ -18,19 +18,19 @@
 
 package org.apache.paimon.table;
 
+import org.apache.paimon.AppendOnlyFileStore;
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.AppendOnlyFileStore;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.operation.AppendOnlyFileStoreRead;
 import org.apache.paimon.operation.AppendOnlyFileStoreScan;
 import org.apache.paimon.operation.FileStoreScan;
 import org.apache.paimon.operation.ReverseReader;
 import org.apache.paimon.predicate.Predicate;
-import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.sink.SinkRecordConverter;
 import org.apache.paimon.table.sink.TableWriteImpl;
 import org.apache.paimon.table.source.AppendOnlySplitGenerator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
index 766373086..993ef5ac0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
@@ -19,23 +19,23 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.KeyValueFileStore;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.KeyValueFileStore;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.mergetree.compact.ValueCountMergeFunction;
 import org.apache.paimon.operation.FileStoreScan;
 import org.apache.paimon.operation.KeyValueFileStoreScan;
 import org.apache.paimon.operation.ReverseReader;
 import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.stats.BinaryTableStats;
 import org.apache.paimon.table.sink.SinkRecordConverter;
 import org.apache.paimon.table.sink.TableWriteImpl;
 import org.apache.paimon.table.source.InnerTableRead;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
index 283e566d4..e06cd4329 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
@@ -20,10 +20,12 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.ChangelogProducer;
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.KeyValueFileStore;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.KeyValueFileStore;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
 import org.apache.paimon.mergetree.compact.LookupMergeFunction;
 import org.apache.paimon.mergetree.compact.MergeFunctionFactory;
@@ -31,13 +33,11 @@ import org.apache.paimon.mergetree.compact.PartialUpdateMergeFunction;
 import org.apache.paimon.mergetree.compact.aggregate.AggregateMergeFunction;
 import org.apache.paimon.operation.FileStoreScan;
 import org.apache.paimon.operation.KeyValueFileStoreScan;
+import org.apache.paimon.options.Options;
 import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.options.Options;
-import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.sink.SequenceGenerator;
 import org.apache.paimon.table.sink.SinkRecordConverter;
 import org.apache.paimon.table.sink.TableWriteImpl;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/DataTable.java b/paimon-core/src/main/java/org/apache/paimon/table/DataTable.java
index 8f210638c..3e24ca03b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/DataTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/DataTable.java
@@ -19,12 +19,12 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.table.source.BatchDataTableScan;
 import org.apache.paimon.table.source.StreamDataTableScan;
 import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
+import org.apache.paimon.utils.SnapshotManager;
 
 /** A {@link Table} for data. */
 public interface DataTable extends InnerTable {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
index 6a2ab28dd..f217ef016 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
@@ -18,10 +18,11 @@
 
 package org.apache.paimon.table;
 
+import org.apache.paimon.FileStore;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.stats.BinaryTableStats;
 import org.apache.paimon.table.sink.TableCommitImpl;
 import org.apache.paimon.table.sink.TableWriteImpl;
 import org.apache.paimon.types.RowType;
@@ -30,8 +31,8 @@ import java.util.List;
 import java.util.Map;
 
 /**
- * An abstraction layer above {@link org.apache.paimon.file.FileStore} to provide reading and
- * writing of {@link InternalRow}.
+ * An abstraction layer above {@link FileStore} to provide reading and writing of {@link
+ * InternalRow}.
  */
 public interface FileStoreTable extends DataTable, SupportsPartition {
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
index bfffdaa66..886a4fcca 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
@@ -21,12 +21,12 @@ package org.apache.paimon.table;
 import org.apache.flink.table.store.catalog.CatalogContext;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.schema.TableSchema;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 
 import java.io.IOException;
 import java.io.UncheckedIOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
index 48c3e92c4..ee45f121a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
@@ -20,17 +20,17 @@ package org.apache.paimon.table.sink;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.io.CompactIncrement;
-import org.apache.paimon.io.NewFilesIncrement;
 import org.apache.paimon.io.DataInputViewStreamWrapper;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
+import org.apache.paimon.io.NewFilesIncrement;
 
 import java.io.IOException;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
 import java.util.Objects;
 
-import static org.apache.paimon.file.utils.SerializationUtils.deserializedBytes;
-import static org.apache.paimon.file.utils.SerializationUtils.serializeBytes;
+import static org.apache.paimon.utils.SerializationUtils.deserializedBytes;
+import static org.apache.paimon.utils.SerializationUtils.serializeBytes;
 
 /** File committable for sink. */
 public class CommitMessageImpl implements CommitMessage {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
index 5ec938386..38f993a72 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
@@ -21,19 +21,19 @@ package org.apache.paimon.table.sink;
 import org.apache.paimon.data.serializer.VersionedSerializer;
 import org.apache.paimon.io.CompactIncrement;
 import org.apache.paimon.io.DataFileMetaSerializer;
-import org.apache.paimon.io.NewFilesIncrement;
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
+import org.apache.paimon.io.NewFilesIncrement;
 
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 
-import static org.apache.paimon.file.utils.SerializationUtils.deserializeBinaryRow;
-import static org.apache.paimon.file.utils.SerializationUtils.serializeBinaryRow;
+import static org.apache.paimon.utils.SerializationUtils.deserializeBinaryRow;
+import static org.apache.paimon.utils.SerializationUtils.serializeBinaryRow;
 
 /** {@link VersionedSerializer} for {@link CommitMessage}. */
 public class CommitMessageSerializer implements VersionedSerializer<CommitMessage> {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
index 34489edbf..338f1308c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
@@ -18,13 +18,14 @@
 
 package org.apache.paimon.table.sink;
 
+import org.apache.paimon.FileStore;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.disk.IOManager;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.operation.AbstractFileStoreWrite;
 import org.apache.paimon.operation.FileStoreWrite;
-import org.apache.paimon.file.utils.Restorable;
+import org.apache.paimon.utils.Restorable;
 
 import java.util.List;
 
@@ -33,7 +34,7 @@ import static org.apache.paimon.utils.Preconditions.checkState;
 /**
  * {@link TableWrite} implementation.
  *
- * @param <T> type of record to write into {@link org.apache.paimon.file.FileStore}.
+ * @param <T> type of record to write into {@link FileStore}.
  */
 public class TableWriteImpl<T>
         implements InnerTableWrite, Restorable<List<AbstractFileStoreWrite.State>> {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
index fc7f94ef3..2d180cb86 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
@@ -19,9 +19,9 @@
 package org.apache.paimon.table.source;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
 import org.apache.paimon.table.source.snapshot.StartingScanner;
+import org.apache.paimon.utils.SnapshotManager;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java b/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
index d7893015f..8cd768b30 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
@@ -21,11 +21,11 @@ package org.apache.paimon.table.source;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataFileMetaSerializer;
-import org.apache.paimon.file.utils.SerializationUtils;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataInputViewStreamWrapper;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
+import org.apache.paimon.utils.SerializationUtils;
 
 import java.io.IOException;
 import java.io.ObjectInputStream;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java b/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
index b839561a0..ec861d1ce 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.operation.KeyValueFileStoreRead;
 import org.apache.paimon.reader.RecordReader;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
index 86c1b5c74..a647d5fa0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
index 2d026c557..381642e7a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
@@ -19,8 +19,7 @@
 package org.apache.paimon.table.source;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.table.source.snapshot.BoundedWatermarkFollowUpScanner;
 import org.apache.paimon.table.source.snapshot.CompactedStartingScanner;
 import org.apache.paimon.table.source.snapshot.CompactionChangelogFollowUpScanner;
@@ -30,6 +29,7 @@ import org.apache.paimon.table.source.snapshot.FullStartingScanner;
 import org.apache.paimon.table.source.snapshot.InputChangelogFollowUpScanner;
 import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
 import org.apache.paimon.table.source.snapshot.StartingScanner;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
index 338d753c8..6b8ad64cc 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source;
 
 import org.apache.paimon.annotation.Experimental;
-import org.apache.paimon.file.utils.Restorable;
+import org.apache.paimon.utils.Restorable;
 
 /**
  * {@link TableScan} for streaming, supports {@link #checkpoint} and {@link #restore}.
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
index fd5d23272..adcf504a5 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
index 551e5c70c..1306d1a9e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
index 31b8554a4..3bee98fec 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.table.source.DataTableScan.DataFilePlan;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
index 200660679..566b9e02f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
@@ -20,8 +20,8 @@ package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.operation.ScanKind;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
index 96101fee7..2d8c59f60 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
 import org.slf4j.Logger;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
index 787b71999..c489fa965 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
 import org.slf4j.Logger;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
index 9a44458d3..a037e8a08 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
index 4a21074c8..8b6b88add 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.utils.SnapshotManager;
 
 import java.util.Collections;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
index bdd77e208..96149cb54 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
index 5c731df0a..3f6832eda 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
index 605b4ffb4..ff3c22829 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
 import org.slf4j.Logger;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
index b6f4cf476..8e7e99dda 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FollowUpScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.StreamDataTableScan;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
index c24ca1716..e56b51411 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
@@ -20,8 +20,8 @@ package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.operation.ScanKind;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
index c9a017e2d..9c5fb398e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
 import org.slf4j.Logger;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
index 58f84292d..814ff32e3 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source.snapshot;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.predicate.Predicate;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
index e563a6099..eac6893ca 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
@@ -19,10 +19,10 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.codegen.CodeGenUtils;
 import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.manifest.FileKind;
 import org.apache.paimon.operation.FileStoreScan;
@@ -30,10 +30,10 @@ import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.SplitGenerator;
 import org.apache.paimon.utils.Filter;
+import org.apache.paimon.utils.SnapshotManager;
 
 import java.util.ArrayList;
 import java.util.LinkedHashMap;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
index 6d250a023..39c73521e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StartingScanner.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.BatchDataTableScan;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.StreamDataTableScan;
+import org.apache.paimon.utils.SnapshotManager;
 
 /**
  * Helper class for the first planning of {@link BatchDataTableScan} and {@link
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
index 4fcfb529a..b84b3cbe3 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
@@ -20,8 +20,8 @@ package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.operation.ScanKind;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.utils.SnapshotManager;
 
 /**
  * {@link StartingScanner} for the {@link CoreOptions.StartupMode#FROM_SNAPSHOT} startup mode of a
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
index 3d0a9926c..3e12589e6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
@@ -20,8 +20,8 @@ package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.operation.ScanKind;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
index a704b8ec3..881ed8054 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
@@ -23,14 +23,13 @@ import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.predicate.LeafPredicate;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.predicate.PredicateReplaceVisitor;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.DataTable;
 import org.apache.paimon.table.FileStoreTable;
@@ -51,6 +50,7 @@ import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
 import org.apache.paimon.utils.Filter;
 import org.apache.paimon.utils.ProjectedRow;
+import org.apache.paimon.utils.SnapshotManager;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
index f6158af12..abf5c2c42 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
@@ -22,13 +22,11 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.JoinedRow;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataFileMetaSerializer;
 import org.apache.paimon.predicate.Predicate;
-import org.apache.paimon.file.utils.IteratorRecordReader;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.DataTable;
 import org.apache.paimon.table.FileStoreTable;
@@ -45,6 +43,8 @@ import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarBinaryType;
+import org.apache.paimon.utils.IteratorRecordReader;
+import org.apache.paimon.utils.SnapshotManager;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
index c74a4d13d..c3e9615f7 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
@@ -23,18 +23,16 @@ import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.LazyGenericRow;
+import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.file.stats.FieldStatsArraySerializer;
-import org.apache.paimon.file.stats.FieldStatsConverters;
-import org.apache.paimon.file.utils.IteratorRecordReader;
-import org.apache.paimon.file.utils.SerializationUtils;
-import org.apache.paimon.format.FieldStats;
-import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.stats.BinaryTableStats;
+import org.apache.paimon.stats.FieldStatsArraySerializer;
+import org.apache.paimon.stats.FieldStatsConverters;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.ReadonlyTable;
 import org.apache.paimon.table.Table;
@@ -49,8 +47,10 @@ import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.IteratorRecordReader;
 import org.apache.paimon.utils.ProjectedRow;
 import org.apache.paimon.utils.RowDataToObjectArrayConverter;
+import org.apache.paimon.utils.SerializationUtils;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
index 495f466dd..c82b8c8c6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
@@ -23,12 +23,11 @@ import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.predicate.Predicate;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.utils.IteratorRecordReader;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.table.ReadonlyTable;
 import org.apache.paimon.table.Table;
 import org.apache.paimon.table.source.InnerTableRead;
@@ -37,6 +36,7 @@ import org.apache.paimon.table.source.ReadOnceTableScan;
 import org.apache.paimon.table.source.Split;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.IteratorRecordReader;
 import org.apache.paimon.utils.ProjectedRow;
 
 import java.io.IOException;
@@ -47,7 +47,7 @@ import java.util.Map;
 import java.util.Objects;
 
 import static org.apache.paimon.catalog.Catalog.SYSTEM_TABLE_SPLITTER;
-import static org.apache.paimon.file.utils.SerializationUtils.newStringType;
+import static org.apache.paimon.utils.SerializationUtils.newStringType;
 
 /** A {@link Table} for showing options of table. */
 public class OptionsTable implements ReadonlyTable {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
index f26bc9299..ec529e661 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
@@ -23,15 +23,12 @@ import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.predicate.Predicate;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.IteratorRecordReader;
-import org.apache.paimon.file.utils.JsonSerdeUtil;
-import org.apache.paimon.file.utils.SerializationUtils;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.ReadonlyTable;
 import org.apache.paimon.table.Table;
 import org.apache.paimon.table.source.InnerTableRead;
@@ -42,7 +39,10 @@ import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.IteratorRecordReader;
+import org.apache.paimon.utils.JsonSerdeUtil;
 import org.apache.paimon.utils.ProjectedRow;
+import org.apache.paimon.utils.SerializationUtils;
 
 import java.io.IOException;
 import java.util.Arrays;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
index 424a760b0..210b6b238 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
@@ -20,17 +20,14 @@ package org.apache.paimon.table.system;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.predicate.Predicate;
-import org.apache.paimon.file.utils.IteratorRecordReader;
-import org.apache.paimon.file.utils.SerializationUtils;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.ReadonlyTable;
 import org.apache.paimon.table.Table;
@@ -42,7 +39,10 @@ import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.TimestampType;
+import org.apache.paimon.utils.IteratorRecordReader;
 import org.apache.paimon.utils.ProjectedRow;
+import org.apache.paimon.utils.SerializationUtils;
+import org.apache.paimon.utils.SnapshotManager;
 
 import java.io.IOException;
 import java.time.Instant;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java b/paimon-core/src/main/java/org/apache/paimon/utils/BulkFormatMapping.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/BulkFormatMapping.java
index 73114f7b9..3b6488c6c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/BulkFormatMapping.java
@@ -16,20 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.casting.CastFieldGetter;
+import org.apache.paimon.format.FileFormatDiscover;
+import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.schema.IndexCastMapping;
 import org.apache.paimon.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.schema.SchemaEvolutionUtil;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.format.FileFormatDiscover;
-import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
-import org.apache.paimon.utils.Projection;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java b/paimon-core/src/main/java/org/apache/paimon/utils/CommitIncrement.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/CommitIncrement.java
index 6f647c949..da94eec17 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/CommitIncrement.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/CommitIncrement.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.io.CompactIncrement;
 import org.apache.paimon.io.NewFilesIncrement;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/ExecutorThreadFactory.java b/paimon-core/src/main/java/org/apache/paimon/utils/ExecutorThreadFactory.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/ExecutorThreadFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/ExecutorThreadFactory.java
index d04395204..d4b2261ea 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/ExecutorThreadFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/ExecutorThreadFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/FatalExitExceptionHandler.java b/paimon-core/src/main/java/org/apache/paimon/utils/FatalExitExceptionHandler.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/FatalExitExceptionHandler.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/FatalExitExceptionHandler.java
index c84d0a48c..095d0819c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/FatalExitExceptionHandler.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/FatalExitExceptionHandler.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java b/paimon-core/src/main/java/org/apache/paimon/utils/FileStorePathFactory.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/FileStorePathFactory.java
index 32bff8b65..6482ac839 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/FileStorePathFactory.java
@@ -16,16 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.types.RowType;
-import org.apache.paimon.utils.Preconditions;
 
 import javax.annotation.concurrent.ThreadSafe;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java b/paimon-core/src/main/java/org/apache/paimon/utils/FileUtils.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/FileUtils.java
index 1e6a6c05f..3c12aa85f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/FileUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FormatReaderFactory;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/IteratorRecordReader.java b/paimon-core/src/main/java/org/apache/paimon/utils/IteratorRecordReader.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/IteratorRecordReader.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/IteratorRecordReader.java
index 795794c5b..20b95c9c6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/IteratorRecordReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/IteratorRecordReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.reader.RecordReader;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonDeserializer.java b/paimon-core/src/main/java/org/apache/paimon/utils/JsonDeserializer.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/JsonDeserializer.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/JsonDeserializer.java
index 50a679120..365be6467 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonDeserializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/JsonDeserializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java b/paimon-core/src/main/java/org/apache/paimon/utils/JsonSerdeUtil.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/JsonSerdeUtil.java
index 9c64554ed..d088ea060 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/JsonSerdeUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonParser;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerializer.java b/paimon-core/src/main/java/org/apache/paimon/utils/JsonSerializer.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/JsonSerializer.java
index 24de81007..f7112c693 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/JsonSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java b/paimon-core/src/main/java/org/apache/paimon/utils/KeyComparatorSupplier.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/KeyComparatorSupplier.java
index aa4ddfdbb..88589cc81 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/KeyComparatorSupplier.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.codegen.CodeGenUtils;
 import org.apache.paimon.codegen.GeneratedClass;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/MutableObjectIterator.java b/paimon-core/src/main/java/org/apache/paimon/utils/MutableObjectIterator.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/MutableObjectIterator.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/MutableObjectIterator.java
index 30de0f8fc..8aec5e1a8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/MutableObjectIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/MutableObjectIterator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import java.io.IOException;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java b/paimon-core/src/main/java/org/apache/paimon/utils/ObjectSerializer.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/ObjectSerializer.java
index c31f77c3a..77644ab74 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/ObjectSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java b/paimon-core/src/main/java/org/apache/paimon/utils/OffsetRow.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/OffsetRow.java
index 50085b7a2..4078e2b92 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/OffsetRow.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/PartitionPathUtils.java b/paimon-core/src/main/java/org/apache/paimon/utils/PartitionPathUtils.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/PartitionPathUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/PartitionPathUtils.java
index 0b99bbc43..113c15daa 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/PartitionPathUtils.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/PartitionPathUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.fs.Path;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java b/paimon-core/src/main/java/org/apache/paimon/utils/RecordWriter.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/RecordWriter.java
index f912e1b96..0c3b93a76 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/RecordWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/RecordWriter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.io.DataFileMeta;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/Restorable.java b/paimon-core/src/main/java/org/apache/paimon/utils/Restorable.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/Restorable.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/Restorable.java
index 349074315..4ca8b7637 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/Restorable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/Restorable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 /**
  * Operations implementing this interface can checkpoint and restore their states between different
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java b/paimon-core/src/main/java/org/apache/paimon/utils/RowDataPartitionComputer.java
similarity index 95%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/RowDataPartitionComputer.java
index 10aebfb52..33e49851e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/RowDataPartitionComputer.java
@@ -16,12 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.types.RowType;
-import org.apache.paimon.utils.RowDataUtils;
-import org.apache.paimon.utils.StringUtils;
 
 import java.util.Arrays;
 import java.util.LinkedHashMap;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/SerializableSupplier.java b/paimon-core/src/main/java/org/apache/paimon/utils/SerializableSupplier.java
similarity index 96%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/SerializableSupplier.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/SerializableSupplier.java
index 34bbde1b6..b482aa301 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/SerializableSupplier.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/SerializableSupplier.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import java.io.Serializable;
 import java.util.function.Supplier;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java b/paimon-core/src/main/java/org/apache/paimon/utils/SerializationUtils.java
similarity index 99%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/SerializationUtils.java
index 98c483337..f4b43c519 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/SerializationUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.io.DataInputView;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/SnapshotManager.java b/paimon-core/src/main/java/org/apache/paimon/utils/SnapshotManager.java
similarity index 97%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/SnapshotManager.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/SnapshotManager.java
index efd34894f..c0bf6a73f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/SnapshotManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/SnapshotManager.java
@@ -16,12 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-import org.apache.paimon.utils.Preconditions;
 
 import javax.annotation.Nullable;
 
@@ -32,7 +31,7 @@ import java.util.Optional;
 import java.util.concurrent.TimeUnit;
 import java.util.function.BinaryOperator;
 
-import static org.apache.paimon.file.utils.FileUtils.listVersionedFiles;
+import static org.apache.paimon.utils.FileUtils.listVersionedFiles;
 
 /** Manager for {@link Snapshot}, providing utility methods related to paths and snapshot hints. */
 public class SnapshotManager implements Serializable {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java b/paimon-core/src/main/java/org/apache/paimon/utils/VersionedObjectSerializer.java
similarity index 98%
rename from paimon-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java
rename to paimon-core/src/main/java/org/apache/paimon/utils/VersionedObjectSerializer.java
index 377b05bbf..30047afdf 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/VersionedObjectSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/FileFormatTest.java b/paimon-core/src/test/java/org/apache/paimon/FileFormatTest.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
rename to paimon-core/src/test/java/org/apache/paimon/FileFormatTest.java
index b611f4636..558f581e5 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/FileFormatTest.java
@@ -16,9 +16,8 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file;
+package org.apache.paimon;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FileFormat;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/KeyValueSerializerTest.java
similarity index 94%
rename from paimon-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/KeyValueSerializerTest.java
index 231a2a31e..6618edd5c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/KeyValueSerializerTest.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file;
+package org.apache.paimon;
 
 import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.file.utils.ObjectSerializer;
-import org.apache.paimon.file.utils.ObjectSerializerTestBase;
+import org.apache.paimon.utils.ObjectSerializer;
+import org.apache.paimon.utils.ObjectSerializerTestBase;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java b/paimon-core/src/test/java/org/apache/paimon/TestFileStore.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java
rename to paimon-core/src/test/java/org/apache/paimon/TestFileStore.java
index 8288c0649..ac08fd7ff 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java
+++ b/paimon-core/src/test/java/org/apache/paimon/TestFileStore.java
@@ -16,11 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file;
+package org.apache.paimon;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.manifest.ManifestCommittable;
 import org.apache.paimon.manifest.ManifestEntry;
@@ -36,21 +38,18 @@ import org.apache.paimon.operation.FileStoreExpireImpl;
 import org.apache.paimon.operation.FileStoreRead;
 import org.apache.paimon.operation.FileStoreScan;
 import org.apache.paimon.operation.ScanKind;
-import org.apache.paimon.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.utils.CommitIncrement;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.file.utils.RecordWriter;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.FileIOFinder;
-import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.CommitIncrement;
+import org.apache.paimon.utils.FileStorePathFactory;
+import org.apache.paimon.utils.RecordWriter;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java b/paimon-core/src/test/java/org/apache/paimon/TestKeyValueGenerator.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
rename to paimon-core/src/test/java/org/apache/paimon/TestKeyValueGenerator.java
index f97cc9590..eb5590679 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/TestKeyValueGenerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file;
+package org.apache.paimon;
 
 import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.BinaryRow;
@@ -25,10 +25,10 @@ import org.apache.paimon.data.GenericArray;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.fs.Path;
 import org.apache.paimon.table.SchemaEvolutionTableTestBase;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.BigIntType;
@@ -50,9 +50,9 @@ import java.util.Map;
 import java.util.Random;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.TestKeyValueGenerator.GeneratorMode.MULTI_PARTITIONED;
-import static org.apache.paimon.file.TestKeyValueGenerator.GeneratorMode.NON_PARTITIONED;
-import static org.apache.paimon.file.TestKeyValueGenerator.GeneratorMode.SINGLE_PARTITIONED;
+import static org.apache.paimon.TestKeyValueGenerator.GeneratorMode.MULTI_PARTITIONED;
+import static org.apache.paimon.TestKeyValueGenerator.GeneratorMode.NON_PARTITIONED;
+import static org.apache.paimon.TestKeyValueGenerator.GeneratorMode.SINGLE_PARTITIONED;
 
 /** Random {@link KeyValue} generator. */
 public class TestKeyValueGenerator {
diff --git a/paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyCompactManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyCompactManagerTest.java
index 4f9753749..a61ffb2af 100644
--- a/paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyCompactManagerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyCompactManagerTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.append;
 
-import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.io.DataFileMeta;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyWriterTest.java b/paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyWriterTest.java
index 5f65670e4..7012a435e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyWriterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/append/AppendOnlyWriterTest.java
@@ -24,22 +24,22 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.io.DataFileMeta;
-import org.apache.paimon.io.DataFilePathFactory;
-import org.apache.paimon.file.stats.FieldStatsArraySerializer;
-import org.apache.paimon.file.utils.CommitIncrement;
-import org.apache.paimon.file.utils.ExecutorThreadFactory;
-import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.stats.FieldStatsArraySerializer;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
+import org.apache.paimon.utils.CommitIncrement;
+import org.apache.paimon.utils.ExecutorThreadFactory;
 import org.apache.paimon.utils.Pair;
+import org.apache.paimon.utils.RecordWriter;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/append/IterativeCompactTaskTest.java b/paimon-core/src/test/java/org/apache/paimon/append/IterativeCompactTaskTest.java
index e896ea5c3..3d1aab8c7 100644
--- a/paimon-core/src/test/java/org/apache/paimon/append/IterativeCompactTaskTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/append/IterativeCompactTaskTest.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.append;
 
 import org.apache.paimon.compact.CompactResult;
-import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.io.DataFileMeta;
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java b/paimon-core/src/test/java/org/apache/paimon/format/FileFormatSuffixTest.java
similarity index 96%
rename from paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
rename to paimon-core/src/test/java/org/apache/paimon/format/FileFormatSuffixTest.java
index 0519a7b36..6c2e4b272 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/format/FileFormatSuffixTest.java
@@ -16,25 +16,24 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.format;
+package org.apache.paimon.format;
 
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.append.AppendOnlyCompactManager;
 import org.apache.paimon.append.AppendOnlyWriter;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.io.KeyValueFileReadWriteTest;
 import org.apache.paimon.io.KeyValueFileWriterFactory;
-import org.apache.paimon.file.utils.CommitIncrement;
-import org.apache.paimon.format.FileFormat;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
+import org.apache.paimon.utils.CommitIncrement;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java b/paimon-core/src/test/java/org/apache/paimon/format/FileStatsExtractingAvroFormat.java
similarity index 86%
rename from paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
rename to paimon-core/src/test/java/org/apache/paimon/format/FileStatsExtractingAvroFormat.java
index 3ddc2c5ab..6d219990c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
+++ b/paimon-core/src/test/java/org/apache/paimon/format/FileStatsExtractingAvroFormat.java
@@ -16,15 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.format;
+package org.apache.paimon.format;
 
-import org.apache.paimon.predicate.Predicate;
-import org.apache.paimon.file.stats.TestFileStatsExtractor;
-import org.apache.paimon.format.FileFormat;
-import org.apache.paimon.format.FileStatsExtractor;
-import org.apache.paimon.format.FormatReaderFactory;
-import org.apache.paimon.format.FormatWriterFactory;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.stats.TestFileStatsExtractor;
 import org.apache.paimon.types.RowType;
 
 import javax.annotation.Nullable;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java b/paimon-core/src/test/java/org/apache/paimon/format/FileStatsExtractingAvroFormatFactory.java
similarity index 90%
rename from paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java
rename to paimon-core/src/test/java/org/apache/paimon/format/FileStatsExtractingAvroFormatFactory.java
index 14787aef6..db9c3b0aa 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java
+++ b/paimon-core/src/test/java/org/apache/paimon/format/FileStatsExtractingAvroFormatFactory.java
@@ -16,10 +16,8 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.format;
+package org.apache.paimon.format;
 
-import org.apache.paimon.format.FileFormat;
-import org.apache.paimon.format.FileFormatFactory;
 import org.apache.paimon.options.Options;
 
 /** Factory to create {@link FileStatsExtractingAvroFormat}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java b/paimon-core/src/test/java/org/apache/paimon/format/FlushingFileFormat.java
similarity index 91%
rename from paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
rename to paimon-core/src/test/java/org/apache/paimon/format/FlushingFileFormat.java
index e0044d977..b63396cac 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
+++ b/paimon-core/src/test/java/org/apache/paimon/format/FlushingFileFormat.java
@@ -16,15 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.format;
+package org.apache.paimon.format;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.predicate.Predicate;
-import org.apache.paimon.format.FileFormat;
-import org.apache.paimon.format.FormatReaderFactory;
-import org.apache.paimon.format.FormatWriter;
-import org.apache.paimon.format.FormatWriterFactory;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.types.RowType;
 
 import javax.annotation.Nullable;
diff --git a/paimon-core/src/test/java/org/apache/paimon/io/DataFileMetaSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/io/DataFileMetaSerializerTest.java
index e5686d875..715a4ac51 100644
--- a/paimon-core/src/test/java/org/apache/paimon/io/DataFileMetaSerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/io/DataFileMetaSerializerTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.io;
 
-import org.apache.paimon.file.utils.ObjectSerializerTestBase;
+import org.apache.paimon.utils.ObjectSerializerTestBase;
 
 import java.util.Arrays;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/io/DataFileTestDataGenerator.java b/paimon-core/src/test/java/org/apache/paimon/io/DataFileTestDataGenerator.java
index 579335aa4..0765be376 100644
--- a/paimon-core/src/test/java/org/apache/paimon/io/DataFileTestDataGenerator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/io/DataFileTestDataGenerator.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.io;
 
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.TestKeyValueGenerator;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.TestKeyValueGenerator;
-import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.format.FieldStatsCollector;
+import org.apache.paimon.stats.FieldStatsArraySerializer;
 
 import java.util.ArrayList;
 import java.util.HashMap;
diff --git a/paimon-core/src/test/java/org/apache/paimon/io/DataFileTestUtils.java b/paimon-core/src/test/java/org/apache/paimon/io/DataFileTestUtils.java
index 57eb7a597..062c3384a 100644
--- a/paimon-core/src/test/java/org/apache/paimon/io/DataFileTestUtils.java
+++ b/paimon-core/src/test/java/org/apache/paimon/io/DataFileTestUtils.java
@@ -21,7 +21,7 @@ package org.apache.paimon.io;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.file.stats.StatsTestUtils;
+import org.apache.paimon.stats.StatsTestUtils;
 
 import java.util.Collections;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/io/KeyValueFileReadWriteTest.java b/paimon-core/src/test/java/org/apache/paimon/io/KeyValueFileReadWriteTest.java
index 8fffcb5bc..dfe1fc961 100644
--- a/paimon-core/src/test/java/org/apache/paimon/io/KeyValueFileReadWriteTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/io/KeyValueFileReadWriteTest.java
@@ -19,29 +19,29 @@
 package org.apache.paimon.io;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.KeyValueSerializerTest;
+import org.apache.paimon.TestKeyValueGenerator;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.KeyValueSerializerTest;
-import org.apache.paimon.file.TestKeyValueGenerator;
-import org.apache.paimon.file.format.FlushingFileFormat;
-import org.apache.paimon.file.stats.FieldStatsArraySerializer;
-import org.apache.paimon.file.stats.StatsTestUtils;
-import org.apache.paimon.file.utils.FailingFileIO;
-import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.format.FlushingFileFormat;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.stats.FieldStatsArraySerializer;
+import org.apache.paimon.stats.StatsTestUtils;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
 import org.apache.paimon.utils.CloseableIterator;
+import org.apache.paimon.utils.FailingFileIO;
+import org.apache.paimon.utils.FileStorePathFactory;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
@@ -53,7 +53,7 @@ import java.util.UUID;
 import java.util.concurrent.ThreadLocalRandom;
 import java.util.function.Function;
 
-import static org.apache.paimon.file.TestKeyValueGenerator.createTestSchemaManager;
+import static org.apache.paimon.TestKeyValueGenerator.createTestSchemaManager;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestCommittableSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestCommittableSerializerTest.java
index 1edf0b1f0..e78af68ad 100644
--- a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestCommittableSerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestCommittableSerializerTest.java
@@ -34,7 +34,7 @@ import java.util.concurrent.ThreadLocalRandom;
 import java.util.concurrent.atomic.AtomicInteger;
 
 import static org.apache.paimon.mergetree.compact.MergeTreeCompactManagerTest.row;
-import static org.apache.paimon.file.stats.StatsTestUtils.newTableStats;
+import static org.apache.paimon.stats.StatsTestUtils.newTableStats;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link ManifestCommittableSerializer}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestEntrySerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestEntrySerializerTest.java
index dbaf43e25..5609b9e21 100644
--- a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestEntrySerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestEntrySerializerTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.manifest;
 
-import org.apache.paimon.file.utils.ObjectSerializer;
-import org.apache.paimon.file.utils.ObjectSerializerTestBase;
+import org.apache.paimon.utils.ObjectSerializer;
+import org.apache.paimon.utils.ObjectSerializerTestBase;
 
 /** Tests for {@link ManifestEntrySerializerTest}. */
 public class ManifestEntrySerializerTest extends ObjectSerializerTestBase<ManifestEntry> {
diff --git a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaSerializerTest.java
index 7f7b8925d..cbcd5b62a 100644
--- a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaSerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaSerializerTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.manifest;
 
-import org.apache.paimon.file.utils.ObjectSerializer;
-import org.apache.paimon.file.utils.ObjectSerializerTestBase;
+import org.apache.paimon.utils.ObjectSerializer;
+import org.apache.paimon.utils.ObjectSerializerTestBase;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaTest.java
index ce66f5fbc..8f8dadc3b 100644
--- a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileMetaTest.java
@@ -22,19 +22,19 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.io.DataFileMeta;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.stats.StatsTestUtils;
-import org.apache.paimon.file.utils.FailingFileIO;
-import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.stats.StatsTestUtils;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FailingFileIO;
+import org.apache.paimon.utils.FileStorePathFactory;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileTest.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileTest.java
index d5b01e12d..85d9fdeb8 100644
--- a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestFileTest.java
@@ -19,16 +19,16 @@
 package org.apache.paimon.manifest;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.stats.StatsTestUtils;
-import org.apache.paimon.file.utils.FailingFileIO;
-import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.stats.StatsTestUtils;
+import org.apache.paimon.utils.FailingFileIO;
+import org.apache.paimon.utils.FileStorePathFactory;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.io.TempDir;
 
@@ -39,7 +39,7 @@ import java.util.UUID;
 import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.TestKeyValueGenerator.DEFAULT_PART_TYPE;
+import static org.apache.paimon.TestKeyValueGenerator.DEFAULT_PART_TYPE;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for {@link ManifestFile}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestListTest.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestListTest.java
index c32cff3c2..bfa11c5ad 100644
--- a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestListTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestListTest.java
@@ -19,14 +19,14 @@
 package org.apache.paimon.manifest;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.TestKeyValueGenerator;
-import org.apache.paimon.file.utils.FailingFileIO;
-import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.TestKeyValueGenerator;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.utils.FailingFileIO;
+import org.apache.paimon.utils.FileStorePathFactory;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestTestDataGenerator.java b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestTestDataGenerator.java
index 301d6603c..260fcfad5 100644
--- a/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestTestDataGenerator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/manifest/ManifestTestDataGenerator.java
@@ -18,12 +18,12 @@
 
 package org.apache.paimon.manifest;
 
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.TestKeyValueGenerator;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.TestKeyValueGenerator;
-import org.apache.paimon.io.DataFileTestDataGenerator;
-import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.format.FieldStatsCollector;
+import org.apache.paimon.io.DataFileTestDataGenerator;
+import org.apache.paimon.stats.FieldStatsArraySerializer;
 import org.apache.paimon.utils.Preconditions;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/test/java/org/apache/paimon/mergetree/LookupLevelsTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/LookupLevelsTest.java
index 4853a15e4..ee4088056 100644
--- a/paimon-core/src/test/java/org/apache/paimon/mergetree/LookupLevelsTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/LookupLevelsTest.java
@@ -18,29 +18,29 @@
 
 package org.apache.paimon.mergetree;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.format.FlushingFileFormat;
+import org.apache.paimon.format.FlushingFileFormat;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.KeyValueFileReaderFactory;
 import org.apache.paimon.io.KeyValueFileWriterFactory;
 import org.apache.paimon.io.RollingFileWriter;
-import org.apache.paimon.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.fs.FileIOFinder;
-import org.apache.paimon.fs.Path;
 import org.apache.paimon.io.cache.CacheManager;
 import org.apache.paimon.lookup.hash.HashLookupStoreFactory;
 import org.apache.paimon.options.MemorySize;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.SchemaEvolutionTableTestBase;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FileStorePathFactory;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
@@ -57,7 +57,7 @@ import java.util.Map;
 import java.util.UUID;
 
 import static org.apache.paimon.CoreOptions.TARGET_FILE_SIZE;
-import static org.apache.paimon.file.KeyValue.UNKNOWN_SEQUENCE;
+import static org.apache.paimon.KeyValue.UNKNOWN_SEQUENCE;
 import static org.apache.paimon.io.DataFileTestUtils.row;
 import static org.assertj.core.api.Assertions.assertThat;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/mergetree/MergeTreeTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/MergeTreeTest.java
index 03d546da7..d541791c0 100644
--- a/paimon-core/src/test/java/org/apache/paimon/mergetree/MergeTreeTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/MergeTreeTest.java
@@ -20,12 +20,16 @@ package org.apache.paimon.mergetree;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.ChangelogProducer;
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.compact.CompactResult;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.compact.CompactResult;
-import org.apache.paimon.file.format.FlushingFileFormat;
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FlushingFileFormat;
+import org.apache.paimon.fs.FileStatus;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.KeyValueFileReaderFactory;
 import org.apache.paimon.io.KeyValueFileWriterFactory;
@@ -37,25 +41,21 @@ import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
 import org.apache.paimon.mergetree.compact.IntervalPartition;
 import org.apache.paimon.mergetree.compact.MergeTreeCompactManager;
 import org.apache.paimon.mergetree.compact.UniversalCompaction;
-import org.apache.paimon.schema.KeyValueFieldsExtractor;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.CommitIncrement;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.file.utils.RecordWriter;
-import org.apache.paimon.format.FileFormat;
-import org.apache.paimon.fs.FileStatus;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.schema.KeyValueFieldsExtractor;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.SchemaEvolutionTableTestBase;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.CommitIncrement;
+import org.apache.paimon.utils.FileStorePathFactory;
+import org.apache.paimon.utils.RecordWriter;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/paimon-core/src/test/java/org/apache/paimon/mergetree/SortBufferWriteBufferTestBase.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/SortBufferWriteBufferTestBase.java
index 4ff7c1aec..6dce21239 100644
--- a/paimon-core/src/test/java/org/apache/paimon/mergetree/SortBufferWriteBufferTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/SortBufferWriteBufferTestBase.java
@@ -18,20 +18,20 @@
 
 package org.apache.paimon.mergetree;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.codegen.RecordComparator;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.memory.HeapMemorySegmentPool;
 import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
 import org.apache.paimon.mergetree.compact.MergeFunction;
 import org.apache.paimon.mergetree.compact.MergeFunctionTestUtils;
 import org.apache.paimon.mergetree.compact.ValueCountMergeFunction;
-import org.apache.paimon.file.sort.BinaryInMemorySortBuffer;
-import org.apache.paimon.file.utils.ReusingKeyValue;
-import org.apache.paimon.file.utils.ReusingTestData;
+import org.apache.paimon.sort.BinaryInMemorySortBuffer;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.ReusingKeyValue;
+import org.apache.paimon.utils.ReusingTestData;
 import org.junit.jupiter.api.Test;
 
 import java.io.EOFException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/CombiningRecordReaderTestBase.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/CombiningRecordReaderTestBase.java
index 62a345259..44ac2b087 100644
--- a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/CombiningRecordReaderTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/CombiningRecordReaderTestBase.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.mergetree.compact;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.codegen.RecordComparator;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.utils.ReusingTestData;
-import org.apache.paimon.file.utils.TestReusingRecordReader;
 import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.utils.ReusingTestData;
+import org.apache.paimon.utils.TestReusingRecordReader;
 import org.junit.jupiter.api.RepeatedTest;
 
 import java.io.IOException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ConcatRecordReaderTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ConcatRecordReaderTest.java
index e04dcdb75..573334cef 100644
--- a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ConcatRecordReaderTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ConcatRecordReaderTest.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.utils.ReusingTestData;
-import org.apache.paimon.file.utils.TestReusingRecordReader;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.utils.ReusingTestData;
+import org.apache.paimon.utils.TestReusingRecordReader;
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
index 88a1975ed..cae850c05 100644
--- a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.types.RowKind;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/IntervalPartitionTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/IntervalPartitionTest.java
index 1065e77b9..750b770e6 100644
--- a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/IntervalPartitionTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/IntervalPartitionTest.java
@@ -24,7 +24,7 @@ import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.mergetree.SortedRun;
-import org.apache.paimon.file.stats.StatsTestUtils;
+import org.apache.paimon.stats.StatsTestUtils;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.Test;
 
@@ -40,7 +40,7 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.stats.StatsTestUtils.newTableStats;
+import static org.apache.paimon.stats.StatsTestUtils.newTableStats;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
index 7e3fb6b2d..e4187a5e3 100644
--- a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.mergetree.compact;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.InternalRow.FieldGetter;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.mergetree.compact.aggregate.AggregateMergeFunction;
 import org.apache.paimon.mergetree.compact.aggregate.FieldAggregator;
 import org.apache.paimon.mergetree.compact.aggregate.FieldSumAgg;
diff --git a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeFunctionTestUtils.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeFunctionTestUtils.java
index d1a898461..813f16ee3 100644
--- a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeFunctionTestUtils.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeFunctionTestUtils.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.utils.ReusingTestData;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.Preconditions;
+import org.apache.paimon.utils.ReusingTestData;
 
 import java.util.ArrayList;
 import java.util.Collections;
diff --git a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManagerTest.java
index 12c445060..f51cf3c75 100644
--- a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManagerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/MergeTreeCompactManagerTest.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.compact.CompactResult;
 import org.apache.paimon.compact.CompactUnit;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataFileTestUtils;
 import org.apache.paimon.mergetree.Levels;
diff --git a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
index 6add9da8a..e1c7f8c7e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.mergetree.compact;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/SortMergeReaderTestBase.java b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/SortMergeReaderTestBase.java
index d5971d7d9..5c6557381 100644
--- a/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/SortMergeReaderTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/mergetree/compact/SortMergeReaderTestBase.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.mergetree.compact;
 
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.utils.ReusingTestData;
-import org.apache.paimon.file.utils.TestReusingRecordReader;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.utils.ReusingTestData;
+import org.apache.paimon.utils.TestReusingRecordReader;
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/operation/CleanedFileStoreExpireTest.java b/paimon-core/src/test/java/org/apache/paimon/operation/CleanedFileStoreExpireTest.java
index 22426ce4b..cd46876e9 100644
--- a/paimon-core/src/test/java/org/apache/paimon/operation/CleanedFileStoreExpireTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/CleanedFileStoreExpireTest.java
@@ -18,15 +18,15 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.manifest.FileKind;
 import org.apache.paimon.manifest.ManifestEntry;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/operation/FileStoreCommitTest.java b/paimon-core/src/test/java/org/apache/paimon/operation/FileStoreCommitTest.java
index 413d3404a..9396c22ed 100644
--- a/paimon-core/src/test/java/org/apache/paimon/operation/FileStoreCommitTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/FileStoreCommitTest.java
@@ -19,22 +19,22 @@
 package org.apache.paimon.operation;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.Snapshot;
+import org.apache.paimon.TestFileStore;
+import org.apache.paimon.TestKeyValueGenerator;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.TestFileStore;
-import org.apache.paimon.file.TestKeyValueGenerator;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.manifest.ManifestCommittable;
 import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.SchemaUtils;
-import org.apache.paimon.file.utils.FailingFileIO;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.file.utils.TraceableFileIO;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.FailingFileIO;
+import org.apache.paimon.utils.SnapshotManager;
+import org.apache.paimon.utils.TraceableFileIO;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/operation/FileStoreExpireTestBase.java b/paimon-core/src/test/java/org/apache/paimon/operation/FileStoreExpireTestBase.java
index af94ab019..06ca816ae 100644
--- a/paimon-core/src/test/java/org/apache/paimon/operation/FileStoreExpireTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/FileStoreExpireTestBase.java
@@ -19,18 +19,18 @@
 package org.apache.paimon.operation;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.Snapshot;
+import org.apache.paimon.TestFileStore;
+import org.apache.paimon.TestKeyValueGenerator;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.TestFileStore;
-import org.apache.paimon.file.TestKeyValueGenerator;
-import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreReadTest.java b/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreReadTest.java
index 906b716e9..5621b6abc 100644
--- a/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreReadTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreReadTest.java
@@ -18,24 +18,24 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.TestFileStore;
+import org.apache.paimon.TestKeyValueGenerator;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.TestFileStore;
-import org.apache.paimon.file.TestKeyValueGenerator;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.manifest.ManifestEntry;
 import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
 import org.apache.paimon.mergetree.compact.MergeFunctionFactory;
 import org.apache.paimon.mergetree.compact.ValueCountMergeFunction;
+import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.reader.RecordReaderIterator;
 import org.apache.paimon.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.fs.FileIOFinder;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.reader.RecordReader;
-import org.apache.paimon.reader.RecordReaderIterator;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
diff --git a/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreScanTest.java b/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreScanTest.java
index 4c3cd9102..f87ed8714 100644
--- a/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreScanTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreScanTest.java
@@ -18,22 +18,22 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.Snapshot;
+import org.apache.paimon.TestFileStore;
+import org.apache.paimon.TestKeyValueGenerator;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.TestFileStore;
-import org.apache.paimon.file.TestKeyValueGenerator;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.manifest.ManifestFileMeta;
 import org.apache.paimon.manifest.ManifestList;
 import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/operation/PartitionExpireTest.java b/paimon-core/src/test/java/org/apache/paimon/operation/PartitionExpireTest.java
index 0d0ed78ec..ee1389c31 100644
--- a/paimon-core/src/test/java/org/apache/paimon/operation/PartitionExpireTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/PartitionExpireTest.java
@@ -21,10 +21,10 @@ package org.apache.paimon.operation;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.table.AbstractFileStoreTable;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
diff --git a/paimon-core/src/test/java/org/apache/paimon/operation/TestCommitThread.java b/paimon-core/src/test/java/org/apache/paimon/operation/TestCommitThread.java
index 501f322a3..592fbc703 100644
--- a/paimon-core/src/test/java/org/apache/paimon/operation/TestCommitThread.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/TestCommitThread.java
@@ -18,16 +18,16 @@
 
 package org.apache.paimon.operation;
 
+import org.apache.paimon.KeyValue;
+import org.apache.paimon.TestFileStore;
+import org.apache.paimon.TestKeyValueGenerator;
 import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.TestFileStore;
-import org.apache.paimon.file.TestKeyValueGenerator;
 import org.apache.paimon.manifest.ManifestCommittable;
 import org.apache.paimon.memory.HeapMemorySegmentPool;
 import org.apache.paimon.mergetree.MergeTreeWriter;
-import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.CommitIncrement;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -43,10 +43,10 @@ import java.util.UUID;
 import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.file.TestFileStore.PAGE_SIZE;
-import static org.apache.paimon.file.TestFileStore.WRITE_BUFFER_SIZE;
-import static org.apache.paimon.file.TestKeyValueGenerator.GeneratorMode.MULTI_PARTITIONED;
-import static org.apache.paimon.file.utils.FailingFileIO.retryArtificialException;
+import static org.apache.paimon.TestFileStore.PAGE_SIZE;
+import static org.apache.paimon.TestFileStore.WRITE_BUFFER_SIZE;
+import static org.apache.paimon.TestKeyValueGenerator.GeneratorMode.MULTI_PARTITIONED;
+import static org.apache.paimon.utils.FailingFileIO.retryArtificialException;
 
 /** Testing {@link Thread}s to perform concurrent commits. */
 public class TestCommitThread extends Thread {
diff --git a/paimon-core/src/test/java/org/apache/paimon/operation/UncleanedFileStoreExpireTest.java b/paimon-core/src/test/java/org/apache/paimon/operation/UncleanedFileStoreExpireTest.java
index ea8755051..61302ef8c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/operation/UncleanedFileStoreExpireTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/operation/UncleanedFileStoreExpireTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.operation;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.fs.Path;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/schema/DataTypeJsonParserTest.java b/paimon-core/src/test/java/org/apache/paimon/schema/DataTypeJsonParserTest.java
index 1b0ecaca9..0e1202680 100644
--- a/paimon-core/src/test/java/org/apache/paimon/schema/DataTypeJsonParserTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/schema/DataTypeJsonParserTest.java
@@ -18,7 +18,6 @@
 
 package org.apache.paimon.schema;
 
-import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.BinaryType;
@@ -42,6 +41,7 @@ import org.apache.paimon.types.TimestampType;
 import org.apache.paimon.types.TinyIntType;
 import org.apache.paimon.types.VarBinaryType;
 import org.apache.paimon.types.VarCharType;
+import org.apache.paimon.utils.JsonSerdeUtil;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.MethodSource;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/schema/SchemaManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/schema/SchemaManagerTest.java
index a264bcebd..56569988a 100644
--- a/paimon-core/src/test/java/org/apache/paimon/schema/SchemaManagerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/schema/SchemaManagerTest.java
@@ -19,8 +19,7 @@
 package org.apache.paimon.schema;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
-import org.apache.paimon.file.utils.FailingFileIO;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
@@ -31,6 +30,7 @@ import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.MapType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
+import org.apache.paimon.utils.FailingFileIO;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
@@ -51,7 +51,7 @@ import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
-import static org.apache.paimon.file.utils.FailingFileIO.retryArtificialException;
+import static org.apache.paimon.utils.FailingFileIO.retryArtificialException;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/schema/TableSchemaSerializationTest.java b/paimon-core/src/test/java/org/apache/paimon/schema/TableSchemaSerializationTest.java
index 9b66536a0..8e38f7efc 100644
--- a/paimon-core/src/test/java/org/apache/paimon/schema/TableSchemaSerializationTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/schema/TableSchemaSerializationTest.java
@@ -18,12 +18,12 @@
 
 package org.apache.paimon.schema;
 
-import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.MapType;
 import org.apache.paimon.types.MultisetType;
+import org.apache.paimon.utils.JsonSerdeUtil;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java b/paimon-core/src/test/java/org/apache/paimon/sort/BinaryExternalSortBufferTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
rename to paimon-core/src/test/java/org/apache/paimon/sort/BinaryExternalSortBufferTest.java
index 005865a23..e3c53f2cb 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/sort/BinaryExternalSortBufferTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
@@ -26,7 +26,7 @@ import org.apache.paimon.data.serializer.BinaryRowSerializer;
 import org.apache.paimon.disk.IOManager;
 import org.apache.paimon.memory.HeapMemorySegmentPool;
 import org.apache.paimon.memory.MemorySegmentPool;
-import org.apache.paimon.file.utils.MutableObjectIterator;
+import org.apache.paimon.utils.MutableObjectIterator;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java b/paimon-core/src/test/java/org/apache/paimon/sort/IntNormalizedKeyComputer.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
rename to paimon-core/src/test/java/org/apache/paimon/sort/IntNormalizedKeyComputer.java
index 406f9f545..8bc17bde2 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
+++ b/paimon-core/src/test/java/org/apache/paimon/sort/IntNormalizedKeyComputer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 import org.apache.paimon.codegen.NormalizedKeyComputer;
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java b/paimon-core/src/test/java/org/apache/paimon/sort/IntRecordComparator.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java
rename to paimon-core/src/test/java/org/apache/paimon/sort/IntRecordComparator.java
index 91d8fcbb2..7fb49f50b 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/sort/IntRecordComparator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/sort/IntRecordComparator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.sort;
+package org.apache.paimon.sort;
 
 import org.apache.paimon.codegen.RecordComparator;
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java b/paimon-core/src/test/java/org/apache/paimon/stats/BinaryTableStatsTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java
rename to paimon-core/src/test/java/org/apache/paimon/stats/BinaryTableStatsTest.java
index 37cd59d7e..0613c4072 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/stats/BinaryTableStatsTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.stats;
+package org.apache.paimon.stats;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/stats/FieldStatsArraySerializerTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/stats/FieldStatsArraySerializerTest.java
index 6bdf2ebfe..c56796b24 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/stats/FieldStatsArraySerializerTest.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.stats;
+package org.apache.paimon.stats;
 
-import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.casting.CastExecutor;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.schema.SchemaEvolutionUtil;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java b/paimon-core/src/test/java/org/apache/paimon/stats/FieldStatsCollectorTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java
rename to paimon-core/src/test/java/org/apache/paimon/stats/FieldStatsCollectorTest.java
index 50349ba37..3e7d8a4be 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/stats/FieldStatsCollectorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.stats;
+package org.apache.paimon.stats;
 
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericArray;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java b/paimon-core/src/test/java/org/apache/paimon/stats/StatsTestUtils.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java
rename to paimon-core/src/test/java/org/apache/paimon/stats/StatsTestUtils.java
index b12eade03..d3ccceb56 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java
+++ b/paimon-core/src/test/java/org/apache/paimon/stats/StatsTestUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.stats;
+package org.apache.paimon.stats;
 
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java b/paimon-core/src/test/java/org/apache/paimon/stats/TestFileStatsExtractor.java
similarity index 95%
rename from paimon-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java
rename to paimon-core/src/test/java/org/apache/paimon/stats/TestFileStatsExtractor.java
index 129bac309..c77a30610 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java
+++ b/paimon-core/src/test/java/org/apache/paimon/stats/TestFileStatsExtractor.java
@@ -16,11 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.stats;
+package org.apache.paimon.stats;
 
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.utils.FileUtils;
-import org.apache.paimon.file.utils.ObjectSerializer;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FieldStatsCollector;
 import org.apache.paimon.format.FileFormat;
@@ -29,6 +27,8 @@ import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FileUtils;
+import org.apache.paimon.utils.ObjectSerializer;
 
 import java.io.IOException;
 import java.util.List;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
index 8a98fd042..93854e766 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileDataTableTest.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.table;
 
+import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.fs.FileIOFinder;
 
 import java.util.Map;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
index c983d2445..06812b09e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
@@ -19,19 +19,19 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.options.Options;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.SchemaUtils;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.paimon.options.Options;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataSplit;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
index 6a8d5729e..ce02e8788 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
index 92e82246a..50ef145cc 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.stats.BinaryTableStats;
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Map;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
index 581f78881..e3ca22659 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.stats.BinaryTableStats;
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Map;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
index 0797bb374..fb193d0a6 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
index fb4b02c48..3b3c96331 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.stats.BinaryTableStats;
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Collections;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
index 80a5985e6..5070e5d29 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
index 0f87fd81f..157843d0b 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.stats.BinaryTableStats;
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Collections;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
index 42769bb89..7c48a2c6b 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
@@ -19,18 +19,18 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.WriteMode;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.options.Options;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.SchemaUtils;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.paimon.options.Options;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.Split;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
index 8a14a491c..7f0870fe5 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.schema.SchemaManager;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
index a2254633f..e8007c80e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.operation.ScanKind;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.schema.SchemaManager;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
index c9f2f1f40..ff3e2156c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
@@ -19,13 +19,13 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.stats.BinaryTableStats;
 import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
index 527f482f5..51cfbd068 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
@@ -20,19 +20,19 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.ChangelogProducer;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.operation.ScanKind;
+import org.apache.paimon.options.Options;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.SchemaUtils;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.paimon.options.Options;
 import org.apache.paimon.table.sink.BatchTableCommit;
 import org.apache.paimon.table.sink.BatchTableWrite;
 import org.apache.paimon.table.sink.BatchWriteBuilder;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
index 1f8296d69..2b22bdd00 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
@@ -19,15 +19,15 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.stats.BinaryTableStats;
 import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
index cee712fed..f448f8b0c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
@@ -21,11 +21,11 @@ package org.apache.paimon.table;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
+import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.stats.BinaryTableStats;
 import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
index 9b61f0899..a1b052775 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.table;
 
+import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.stats.BinaryTableStats;
 import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
index d86086df4..271ede502 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.table;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.BinaryString;
@@ -25,20 +26,17 @@ import org.apache.paimon.data.GenericMap;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.JoinedRow;
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.fs.FileIOFinder;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.mergetree.compact.ConcatRecordReader;
 import org.apache.paimon.mergetree.compact.ConcatRecordReader.ReaderSupplier;
-import org.apache.paimon.predicate.PredicateBuilder;
-import org.apache.paimon.schema.SchemaChange;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.file.utils.TraceableFileIO;
-import org.apache.paimon.fs.FileIOFinder;
-import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.schema.SchemaChange;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 import org.apache.paimon.table.sink.InnerTableCommit;
@@ -51,6 +49,8 @@ import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.SnapshotManager;
+import org.apache.paimon.utils.TraceableFileIO;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
index e0d315cf7..afa804949 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
@@ -24,19 +24,18 @@ import org.apache.paimon.data.Decimal;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.io.DataFileMeta;
-import org.apache.paimon.mergetree.compact.ConcatRecordReader;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaChange;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.io.DataFileMeta;
+import org.apache.paimon.mergetree.compact.ConcatRecordReader;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaChange;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataSplit;
@@ -56,6 +55,7 @@ import org.apache.paimon.types.TimestampType;
 import org.apache.paimon.types.VarBinaryType;
 import org.apache.paimon.types.VarCharType;
 import org.apache.paimon.utils.StringUtils;
+import org.apache.paimon.utils.TraceableFileIO;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
index d249fc1a5..500c52da1 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
@@ -21,13 +21,13 @@ package org.apache.paimon.table;
 import org.apache.paimon.data.DataFormatTestUtil;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaChange;
 import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.InnerTableRead;
 import org.apache.paimon.table.source.Split;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java b/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
index e33580fbc..ddf5a8044 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
@@ -19,15 +19,15 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.options.MemorySize;
+import org.apache.paimon.options.Options;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.SchemaUtils;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.paimon.options.MemorySize;
-import org.apache.paimon.options.Options;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.Split;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java b/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
index c7964c5e7..c456c026c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
@@ -21,23 +21,23 @@ package org.apache.paimon.table.sink;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.operation.AbstractFileStoreWrite;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.schema.SchemaUtils;
-import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.operation.AbstractFileStoreWrite;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.SchemaUtils;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.source.TableScan;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.TraceableFileIO;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
index 4461cdcc6..870801e45 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.snapshot.ScannerTestBase;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
index dc3f14608..648ee1169 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
@@ -18,12 +18,12 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.utils.ReusingTestData;
-import org.apache.paimon.file.utils.TestReusingRecordReader;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.ReusingTestData;
+import org.apache.paimon.utils.TestReusingRecordReader;
 
 import java.io.IOException;
 import java.util.List;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
index 18270c25c..e8f495bfe 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.ReusingTestData;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
index 091ce76c2..074ce3e10 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.ProjectedRow;
+import org.apache.paimon.utils.ReusingTestData;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
index 6d860d696..b613722c4 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.manifest.ManifestCommittable;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.TableCommitImpl;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
index 34fcc24b7..17bd37d72 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
index 7156dbc09..f73be02f6 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
@@ -19,8 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.StreamTableCommit;
@@ -28,6 +27,7 @@ import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
index ad6712986..5122bba92 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
@@ -18,16 +18,16 @@
 
 package org.apache.paimon.table.source.snapshot;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.io.DataFileMetaSerializer;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.table.system.BucketsTable;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
index 670cc1aea..acf66aa64 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
index 92ea088cc..2d2bbafac 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
index cc8427ff3..28ce7a8a3 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
index cb8542a27..bbc3db9d0 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
@@ -18,13 +18,13 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
index 9f7136977..8b80622b9 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
@@ -18,11 +18,11 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
index 944f8a3f8..56053aaa3 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
@@ -19,8 +19,7 @@
 package org.apache.paimon.table.source.snapshot;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.StreamTableCommit;
@@ -28,6 +27,7 @@ import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.RowKind;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
index 11bdea810..748102071 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
@@ -22,17 +22,16 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.mergetree.compact.ConcatRecordReader;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.mergetree.compact.ConcatRecordReader;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.source.Split;
@@ -41,6 +40,7 @@ import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.TraceableFileIO;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/BlockingIterator.java b/paimon-core/src/test/java/org/apache/paimon/utils/BlockingIterator.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/utils/BlockingIterator.java
rename to paimon-core/src/test/java/org/apache/paimon/utils/BlockingIterator.java
index 517b429e5..a87e47d86 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/BlockingIterator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/utils/BlockingIterator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import java.util.ArrayList;
 import java.util.Iterator;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/FailingFileIO.java b/paimon-core/src/test/java/org/apache/paimon/utils/FailingFileIO.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/utils/FailingFileIO.java
rename to paimon-core/src/test/java/org/apache/paimon/utils/FailingFileIO.java
index 4f9955d2c..022b03eef 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/FailingFileIO.java
+++ b/paimon-core/src/test/java/org/apache/paimon/utils/FailingFileIO.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOLoader;
@@ -27,7 +27,6 @@ import org.apache.paimon.fs.PositionOutputStreamWrapper;
 import org.apache.paimon.fs.SeekableInputStream;
 import org.apache.paimon.fs.SeekableInputStreamWrapper;
 import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.paimon.utils.ExceptionUtils;
 
 import java.io.File;
 import java.io.FileNotFoundException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/utils/FileStorePathFactoryTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
rename to paimon-core/src/test/java/org/apache/paimon/utils/FileStorePathFactoryTest.java
index 80a2cf0de..02140089c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/utils/FileStorePathFactoryTest.java
@@ -16,14 +16,14 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.io.DataFilePathFactory;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java b/paimon-core/src/test/java/org/apache/paimon/utils/ObjectSerializerTestBase.java
similarity index 98%
rename from paimon-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java
rename to paimon-core/src/test/java/org/apache/paimon/utils/ObjectSerializerTestBase.java
index 208605da9..83a002b2b 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/utils/ObjectSerializerTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataOutputSerializer;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java b/paimon-core/src/test/java/org/apache/paimon/utils/OffsetRowTest.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java
rename to paimon-core/src/test/java/org/apache/paimon/utils/OffsetRowTest.java
index 1e286487e..9f7fed237 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/utils/OffsetRowTest.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryArrayWriter;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java b/paimon-core/src/test/java/org/apache/paimon/utils/ReusingKeyValue.java
similarity index 95%
rename from paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java
rename to paimon-core/src/test/java/org/apache/paimon/utils/ReusingKeyValue.java
index 0ef5ce88f..2e37c6b9a 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java
+++ b/paimon-core/src/test/java/org/apache/paimon/utils/ReusingKeyValue.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
-import org.apache.paimon.file.KeyValue;
 
 /**
  * Util class which reuses a {@link KeyValue} to test if other components handle reuse correctly.
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingTestData.java b/paimon-core/src/test/java/org/apache/paimon/utils/ReusingTestData.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingTestData.java
rename to paimon-core/src/test/java/org/apache/paimon/utils/ReusingTestData.java
index 549128241..b96eef5ba 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingTestData.java
+++ b/paimon-core/src/test/java/org/apache/paimon/utils/ReusingTestData.java
@@ -16,11 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.types.RowKind;
-import org.apache.paimon.utils.Preconditions;
 
 import java.util.ArrayList;
 import java.util.HashSet;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/utils/SnapshotManagerTest.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java
rename to paimon-core/src/test/java/org/apache/paimon/utils/SnapshotManagerTest.java
index 1fbba27f9..99c785b8f 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/utils/SnapshotManagerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/TestReusingRecordReader.java b/paimon-core/src/test/java/org/apache/paimon/utils/TestReusingRecordReader.java
similarity index 97%
rename from paimon-core/src/test/java/org/apache/paimon/file/utils/TestReusingRecordReader.java
rename to paimon-core/src/test/java/org/apache/paimon/utils/TestReusingRecordReader.java
index 0320bbeec..dd4fd441e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/TestReusingRecordReader.java
+++ b/paimon-core/src/test/java/org/apache/paimon/utils/TestReusingRecordReader.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 
 import javax.annotation.Nullable;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java b/paimon-core/src/test/java/org/apache/paimon/utils/TraceableFileIO.java
similarity index 99%
rename from paimon-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java
rename to paimon-core/src/test/java/org/apache/paimon/utils/TraceableFileIO.java
index df2f26b49..4418fdd10 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java
+++ b/paimon-core/src/test/java/org/apache/paimon/utils/TraceableFileIO.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.paimon.file.utils;
+package org.apache.paimon.utils;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 
@@ -29,7 +29,6 @@ import org.apache.paimon.fs.PositionOutputStreamWrapper;
 import org.apache.paimon.fs.SeekableInputStream;
 import org.apache.paimon.fs.SeekableInputStreamWrapper;
 import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.paimon.utils.ThreadUtils;
 
 import javax.annotation.concurrent.GuardedBy;
 
diff --git a/paimon-core/src/test/resources/META-INF/services/org.apache.paimon.format.FileFormatFactory b/paimon-core/src/test/resources/META-INF/services/org.apache.paimon.format.FileFormatFactory
index eca7d57a4..2f39cb34a 100644
--- a/paimon-core/src/test/resources/META-INF/services/org.apache.paimon.format.FileFormatFactory
+++ b/paimon-core/src/test/resources/META-INF/services/org.apache.paimon.format.FileFormatFactory
@@ -13,4 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.paimon.file.format.FileStatsExtractingAvroFormatFactory
\ No newline at end of file
+org.apache.paimon.format.FileStatsExtractingAvroFormatFactory
\ No newline at end of file
diff --git a/paimon-core/src/test/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader b/paimon-core/src/test/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
index 7e3ef65e3..677f3394c 100644
--- a/paimon-core/src/test/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
+++ b/paimon-core/src/test/resources/META-INF/services/org.apache.paimon.fs.FileIOLoader
@@ -13,5 +13,5 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.paimon.file.utils.FailingFileIO$Loader
-org.apache.paimon.file.utils.TraceableFileIO$Loader
+org.apache.paimon.utils.FailingFileIO$Loader
+org.apache.paimon.utils.TraceableFileIO$Loader
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index 3f6f8393e..c820ab302 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -36,10 +36,10 @@ import org.apache.flink.util.CloseableIterator;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.Before;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index f8221003f..1eb637033 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -22,10 +22,10 @@ import org.apache.flink.types.Row;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.BlockingIterator;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.utils.BlockingIterator;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
index 4771be850..20fdf6a86 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
@@ -21,7 +21,7 @@ package org.apache.paimon.connector;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.connector.action.DeleteAction;
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.Test;
 
 import java.util.Collections;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
index 105e7ee6d..c64159dc6 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
@@ -20,7 +20,7 @@ package org.apache.paimon.connector;
 
 import org.apache.flink.types.Row;
 
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.Test;
 
 import java.util.Arrays;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index 3f6f8393e..c820ab302 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -36,10 +36,10 @@ import org.apache.flink.util.CloseableIterator;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.Before;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index f8221003f..1eb637033 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -22,10 +22,10 @@ import org.apache.flink.types.Row;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.BlockingIterator;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.utils.BlockingIterator;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
index 4771be850..20fdf6a86 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
@@ -21,7 +21,7 @@ package org.apache.paimon.connector;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.connector.action.DeleteAction;
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.Test;
 
 import java.util.Collections;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
index 105e7ee6d..c64159dc6 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
@@ -20,7 +20,7 @@ package org.apache.paimon.connector;
 
 import org.apache.flink.types.Row;
 
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.Test;
 
 import java.util.Arrays;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
index 61a288df2..e1da476aa 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
@@ -38,9 +38,9 @@ import org.apache.paimon.connector.log.LogStoreTableFactory;
 import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.connector.source.SystemTableSource;
 import org.apache.paimon.connector.source.TableStoreSource;
+import org.apache.paimon.options.Options;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.utils.Preconditions;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
index 6ed238933..a78e38c52 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
@@ -25,12 +25,12 @@ import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.factories.FactoryUtil;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.catalog.CatalogLock;
-import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.schema.SchemaManager;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
index d028a06c5..10481a7e2 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
@@ -27,13 +27,13 @@ import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.types.logical.LogicalType;
 
+import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogFactory;
+import org.apache.paimon.catalog.Identifier;
 import org.apache.paimon.connector.FlinkCatalog;
 import org.apache.paimon.connector.LogicalTypeConversion;
 import org.apache.paimon.connector.sink.FlinkSinkBuilder;
 import org.apache.paimon.connector.utils.TableEnvironmentUtils;
-import org.apache.paimon.catalog.Catalog;
-import org.apache.paimon.catalog.CatalogFactory;
-import org.apache.paimon.catalog.Identifier;
 import org.apache.paimon.operation.Lock;
 import org.apache.paimon.options.CatalogOptions;
 import org.apache.paimon.options.Options;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
index 9a8a03f4b..2502d5de8 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
@@ -29,10 +29,10 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.FlinkRowData;
 import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.options.Options;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateFilter;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.StreamDataTableScan;
 import org.apache.paimon.table.source.TableStreamingReader;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
index e3cbe14c5..ebc03fe54 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
@@ -31,13 +31,13 @@ import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.connector.BinaryRowTypeSerializer;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.SinkRecord;
+import org.apache.paimon.utils.SnapshotManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
index cd27e2d6d..5690fef1f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
@@ -26,8 +26,8 @@ import org.apache.flink.table.data.RowData;
 
 import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.file.utils.OffsetRow;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.OffsetRow;
 
 /**
  * {@link StreamPartitioner} to partition {@link RowData} according to its hash value from an {@link
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
index f5c558679..c95d177f1 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
@@ -26,7 +26,7 @@ import org.apache.flink.runtime.state.StateSnapshotContext;
 import org.apache.flink.streaming.api.operators.util.SimpleVersionedListState;
 
 import org.apache.paimon.manifest.ManifestCommittable;
-import org.apache.paimon.file.utils.SerializableSupplier;
+import org.apache.paimon.utils.SerializableSupplier;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
index e9145e119..988885f71 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
@@ -28,8 +28,8 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.io.DataFileMetaSerializer;
-import org.apache.paimon.file.utils.OffsetRow;
 import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.utils.OffsetRow;
 import org.apache.paimon.utils.Preconditions;
 
 import java.io.IOException;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
index 8d9d42812..f88f94745 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
@@ -30,12 +30,12 @@ import org.apache.flink.types.RowKind;
 import org.apache.paimon.CoreOptions.ChangelogProducer;
 import org.apache.paimon.CoreOptions.LogChangelogMode;
 import org.apache.paimon.CoreOptions.MergeEngine;
+import org.apache.paimon.catalog.CatalogLock;
 import org.apache.paimon.connector.FlinkCatalog;
 import org.apache.paimon.connector.FlinkConnectorOptions;
 import org.apache.paimon.connector.TableStoreDataStreamSinkProvider;
 import org.apache.paimon.connector.log.LogSinkProvider;
 import org.apache.paimon.connector.log.LogStoreTableFactory;
-import org.apache.paimon.catalog.CatalogLock;
 import org.apache.paimon.operation.Lock;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.AppendOnlyFileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
index 4c3e98a60..08d42f068 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
@@ -34,8 +34,8 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.StartupMode;
 import org.apache.paimon.connector.Projection;
 import org.apache.paimon.connector.log.LogSourceProvider;
-import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.StreamDataTableScan;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java
index 5cd456fa7..c921b5367 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java
@@ -23,8 +23,8 @@ import org.apache.flink.connector.base.source.hybrid.HybridSource;
 import org.apache.flink.connector.base.source.hybrid.HybridSource.SourceFactory;
 import org.apache.flink.table.data.RowData;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.connector.log.LogSourceProvider;
-import org.apache.paimon.file.Snapshot;
 
 import java.util.Map;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
index b67d83f62..b7dcfb562 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
@@ -22,12 +22,12 @@ import org.apache.flink.api.connector.source.Boundedness;
 import org.apache.flink.api.connector.source.SplitEnumerator;
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
 
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.predicate.Predicate;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.DataTable;
 import org.apache.paimon.table.source.BatchDataTableScan;
 import org.apache.paimon.table.source.DataTableScan;
+import org.apache.paimon.utils.SnapshotManager;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java
index 2895d18c9..6ac65fad0 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java
@@ -22,7 +22,7 @@ import org.apache.flink.api.connector.source.SplitEnumerator;
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
 import org.apache.flink.api.connector.source.SplitsAssignment;
 
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.Snapshot;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
index 9a378f33e..1fe21f5cc 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
@@ -36,8 +36,8 @@ import org.apache.paimon.connector.log.LogSourceProvider;
 import org.apache.paimon.connector.log.LogStoreTableFactory;
 import org.apache.paimon.connector.lookup.FileStoreLookupFunction;
 import org.apache.paimon.connector.lookup.LookupRuntimeProviderFactory;
-import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.table.AppendOnlyFileStoreTable;
 import org.apache.paimon.table.ChangelogValueCountFileStoreTable;
 import org.apache.paimon.table.ChangelogWithKeyFileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java
index 862e0e7cc..f8e5357c0 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.planner.factories.TestValuesTableFactory;
 import org.apache.flink.types.Row;
 import org.apache.flink.types.RowKind;
 
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.Snapshot;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index fae356494..e783877a6 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -35,12 +35,12 @@ import org.apache.flink.util.CloseableIterator;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.connector.util.AbstractTestBase;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.BlockingIterator;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.utils.BlockingIterator;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.BeforeEach;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
index 34a52a7b6..f8b6acd97 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
@@ -21,10 +21,10 @@ package org.apache.paimon.connector;
 import org.apache.flink.types.Row;
 
 import org.apache.commons.lang3.StringUtils;
-import org.apache.paimon.schema.SchemaChange;
-import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.schema.SchemaChange;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.types.IntType;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
index d2d9d399b..51fc0a735 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
@@ -26,11 +26,11 @@ import org.apache.paimon.connector.kafka.KafkaLogStoreFactory;
 import org.apache.paimon.connector.log.LogStoreTableFactory;
 import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.connector.source.TableStoreSource;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
index 2aa70fadd..68c58c97a 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
@@ -33,8 +33,8 @@ import org.apache.flink.util.CloseableIterator;
 
 import org.apache.paimon.connector.action.FlinkActions;
 import org.apache.paimon.connector.util.AbstractTestBase;
-import org.apache.paimon.file.utils.FailingFileIO;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.utils.FailingFileIO;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.Timeout;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
index e0eb2f0e1..aa246a724 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
@@ -21,7 +21,7 @@ package org.apache.paimon.connector;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.connector.kafka.KafkaTableTestBase;
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index 9a617df7f..42b63b96c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -25,10 +25,10 @@ import org.apache.flink.types.Row;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.BlockingIterator;
-import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.utils.BlockingIterator;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.TestTemplate;
 import org.junit.jupiter.api.extension.ExtendWith;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
index 4ad44eb91..2df4eac94 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
@@ -49,15 +49,15 @@ import org.apache.paimon.connector.source.ContinuousFileStoreSource;
 import org.apache.paimon.connector.source.FlinkSourceBuilder;
 import org.apache.paimon.connector.source.StaticFileStoreSource;
 import org.apache.paimon.connector.util.AbstractTestBase;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.utils.BlockingIterator;
-import org.apache.paimon.file.utils.FailingFileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
+import org.apache.paimon.utils.BlockingIterator;
+import org.apache.paimon.utils.FailingFileIO;
 import org.junit.jupiter.api.TestTemplate;
 import org.junit.jupiter.api.extension.ExtendWith;
 
@@ -77,7 +77,7 @@ import static org.apache.paimon.CoreOptions.BUCKET;
 import static org.apache.paimon.CoreOptions.FILE_FORMAT;
 import static org.apache.paimon.CoreOptions.PATH;
 import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
-import static org.apache.paimon.file.utils.FailingFileIO.retryArtificialException;
+import static org.apache.paimon.utils.FailingFileIO.retryArtificialException;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.api.Assumptions.assumeFalse;
 import static org.junit.jupiter.api.Assumptions.assumeTrue;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
index 9ea31e956..6191165bd 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
@@ -21,12 +21,12 @@ package org.apache.paimon.connector;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
 
-import org.apache.paimon.connector.kafka.KafkaTableTestBase;
 import org.apache.paimon.catalog.AbstractCatalog;
 import org.apache.paimon.catalog.Catalog;
 import org.apache.paimon.catalog.Identifier;
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.connector.kafka.KafkaTableTestBase;
 import org.apache.paimon.fs.Path;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
index f249f99e2..5d6321711 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
@@ -19,17 +19,17 @@
 package org.apache.paimon.connector;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.manifest.ManifestFileMeta;
-import org.apache.paimon.manifest.ManifestList;
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.manifest.ManifestFileMeta;
+import org.apache.paimon.manifest.ManifestList;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.stats.BinaryTableStats;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
+import org.apache.paimon.utils.FileStorePathFactory;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java
index f115aecd1..683f220a5 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java
@@ -21,7 +21,7 @@ package org.apache.paimon.connector;
 import org.apache.flink.types.Row;
 import org.apache.flink.types.RowKind;
 
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
index d444ff21c..56cea1a9c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.api.TableResult;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.connector.kafka.KafkaTableTestBase;
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java
index 3bafa41c1..64a9bc346 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java
@@ -21,7 +21,7 @@ package org.apache.paimon.connector;
 import org.apache.flink.types.Row;
 import org.apache.flink.types.RowKind;
 
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
index c71802415..e8ef14e71 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
@@ -20,7 +20,7 @@ package org.apache.paimon.connector;
 
 import org.apache.flink.types.Row;
 
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
index 5c1b2290a..7418f1732 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
@@ -34,9 +34,9 @@ import org.apache.flink.table.types.logical.VarCharType;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.predicate.PredicateBuilder;
-import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.Arguments;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
index 477783741..40eefc034 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
@@ -41,10 +41,10 @@ import org.apache.flink.types.Row;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.connector.util.AbstractTestBase;
-import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
index e1cfc8e8a..bad6d109c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
@@ -23,11 +23,11 @@ import org.apache.flink.core.execution.SavepointFormatType;
 import org.apache.flink.runtime.jobgraph.SavepointConfigOptions;
 import org.apache.flink.types.Row;
 
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.Snapshot;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.Test;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
index 6574f4b35..7bd8ebb93 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
@@ -22,7 +22,7 @@ import org.apache.flink.types.Row;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.kafka.KafkaTableTestBase;
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
index 275b9baa2..0acfc9b69 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
@@ -23,7 +23,7 @@ import org.apache.flink.core.execution.JobClient;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.connector.kafka.KafkaTableTestBase;
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.Test;
 
 import java.time.LocalDateTime;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
index be309fad6..a1cd5bce9 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
@@ -20,23 +20,23 @@ package org.apache.paimon.connector.action;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 
+import org.apache.paimon.catalog.Catalog;
+import org.apache.paimon.catalog.CatalogFactory;
+import org.apache.paimon.catalog.Identifier;
 import org.apache.paimon.connector.util.AbstractTestBase;
 import org.apache.paimon.data.DataFormatTestUtil;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.catalog.Catalog;
-import org.apache.paimon.catalog.CatalogFactory;
-import org.apache.paimon.catalog.Identifier;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
+import org.apache.paimon.schema.Schema;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.Split;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
index 5e4de7e62..dcf316ce2 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
@@ -24,9 +24,9 @@ import org.apache.flink.streaming.api.CheckpointingMode;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.connector.FlinkConnectorOptions;
 import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
index 75c7cfe92..be206dee4 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
@@ -20,13 +20,13 @@ package org.apache.paimon.connector.action;
 
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.Arguments;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
index 6462bc390..6d7d8b390 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.connector.action;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
index f4f5960cb..46779b247 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
@@ -22,7 +22,7 @@ import org.apache.flink.table.planner.factories.TestValuesTableFactory;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.params.ParameterizedTest;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
index 1cbcd7914..74b96f3d0 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
@@ -26,12 +26,12 @@ import org.apache.flink.streaming.util.OneInputStreamOperatorTestHarness;
 
 import org.apache.paimon.connector.VersionedSerializerWrapper;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.manifest.ManifestCommittableSerializer;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.manifest.ManifestCommittableSerializer;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.StreamTableWrite;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
index 67e6653c5..6dcb12b3b 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
@@ -20,13 +20,13 @@ package org.apache.paimon.connector.sink;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReaderIterator;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.source.TableRead;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
index 910b20674..93637b704 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
@@ -23,17 +23,16 @@ import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
 
+import org.apache.paimon.Snapshot;
 import org.apache.paimon.connector.source.CompactorSourceBuilder;
 import org.apache.paimon.connector.util.AbstractTestBase;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.sink.StreamTableCommit;
@@ -43,6 +42,7 @@ import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.SnapshotManager;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
index 6d1b7c7a8..a5803dcd3 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
@@ -31,8 +31,8 @@ import org.apache.paimon.connector.CatalogITCaseBase;
 import org.apache.paimon.connector.FlinkConnectorOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.sink.SinkRecord;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
index ede268fbf..555c28885 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
@@ -37,7 +37,7 @@ import org.apache.flink.util.CloseableIterator;
 import org.apache.flink.util.ExceptionUtils;
 
 import org.apache.paimon.connector.util.AbstractTestBase;
-import org.apache.paimon.file.utils.FailingFileIO;
+import org.apache.paimon.utils.FailingFileIO;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.Timeout;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
index 3e8b39795..4483eb00e 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
@@ -28,12 +28,12 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.io.DataFileMetaSerializer;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.sink.StreamTableCommit;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
index b82ab6f6a..95f81334e 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
@@ -20,10 +20,10 @@ package org.apache.paimon.connector.source;
 
 import org.apache.flink.connector.testutils.source.reader.TestingReaderContext;
 
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
index ceb2d9962..cac68f355 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
@@ -22,7 +22,7 @@ import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.manifest.FileKind;
 import org.apache.paimon.manifest.ManifestEntry;
 import org.apache.paimon.operation.FileStoreScan;
-import org.apache.paimon.file.stats.StatsTestUtils;
+import org.apache.paimon.stats.StatsTestUtils;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
index 715804f0c..e0ce5b4ff 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
@@ -29,15 +29,15 @@ import org.apache.flink.table.types.logical.IntType;
 import org.apache.flink.table.types.logical.RowType;
 import org.apache.flink.types.RowKind;
 
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaManager;
-import org.apache.paimon.file.utils.RecordWriter;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.table.source.TableRead;
+import org.apache.paimon.utils.RecordWriter;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
index 3fb08b942..4d16e2c00 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
@@ -22,7 +22,7 @@ import org.apache.flink.core.io.SimpleVersionedSerialization;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.io.DataFileMeta;
-import org.apache.paimon.file.stats.StatsTestUtils;
+import org.apache.paimon.stats.StatsTestUtils;
 import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
index 26bf667ea..723c6807c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
@@ -21,28 +21,25 @@ package org.apache.paimon.connector.source;
 import org.apache.flink.api.java.tuple.Tuple2;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.io.DataFileMeta;
 import org.apache.paimon.memory.HeapMemorySegmentPool;
 import org.apache.paimon.memory.MemoryOwner;
 import org.apache.paimon.mergetree.compact.DeduplicateMergeFunction;
 import org.apache.paimon.operation.KeyValueFileStoreRead;
 import org.apache.paimon.operation.KeyValueFileStoreWrite;
+import org.apache.paimon.options.Options;
 import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.file.utils.RecordWriter;
-import org.apache.paimon.file.utils.SnapshotManager;
-import org.apache.paimon.format.FileFormat;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.fs.local.LocalFileIO;
-import org.apache.paimon.options.Options;
-import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.source.KeyValueTableRead;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.table.source.ValueContentRowDataRecordIterator;
@@ -52,6 +49,9 @@ import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.FileStorePathFactory;
+import org.apache.paimon.utils.RecordWriter;
+import org.apache.paimon.utils.SnapshotManager;
 
 import java.util.ArrayList;
 import java.util.Collections;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
index e7924343c..4c631e1f9 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
@@ -31,7 +31,7 @@ import org.apache.flink.util.CloseableIterator;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.ReadWriteTableITCase;
 import org.apache.paimon.connector.StreamingReadWriteTableWithKafkaLogITCase;
-import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.utils.BlockingIterator;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
index 883e05f17..3e3a00dec 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/avro/AvroFileFormat.java
@@ -27,7 +27,6 @@ import org.apache.avro.generic.GenericRecord;
 import org.apache.avro.io.DatumWriter;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.FormatWriter;
@@ -36,6 +35,7 @@ import org.apache.paimon.fs.PositionOutputStream;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.ConfigOptions;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Projection;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
index 0952111ce..ea6b51d90 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/OrcFileFormat.java
@@ -22,7 +22,6 @@ import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch;
 import org.apache.orc.TypeDescription;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatReaderFactory;
@@ -34,6 +33,7 @@ import org.apache.paimon.format.orc.reader.OrcSplitReaderUtil;
 import org.apache.paimon.format.orc.writer.RowDataVectorizer;
 import org.apache.paimon.format.orc.writer.Vectorizer;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
index 760401286..7def2e09d 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/orc/filter/OrcPredicateFunctionVisitor.java
@@ -34,8 +34,7 @@ import java.util.List;
 import java.util.Optional;
 
 /**
- * Convert {@link org.apache.paimon.predicate.Predicate} to {@link OrcFilters.Predicate} for
- * orc.
+ * Convert {@link org.apache.paimon.predicate.Predicate} to {@link OrcFilters.Predicate} for orc.
  */
 public class OrcPredicateFunctionVisitor
         implements FunctionVisitor<Optional<OrcFilters.Predicate>> {
diff --git a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
index 94cbaca64..6785c0a73 100644
--- a/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
+++ b/paimon-format/src/main/java/org/apache/paimon/format/parquet/ParquetFileFormat.java
@@ -19,13 +19,13 @@
 package org.apache.paimon.format.parquet;
 
 import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.FormatWriterFactory;
 import org.apache.paimon.format.parquet.writer.RowDataParquetBuilder;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.predicate.Predicate;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Projection;
 
diff --git a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
index 35b867539..44e63f336 100644
--- a/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
+++ b/paimon-format/src/test/java/org/apache/paimon/format/orc/OrcFilterConverterTest.java
@@ -19,10 +19,10 @@
 package org.apache.paimon.format.orc;
 
 import org.apache.hadoop.hive.ql.io.sarg.PredicateLeaf;
-import org.apache.paimon.predicate.Predicate;
-import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.format.orc.filter.OrcFilters;
 import org.apache.paimon.format.orc.filter.OrcPredicateFunctionVisitor;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.predicate.PredicateBuilder;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
index d2689ddfc..7d719ccba 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
@@ -36,14 +36,14 @@ import org.apache.hadoop.hive.metastore.api.hive_metastoreConstants;
 import org.apache.paimon.catalog.AbstractCatalog;
 import org.apache.paimon.catalog.CatalogLock;
 import org.apache.paimon.catalog.Identifier;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
 import org.apache.paimon.operation.Lock;
+import org.apache.paimon.options.OptionsUtils;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaChange;
 import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.schema.TableSchema;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.options.OptionsUtils;
 import org.apache.paimon.table.TableType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.utils.StringUtils;
diff --git a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
index fbb593bcb..4f2dc2992 100644
--- a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
@@ -33,13 +33,13 @@ import com.klarna.hiverunner.annotations.HiveRunnerSetup;
 import com.klarna.hiverunner.annotations.HiveSQL;
 import com.klarna.hiverunner.config.HiveRunnerConfig;
 import org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
-import org.apache.paimon.connector.FlinkCatalog;
 import org.apache.paimon.catalog.AbstractCatalog;
 import org.apache.paimon.catalog.Catalog;
 import org.apache.paimon.catalog.CatalogLock;
 import org.apache.paimon.catalog.Identifier;
-import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.connector.FlinkCatalog;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.schema.SchemaManager;
 import org.assertj.core.api.Assertions;
 import org.junit.After;
 import org.junit.Assert;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
index b9a34b393..ed9be151f 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
@@ -27,9 +27,9 @@ import org.apache.hadoop.hive.serde2.SerDeUtils;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfo;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoUtils;
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
index 061800439..c83a910b2 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreJobConf.java
@@ -21,8 +21,8 @@ package org.apache.paimon.hive;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.metastore.api.hive_metastoreConstants;
 import org.apache.hadoop.mapred.JobConf;
-import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.utils.JsonSerdeUtil;
 
 import java.util.HashMap;
 import java.util.Map;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
index 65607fa94..f769ed652 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
@@ -29,12 +29,12 @@ import org.apache.hadoop.mapred.JobConf;
 import org.apache.hadoop.mapred.RecordReader;
 import org.apache.hadoop.mapred.Reporter;
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.predicate.Predicate;
-import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.hive.RowDataContainer;
 import org.apache.paimon.hive.SearchArgumentToPredicateConverter;
 import org.apache.paimon.hive.TableStoreJobConf;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.predicate.Predicate;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
index 64a6b46f6..e208f8b17 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
@@ -19,8 +19,8 @@
 package org.apache.paimon.hive.mapred;
 
 import org.apache.hadoop.mapred.RecordReader;
+import org.apache.paimon.KeyValue;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.hive.RowDataContainer;
 import org.apache.paimon.reader.RecordReaderIterator;
 import org.apache.paimon.table.source.ReadBuilder;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
index e9508696a..ea74b7b9b 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
@@ -19,11 +19,12 @@
 package org.apache.paimon.hive;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaManager;
+import org.apache.paimon.FileStore;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.types.RowType;
@@ -32,7 +33,7 @@ import java.util.List;
 
 import static org.apache.paimon.CoreOptions.PATH;
 
-/** Test utils related to {@link org.apache.paimon.file.FileStore}. */
+/** Test utils related to {@link FileStore}. */
 public class FileStoreTestUtils {
 
     public static FileStoreTable createFileStoreTable(
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
index d0d84c78b..f61b0ce3d 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
@@ -19,10 +19,10 @@
 package org.apache.paimon.hive;
 
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
index fb1a294b9..7384c9c90 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
@@ -28,11 +28,11 @@ import org.apache.hadoop.hive.serde2.objectinspector.MapObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.primitive.AbstractPrimitiveJavaObjectInspector;
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.WriteMode;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.hive.objectinspector.TableStoreObjectInspectorFactory;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
index 96609757e..8e014d0b6 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreSerDeTest.java
@@ -21,11 +21,11 @@ package org.apache.paimon.hive;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.StructField;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.hive.objectinspector.TableStoreRowDataObjectInspector;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
index 727224a09..7eddf3de9 100644
--- a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
@@ -20,11 +20,11 @@ package org.apache.paimon.spark;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.schema.Schema;
-import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
+import org.apache.paimon.schema.Schema;
+import org.apache.paimon.schema.SchemaManager;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.sink.StreamTableCommit;
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
index 20798eb11..1741f7eea 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
@@ -21,11 +21,11 @@ package org.apache.paimon.spark;
 import org.apache.flink.table.store.catalog.CatalogContext;
 
 import org.apache.paimon.catalog.Catalog;
-import org.apache.paimon.file.catalog.CatalogFactory;
+import org.apache.paimon.catalog.CatalogFactory;
 import org.apache.paimon.operation.Lock;
+import org.apache.paimon.options.Options;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.SchemaChange;
-import org.apache.paimon.options.Options;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Preconditions;
 import org.apache.spark.sql.SparkSession;
@@ -354,13 +354,13 @@ public class SparkCatalog implements TableCatalog, SupportsNamespaces {
         return namespace.length == 1;
     }
 
-    private org.apache.paimon.file.catalog.Identifier toIdentifier(Identifier ident)
+    private org.apache.paimon.catalog.Identifier toIdentifier(Identifier ident)
             throws NoSuchTableException {
         if (!isValidateNamespace(ident.namespace())) {
             throw new NoSuchTableException(ident);
         }
 
-        return new org.apache.paimon.file.catalog.Identifier(ident.namespace()[0], ident.name());
+        return new org.apache.paimon.catalog.Identifier(ident.namespace()[0], ident.name());
     }
 
     // --------------------- unsupported methods ----------------------------
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
index 16d04916b..d0eae1fa0 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.BigIntType;
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
index a3fe245f4..e2d12c420 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
@@ -21,9 +21,9 @@ package org.apache.paimon.spark;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
+import org.apache.paimon.schema.TableSchema;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.sink.StreamTableCommit;


[incubator-paimon] 05/32: [core] Rename paimon flink

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit cf039270e79400266bf101e7074540a5a9ad8176
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 12:24:43 2023 +0800

    [core] Rename paimon flink
---
 docs/content/how-to/writing-tables.md              | 20 ++++-----
 docs/content/maintenance/write-performance.md      |  4 +-
 flink-table-store-docs/README.md                   |  2 +-
 .../configuration/ConfigOptionsDocGenerator.java   |  4 +-
 .../table/store/tests/FlinkActionsE2eTest.java     |  8 ++--
 .../paimon-flink-1.14}/pom.xml                     |  0
 .../apache/paimon}/connector/TableConfigUtils.java |  2 +-
 .../TableStoreDataStreamScanProvider.java          |  2 +-
 .../TableStoreDataStreamSinkProvider.java          |  2 +-
 .../lookup/LookupRuntimeProviderFactory.java       |  2 +-
 .../connector/lookup/OldLookupFunction.java        |  2 +-
 .../utils/StreamExecutionEnvironmentUtils.java     |  2 +-
 .../connector/utils/TableEnvironmentUtils.java     |  2 +-
 .../paimon}/connector/BatchFileStoreITCase.java    |  2 +-
 .../paimon}/connector/CatalogITCaseBase.java       |  2 +-
 .../connector/ContinuousFileStoreITCase.java       |  4 +-
 .../paimon}/connector/FlinkActionITCase.java       |  4 +-
 .../apache/paimon}/connector/LookupJoinITCase.java |  2 +-
 .../src/test/resources/log4j2-test.properties      |  0
 .../paimon-flink-1.15}/pom.xml                     |  0
 .../lookup/LookupRuntimeProviderFactory.java       |  2 +-
 .../connector/lookup/OldLookupFunction.java        |  2 +-
 .../paimon}/connector/BatchFileStoreITCase.java    |  2 +-
 .../paimon}/connector/CatalogITCaseBase.java       |  2 +-
 .../connector/ContinuousFileStoreITCase.java       |  4 +-
 .../paimon}/connector/FlinkActionITCase.java       |  4 +-
 .../apache/paimon}/connector/LookupJoinITCase.java |  2 +-
 .../src/test/resources/log4j2-test.properties      |  0
 .../paimon-flink-1.16}/pom.xml                     |  0
 .../paimon-flink-common}/pom.xml                   |  0
 .../connector/AbstractTableStoreFactory.java       | 19 +++++----
 .../paimon}/connector/BinaryRowTypeSerializer.java |  2 +-
 .../apache/paimon}/connector/DataCatalogTable.java |  2 +-
 .../paimon}/connector/DataTypeToLogicalType.java   |  2 +-
 .../org/apache/paimon}/connector/FlinkCatalog.java |  6 +--
 .../paimon}/connector/FlinkCatalogFactory.java     |  2 +-
 .../paimon}/connector/FlinkConnectorOptions.java   |  2 +-
 .../org/apache/paimon}/connector/FlinkFileIO.java  |  2 +-
 .../paimon}/connector/FlinkFileIOLoader.java       |  2 +-
 .../org/apache/paimon}/connector/FlinkRowData.java |  4 +-
 .../apache/paimon}/connector/FlinkRowWrapper.java  |  6 +--
 .../org/apache/paimon}/connector/FlinkUtils.java   |  2 +-
 .../org/apache/paimon}/connector/HadoopUtils.java  |  2 +-
 .../paimon}/connector/LogicalTypeConversion.java   |  2 +-
 .../paimon}/connector/LogicalTypeToDataType.java   |  2 +-
 .../paimon}/connector/PredicateConverter.java      |  4 +-
 .../apache/paimon}/connector/ProjectedRowData.java |  2 +-
 .../org/apache/paimon}/connector/Projection.java   |  2 +-
 .../apache/paimon}/connector/RocksDBOptions.java   |  2 +-
 .../paimon}/connector/SystemCatalogTable.java      |  4 +-
 .../apache/paimon}/connector/TableConfigUtils.java |  2 +-
 .../connector/TableStoreConnectorFactory.java      |  7 ++--
 .../TableStoreDataStreamScanProvider.java          |  2 +-
 .../TableStoreDataStreamSinkProvider.java          |  2 +-
 .../connector/VersionedSerializerWrapper.java      |  2 +-
 .../apache/paimon}/connector/action/Action.java    |  2 +-
 .../paimon}/connector/action/ActionBase.java       | 10 ++---
 .../paimon}/connector/action/CompactAction.java    | 12 +++---
 .../paimon}/connector/action/DeleteAction.java     |  4 +-
 .../connector/action/DropPartitionAction.java      |  6 +--
 .../paimon}/connector/action/FlinkActions.java     |  4 +-
 .../paimon}/connector/action/MergeIntoAction.java  |  8 ++--
 .../kafka/KafkaLogDeserializationSchema.java       |  6 +--
 .../paimon/connector}/kafka/KafkaLogOptions.java   |  2 +-
 .../kafka/KafkaLogSerializationSchema.java         |  4 +-
 .../connector}/kafka/KafkaLogSinkProvider.java     |  7 ++--
 .../connector}/kafka/KafkaLogSourceProvider.java   |  4 +-
 .../connector}/kafka/KafkaLogStoreFactory.java     |  7 ++--
 .../paimon/connector}/kafka/KafkaSinkFunction.java |  4 +-
 .../paimon/connector}/log/LogSinkProvider.java     |  4 +-
 .../paimon/connector}/log/LogSourceProvider.java   |  2 +-
 .../connector}/log/LogStoreTableFactory.java       |  2 +-
 .../paimon/connector}/log/LogWriteCallback.java    |  4 +-
 .../connector/lookup/FileStoreLookupFunction.java  |  8 ++--
 .../lookup/LookupRuntimeProviderFactory.java       |  2 +-
 .../paimon}/connector/lookup/LookupTable.java      |  2 +-
 .../connector/lookup/NewLookupFunction.java        |  2 +-
 .../connector/lookup/PrimaryKeyLookupTable.java    |  2 +-
 .../paimon}/connector/lookup/RocksDBSetState.java  |  2 +-
 .../paimon}/connector/lookup/RocksDBState.java     |  2 +-
 .../connector/lookup/RocksDBStateFactory.java      |  4 +-
 .../connector/lookup/RocksDBValueState.java        |  2 +-
 .../lookup/SecondaryIndexLookupTable.java          |  2 +-
 .../connector/sink/BucketStreamPartitioner.java    |  5 ++-
 .../apache/paimon}/connector/sink/Committable.java |  2 +-
 .../connector/sink/CommittableSerializer.java      |  2 +-
 .../connector/sink/CommittableStateManager.java    |  2 +-
 .../connector/sink/CommittableTypeInfo.java        |  2 +-
 .../apache/paimon}/connector/sink/Committer.java   |  2 +-
 .../paimon}/connector/sink/CommitterOperator.java  |  2 +-
 .../paimon}/connector/sink/CompactorSink.java      |  2 +-
 .../connector/sink/CompactorSinkBuilder.java       |  2 +-
 .../paimon}/connector/sink/FileStoreSink.java      |  6 +--
 .../apache/paimon}/connector/sink/FlinkSink.java   |  9 ++--
 .../paimon}/connector/sink/FlinkSinkBuilder.java   |  6 +--
 .../sink/FullChangelogStoreSinkWrite.java          |  4 +-
 .../connector/sink/LogOffsetCommittable.java       |  2 +-
 .../paimon/connector}/sink/LogSinkFunction.java    |  3 +-
 .../sink/LookupChangelogStoreSinkWrite.java        |  2 +-
 .../sink/NoopCommittableStateManager.java          |  2 +-
 .../sink/OffsetRowDataHashStreamPartitioner.java   |  5 ++-
 .../connector/sink/PrepareCommitOperator.java      |  2 +-
 .../RestoreAndFailCommittableStateManager.java     |  2 +-
 .../apache/paimon}/connector/sink/StateUtils.java  |  2 +-
 .../paimon}/connector/sink/StoreCommitter.java     |  2 +-
 .../connector/sink/StoreCompactOperator.java       |  9 ++--
 .../paimon}/connector/sink/StoreSinkWrite.java     |  2 +-
 .../paimon}/connector/sink/StoreSinkWriteImpl.java |  2 +-
 .../paimon}/connector/sink/StoreWriteOperator.java |  8 ++--
 .../paimon}/connector/sink/TableStoreSink.java     | 14 +++----
 .../connector/source/CompactorSourceBuilder.java   |  5 ++-
 .../source/ContinuousFileSplitEnumerator.java      |  2 +-
 .../source/ContinuousFileStoreSource.java          |  4 +-
 .../connector/source/FileStoreSourceReader.java    |  2 +-
 .../connector/source/FileStoreSourceSplit.java     |  2 +-
 .../source/FileStoreSourceSplitGenerator.java      |  2 +-
 .../source/FileStoreSourceSplitReader.java         |  5 ++-
 .../source/FileStoreSourceSplitSerializer.java     |  2 +-
 .../source/FileStoreSourceSplitState.java          |  2 +-
 .../paimon}/connector/source/FlinkSource.java      |  2 +-
 .../connector/source/FlinkSourceBuilder.java       |  9 ++--
 .../paimon}/connector/source/FlinkTableSource.java |  7 ++--
 .../connector/source/LogHybridSourceFactory.java   |  5 ++-
 .../connector/source/PendingSplitsCheckpoint.java  |  2 +-
 .../source/PendingSplitsCheckpointSerializer.java  |  2 +-
 .../paimon}/connector/source/RecordsFunction.java  |  2 +-
 .../connector/source/SimpleSystemSource.java       |  2 +-
 .../connector/source/SingleIteratorRecords.java    |  2 +-
 .../connector/source/StaticFileStoreSource.java    |  2 +-
 .../source/StaticFileStoreSplitEnumerator.java     |  2 +-
 .../connector/source/SystemTableSource.java        |  2 +-
 .../paimon}/connector/source/TableStoreSource.java | 15 +++----
 .../utils/StreamExecutionEnvironmentUtils.java     |  2 +-
 .../connector/utils/TableEnvironmentUtils.java     |  2 +-
 .../org.apache.flink.table.factories.Factory       |  6 +--
 .../connector/AbstractTableStoreFactoryTest.java   |  2 +-
 .../paimon}/connector/AppendOnlyTableITCase.java   |  2 +-
 .../paimon}/connector/BatchFileStoreITCase.java    |  2 +-
 .../connector/BinaryRowTypeSerializerTest.java     |  2 +-
 .../paimon}/connector/CatalogITCaseBase.java       |  4 +-
 .../paimon}/connector/CatalogTableITCase.java      |  2 +-
 .../paimon}/connector/ChangelogModeTest.java       | 10 ++---
 .../ChangelogWithKeyFileStoreTableITCase.java      |  6 +--
 .../CompositePkAndMultiPartitionedTableITCase.java | 26 ++++++------
 ...AndMultiPartitionedTableWIthKafkaLogITCase.java | 38 ++++++++---------
 .../ComputedColumnAndWatermarkTableITCase.java     | 28 ++++++-------
 .../connector/ContinuousFileStoreITCase.java       |  4 +-
 .../paimon}/connector/CreateTableITCase.java       |  2 +-
 .../apache/paimon}/connector/DropTableITCase.java  |  2 +-
 .../apache/paimon}/connector/FileStoreITCase.java  | 16 ++++----
 .../paimon}/connector/FileSystemCatalogITCase.java |  4 +-
 .../apache/paimon}/connector/FiniteTestSource.java |  2 +-
 .../apache/paimon}/connector/FlinkCatalogTest.java |  2 +-
 .../paimon}/connector/ForceCompactionITCase.java   |  2 +-
 .../connector/FullCompactionFileStoreITCase.java   |  2 +-
 .../apache/paimon}/connector/LargeDataITCase.java  |  2 +-
 .../apache/paimon}/connector/LogSystemITCase.java  |  4 +-
 .../connector/LookupChangelogWithAggITCase.java    |  2 +-
 .../apache/paimon}/connector/LookupJoinITCase.java |  2 +-
 .../paimon}/connector/MappingTableITCase.java      |  4 +-
 .../paimon}/connector/PartialUpdateITCase.java     |  2 +-
 .../paimon}/connector/PreAggregationITCase.java    |  2 +-
 .../paimon}/connector/PredicateConverterTest.java  |  2 +-
 .../apache/paimon}/connector/PredicateITCase.java  |  2 +-
 .../paimon}/connector/ReadWriteTableITCase.java    | 48 +++++++++++-----------
 .../paimon}/connector/RescaleBucketITCase.java     |  2 +-
 .../paimon}/connector/SchemaChangeITCase.java      |  2 +-
 .../paimon}/connector/SerializableRowData.java     |  2 +-
 .../apache/paimon}/connector/ShowCreateUtil.java   |  2 +-
 .../StreamingReadWriteTableWithKafkaLogITCase.java | 38 ++++++++---------
 .../connector/StreamingWarehouseITCase.java        | 10 ++---
 .../paimon}/connector/TableStoreTestBase.java      |  4 +-
 .../paimon}/connector/action/ActionITCaseBase.java |  4 +-
 .../connector/action/CompactActionITCase.java      |  4 +-
 .../connector/action/DeleteActionITCase.java       | 10 ++---
 .../action/DropPartitionActionITCase.java          |  2 +-
 .../connector/action/MergeIntoActionITCase.java    | 20 ++++-----
 .../kafka/KafkaLogSerializationTest.java           | 10 ++---
 .../paimon/connector}/kafka/KafkaLogTestUtils.java |  9 ++--
 .../connector}/kafka/KafkaTableTestBase.java       |  4 +-
 .../paimon}/connector/lookup/LookupTableTest.java  |  2 +-
 .../connector/sink/CommittableSerializerTest.java  |  2 +-
 .../connector/sink/CommitterOperatorTest.java      |  4 +-
 .../connector/sink/CommitterOperatorTestBase.java  |  2 +-
 .../connector/sink/CompactorSinkITCase.java        |  6 +--
 .../connector/sink/FileStoreShuffleBucketTest.java |  8 ++--
 .../connector/sink/LogOffsetCommittableTest.java   |  2 +-
 .../connector/sink/SinkSavepointITCase.java        |  4 +-
 .../connector/source/CompactorSourceITCase.java    |  4 +-
 .../source/ContinuousFileSplitEnumeratorTest.java  |  2 +-
 .../source/FileStoreSourceReaderTest.java          |  4 +-
 .../source/FileStoreSourceSplitGeneratorTest.java  |  2 +-
 .../source/FileStoreSourceSplitReaderTest.java     |  8 ++--
 .../source/FileStoreSourceSplitSerializerTest.java |  2 +-
 .../source/FileStoreSourceSplitStateTest.java      |  6 +--
 .../PendingSplitsCheckpointSerializerTest.java     |  6 +--
 .../connector/source/RecordsFunctionTest.java      |  6 +--
 .../source/SingleIteratorRecordsTest.java          |  2 +-
 .../source/StaticFileStoreSplitEnumeratorTest.java |  4 +-
 .../source/TestChangelogDataReadWrite.java         |  2 +-
 .../paimon}/connector/util/AbstractTestBase.java   |  2 +-
 .../util/MiniClusterWithClientExtension.java       |  2 +-
 .../connector/util/ReadWriteTableTestUtil.java     | 17 ++++----
 .../src/test/resources/log4j2-test.properties      |  0
 {flink-table-store-flink => paimon-flink}/pom.xml  |  8 ++--
 .../org/apache/paimon/hive/HiveCatalogITCase.java  |  2 +-
 pom.xml                                            |  2 +-
 207 files changed, 481 insertions(+), 464 deletions(-)

diff --git a/docs/content/how-to/writing-tables.md b/docs/content/how-to/writing-tables.md
index 13e785c15..93281e8d6 100644
--- a/docs/content/how-to/writing-tables.md
+++ b/docs/content/how-to/writing-tables.md
@@ -204,7 +204,7 @@ Run the following command to submit a drop-partition job for the table.
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.flink.table.store.connector.action.FlinkActions \
+    -c org.apache.paimon.connector.action.FlinkActions \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     drop-partition \
     --warehouse <warehouse-path> \
@@ -221,7 +221,7 @@ For more information of drop-partition, see
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.flink.table.store.connector.action.FlinkActions \
+    -c org.apache.paimon.connector.action.FlinkActions \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     drop-partition --help
 ```
@@ -242,7 +242,7 @@ Run the following command to submit a 'delete' job for the table.
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.flink.table.store.connector.action.FlinkActions \
+    -c org.apache.paimon.connector.action.FlinkActions \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     delete \
     --warehouse <warehouse-path> \
@@ -260,7 +260,7 @@ For more information of 'delete', see
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.flink.table.store.connector.action.FlinkActions \
+    -c org.apache.paimon.connector.action.FlinkActions \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     delete --help
 ```
@@ -308,7 +308,7 @@ Run the following command to submit a 'merge-into' job for the table.
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.flink.table.store.connector.action.FlinkActions \
+    -c org.apache.paimon.connector.action.FlinkActions \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
@@ -334,7 +334,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 -- Find all orders mentioned in the source table, then mark as important if the price is above 100 
 -- or delete if the price is under 10.
 ./flink run \
-    -c org.apache.flink.table.store.connector.action.FlinkActions \
+    -c org.apache.paimon.connector.action.FlinkActions \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
@@ -351,7 +351,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 -- For matched order rows, increase the price, and if there is no match, insert the order from the 
 -- source table:
 ./flink run \
-    -c org.apache.flink.table.store.connector.action.FlinkActions \
+    -c org.apache.paimon.connector.action.FlinkActions \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
@@ -367,7 +367,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 -- For not matched by source order rows (which are in the target table and does not match any row in the
 -- source table based on the merge-condition), decrease the price or if the mark is 'trivial', delete them:
 ./flink run \
-    -c org.apache.flink.table.store.connector.action.FlinkActions \
+    -c org.apache.paimon.connector.action.FlinkActions \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
@@ -384,7 +384,7 @@ Alternatively, you can use '--source-sql <sql> [, --source-sql <sql> ...]' to cr
 -- An source-sql example: 
 -- Create a temporary view S in new catalog and use it as source table
 ./flink run \
-    -c org.apache.flink.table.store.connector.action.FlinkActions \
+    -c org.apache.paimon.connector.action.FlinkActions \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     merge-into \
     --warehouse <warehouse-path> \
@@ -442,7 +442,7 @@ For more information of 'merge-into', see
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.flink.table.store.connector.action.FlinkActions \
+    -c org.apache.paimon.connector.action.FlinkActions \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     merge-into --help
 ```
diff --git a/docs/content/maintenance/write-performance.md b/docs/content/maintenance/write-performance.md
index f753af734..81300661f 100644
--- a/docs/content/maintenance/write-performance.md
+++ b/docs/content/maintenance/write-performance.md
@@ -155,7 +155,7 @@ Run the following command to submit a compaction job for the table.
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.flink.table.store.connector.action.FlinkActions \
+    -c org.apache.paimon.connector.action.FlinkActions \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     compact \
     --warehouse <warehouse-path> \
@@ -175,7 +175,7 @@ For more usage of the compact action, see
 
 ```bash
 <FLINK_HOME>/bin/flink run \
-    -c org.apache.flink.table.store.connector.action.FlinkActions \
+    -c org.apache.paimon.connector.action.FlinkActions \
     /path/to/flink-table-store-flink-**-{{< version >}}.jar \
     compact --help
 ```
diff --git a/flink-table-store-docs/README.md b/flink-table-store-docs/README.md
index 9e655ba88..b69e49f9b 100644
--- a/flink-table-store-docs/README.md
+++ b/flink-table-store-docs/README.md
@@ -23,7 +23,7 @@ This module contains generators that create HTML files directly from Flink Table
 
 ## Configuration documentation
 
-The `ConfigOptionsDocGenerator` can be used to generate a reference of `ConfigOptions`. By default, a separate file is generated for each `*Options` class found in `org.apache.flink.table.store`, `org.apache.flink.table.store.connector` and `org.apache.flink.table.store.kafka`. 
+The `ConfigOptionsDocGenerator` can be used to generate a reference of `ConfigOptions`. By default, a separate file is generated for each `*Options` class found in `org.apache.flink.table.store`, `org.apache.paimon.connector` and `org.apache.paimon.connector.kafka`. 
 The `@ConfigGroups` annotation can be used to generate multiple files from a single class.
 
 To integrate an `*Options` class from another package, add another module-package argument pair to `ConfigOptionsDocGenerator#LOCATIONS`.
diff --git a/flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocGenerator.java b/flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocGenerator.java
index 37becbffc..112f0c6fe 100644
--- a/flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocGenerator.java
+++ b/flink-table-store-docs/src/main/java/org/apache/flink/table/store/docs/configuration/ConfigOptionsDocGenerator.java
@@ -76,10 +76,10 @@ public class ConfigOptionsDocGenerator {
                 new OptionsClassLocation("flink-table-store-core", "org.apache.flink.table.store"),
                 new OptionsClassLocation(
                         "flink-table-store-flink/flink-table-store-flink-common",
-                        "org.apache.flink.table.store.connector"),
+                        "org.apache.paimon.connector"),
                 new OptionsClassLocation(
                         "flink-table-store-flink/flink-table-store-flink-common",
-                        "org.apache.flink.table.store.kafka")
+                        "org.apache.paimon.connector.kafka")
             };
     static final String DEFAULT_PATH_PREFIX = "src/main/java";
 
diff --git a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FlinkActionsE2eTest.java b/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FlinkActionsE2eTest.java
index 2f163e154..725f9dfb5 100644
--- a/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FlinkActionsE2eTest.java
+++ b/flink-table-store-e2e-tests/src/test/java/org/apache/flink/table/store/tests/FlinkActionsE2eTest.java
@@ -103,7 +103,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "bin/flink",
                         "run",
                         "-c",
-                        "org.apache.flink.table.store.connector.action.FlinkActions",
+                        "org.apache.paimon.connector.action.FlinkActions",
                         "-D",
                         "execution.checkpointing.interval=1s",
                         "--detached",
@@ -167,7 +167,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "-p",
                         "1",
                         "-c",
-                        "org.apache.flink.table.store.connector.action.FlinkActions",
+                        "org.apache.paimon.connector.action.FlinkActions",
                         "lib/flink-table-store.jar",
                         "drop-partition",
                         "--warehouse",
@@ -226,7 +226,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "-p",
                         "1",
                         "-c",
-                        "org.apache.flink.table.store.connector.action.FlinkActions",
+                        "org.apache.paimon.connector.action.FlinkActions",
                         "lib/flink-table-store.jar",
                         "delete",
                         "--warehouse",
@@ -293,7 +293,7 @@ public class FlinkActionsE2eTest extends E2eTestBase {
                         "-p",
                         "1",
                         "-c",
-                        "org.apache.flink.table.store.connector.action.FlinkActions",
+                        "org.apache.paimon.connector.action.FlinkActions",
                         "lib/flink-table-store.jar",
                         "merge-into",
                         "--warehouse",
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/pom.xml b/paimon-flink/paimon-flink-1.14/pom.xml
similarity index 100%
rename from flink-table-store-flink/flink-table-store-flink-1.14/pom.xml
rename to paimon-flink/paimon-flink-1.14/pom.xml
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/TableConfigUtils.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableConfigUtils.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/TableConfigUtils.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableConfigUtils.java
index a1b8e4dd5..00cd9d60b 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/TableConfigUtils.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableConfigUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.configuration.ReadableConfig;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamScanProvider.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableStoreDataStreamScanProvider.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamScanProvider.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableStoreDataStreamScanProvider.java
index a550345cd..cddc4cc5e 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamScanProvider.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableStoreDataStreamScanProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamSinkProvider.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableStoreDataStreamSinkProvider.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamSinkProvider.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableStoreDataStreamSinkProvider.java
index fcdbdb52e..9702b1d20 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamSinkProvider.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/TableStoreDataStreamSinkProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.streaming.api.datastream.DataStreamSink;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.15/src/main/java/org/apache/flink/table/store/connector/lookup/LookupRuntimeProviderFactory.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-1.15/src/main/java/org/apache/flink/table/store/connector/lookup/LookupRuntimeProviderFactory.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
index 09862e58a..e6687dc73 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.15/src/main/java/org/apache/flink/table/store/connector/lookup/LookupRuntimeProviderFactory.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.connector.source.LookupTableSource.LookupRuntimeProvider;
 import org.apache.flink.table.connector.source.TableFunctionProvider;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/lookup/OldLookupFunction.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/lookup/OldLookupFunction.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/lookup/OldLookupFunction.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/lookup/OldLookupFunction.java
index b778ba4fd..f77435850 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/lookup/OldLookupFunction.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/lookup/OldLookupFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/utils/StreamExecutionEnvironmentUtils.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/utils/StreamExecutionEnvironmentUtils.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/utils/StreamExecutionEnvironmentUtils.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/utils/StreamExecutionEnvironmentUtils.java
index 813f1b413..0d517d012 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/utils/StreamExecutionEnvironmentUtils.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/utils/StreamExecutionEnvironmentUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.utils;
+package org.apache.paimon.connector.utils;
 
 import org.apache.flink.configuration.ReadableConfig;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/utils/TableEnvironmentUtils.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/utils/TableEnvironmentUtils.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/utils/TableEnvironmentUtils.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/utils/TableEnvironmentUtils.java
index a4fd18bf0..a2bdfa8ae 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/utils/TableEnvironmentUtils.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/connector/utils/TableEnvironmentUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.utils;
+package org.apache.paimon.connector.utils;
 
 import org.apache.flink.api.dag.Transformation;
 import org.apache.flink.table.api.TableEnvironment;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/BatchFileStoreITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/BatchFileStoreITCase.java
rename to paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
index c1a126889..d17d68dc5 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/BatchFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.types.Row;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/CatalogITCaseBase.java
rename to paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index 6991bee87..bcd63486c 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/ContinuousFileStoreITCase.java
rename to paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index 724f525d4..1960e87e3 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
@@ -34,7 +34,7 @@ import java.util.Comparator;
 import java.util.List;
 import java.util.concurrent.TimeoutException;
 
-import static org.apache.flink.table.store.connector.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
+import static org.apache.paimon.connector.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/FlinkActionITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/FlinkActionITCase.java
rename to paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
index 08326546c..080dd784f 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/FlinkActionITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.connector.action.DeleteAction;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.connector.action.DeleteAction;
 import org.junit.Test;
 
 import java.util.Collections;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/LookupJoinITCase.java
rename to paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
index 57ad15bba..c40e3e413 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/test/resources/log4j2-test.properties b/paimon-flink/paimon-flink-1.14/src/test/resources/log4j2-test.properties
similarity index 100%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/test/resources/log4j2-test.properties
rename to paimon-flink/paimon-flink-1.14/src/test/resources/log4j2-test.properties
diff --git a/flink-table-store-flink/flink-table-store-flink-1.15/pom.xml b/paimon-flink/paimon-flink-1.15/pom.xml
similarity index 100%
rename from flink-table-store-flink/flink-table-store-flink-1.15/pom.xml
rename to paimon-flink/paimon-flink-1.15/pom.xml
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/lookup/LookupRuntimeProviderFactory.java b/paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/lookup/LookupRuntimeProviderFactory.java
rename to paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
index 09862e58a..e6687dc73 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.14/src/main/java/org/apache/flink/table/store/connector/lookup/LookupRuntimeProviderFactory.java
+++ b/paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.connector.source.LookupTableSource.LookupRuntimeProvider;
 import org.apache.flink.table.connector.source.TableFunctionProvider;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.15/src/main/java/org/apache/flink/table/store/connector/lookup/OldLookupFunction.java b/paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/connector/lookup/OldLookupFunction.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-1.15/src/main/java/org/apache/flink/table/store/connector/lookup/OldLookupFunction.java
rename to paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/connector/lookup/OldLookupFunction.java
index b778ba4fd..f77435850 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.15/src/main/java/org/apache/flink/table/store/connector/lookup/OldLookupFunction.java
+++ b/paimon-flink/paimon-flink-1.15/src/main/java/org/apache/paimon/connector/lookup/OldLookupFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/BatchFileStoreITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/BatchFileStoreITCase.java
rename to paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
index c1a126889..d17d68dc5 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/BatchFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.types.Row;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/CatalogITCaseBase.java
rename to paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index 6991bee87..bcd63486c 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/ContinuousFileStoreITCase.java
rename to paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index 724f525d4..1960e87e3 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
@@ -34,7 +34,7 @@ import java.util.Comparator;
 import java.util.List;
 import java.util.concurrent.TimeoutException;
 
-import static org.apache.flink.table.store.connector.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
+import static org.apache.paimon.connector.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/FlinkActionITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/FlinkActionITCase.java
rename to paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
index 08326546c..080dd784f 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.14/src/test/java/org/apache/flink/table/store/connector/FlinkActionITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.connector.action.DeleteAction;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.connector.action.DeleteAction;
 import org.junit.Test;
 
 import java.util.Collections;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/LookupJoinITCase.java
rename to paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
index 57ad15bba..c40e3e413 100644
--- a/flink-table-store-flink/flink-table-store-flink-1.15/src/test/java/org/apache/flink/table/store/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
diff --git a/flink-table-store-flink/flink-table-store-flink-1.15/src/test/resources/log4j2-test.properties b/paimon-flink/paimon-flink-1.15/src/test/resources/log4j2-test.properties
similarity index 100%
rename from flink-table-store-flink/flink-table-store-flink-1.15/src/test/resources/log4j2-test.properties
rename to paimon-flink/paimon-flink-1.15/src/test/resources/log4j2-test.properties
diff --git a/flink-table-store-flink/flink-table-store-flink-1.16/pom.xml b/paimon-flink/paimon-flink-1.16/pom.xml
similarity index 100%
rename from flink-table-store-flink/flink-table-store-flink-1.16/pom.xml
rename to paimon-flink/paimon-flink-1.16/pom.xml
diff --git a/flink-table-store-flink/flink-table-store-flink-common/pom.xml b/paimon-flink/paimon-flink-common/pom.xml
similarity index 100%
rename from flink-table-store-flink/flink-table-store-flink-common/pom.xml
rename to paimon-flink/paimon-flink-common/pom.xml
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/AbstractTableStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
similarity index 92%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/AbstractTableStoreFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
index 9b35df5a3..af27e44ae 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/AbstractTableStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.configuration.ConfigOption;
@@ -32,18 +32,19 @@ import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
 import org.apache.flink.table.store.CoreOptions.LogConsistency;
 import org.apache.flink.table.store.annotation.VisibleForTesting;
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.connector.sink.TableStoreSink;
-import org.apache.flink.table.store.connector.source.SystemTableSource;
-import org.apache.flink.table.store.connector.source.TableStoreSource;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.TableSchema;
-import org.apache.flink.table.store.log.LogStoreTableFactory;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
 import org.apache.flink.table.store.utils.Preconditions;
 import org.apache.flink.table.types.logical.RowType;
 
+import org.apache.paimon.connector.log.LogStoreTableFactory;
+import org.apache.paimon.connector.sink.TableStoreSink;
+import org.apache.paimon.connector.source.SystemTableSource;
+import org.apache.paimon.connector.source.TableStoreSource;
+
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.List;
@@ -53,10 +54,10 @@ import java.util.Set;
 
 import static org.apache.flink.table.store.CoreOptions.LOG_CHANGELOG_MODE;
 import static org.apache.flink.table.store.CoreOptions.LOG_CONSISTENCY;
-import static org.apache.flink.table.store.connector.FlinkConnectorOptions.LOG_SYSTEM;
-import static org.apache.flink.table.store.connector.FlinkConnectorOptions.NONE;
-import static org.apache.flink.table.store.connector.LogicalTypeConversion.toLogicalType;
-import static org.apache.flink.table.store.log.LogStoreTableFactory.discoverLogStoreFactory;
+import static org.apache.paimon.connector.FlinkConnectorOptions.LOG_SYSTEM;
+import static org.apache.paimon.connector.FlinkConnectorOptions.NONE;
+import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
+import static org.apache.paimon.connector.log.LogStoreTableFactory.discoverLogStoreFactory;
 
 /** Abstract table store factory to create table source and table sink. */
 public abstract class AbstractTableStoreFactory
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/BinaryRowTypeSerializer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/BinaryRowTypeSerializer.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
index 6a4545c72..ae3ce108d 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/BinaryRowTypeSerializer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.typeutils.TypeSerializer;
 import org.apache.flink.api.common.typeutils.TypeSerializerSchemaCompatibility;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/DataCatalogTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataCatalogTable.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/DataCatalogTable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataCatalogTable.java
index 6f3c1e219..b9ca5cc86 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/DataCatalogTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataCatalogTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.TableSchema;
 import org.apache.flink.table.catalog.CatalogBaseTable;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/DataTypeToLogicalType.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataTypeToLogicalType.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/DataTypeToLogicalType.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataTypeToLogicalType.java
index d57e5773c..175f71f61 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/DataTypeToLogicalType.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataTypeToLogicalType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.types.ArrayType;
 import org.apache.flink.table.store.types.BigIntType;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkCatalog.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkCatalog.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
index 93f09f85a..8e892c571 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkCatalog.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.TableSchema;
 import org.apache.flink.table.catalog.AbstractCatalog;
@@ -62,9 +62,9 @@ import java.util.Optional;
 import static org.apache.flink.table.descriptors.Schema.SCHEMA;
 import static org.apache.flink.table.factories.FactoryUtil.CONNECTOR;
 import static org.apache.flink.table.store.CoreOptions.PATH;
-import static org.apache.flink.table.store.connector.LogicalTypeConversion.toDataType;
-import static org.apache.flink.table.store.connector.LogicalTypeConversion.toLogicalType;
 import static org.apache.flink.table.types.utils.TypeConversions.fromLogicalToDataType;
+import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
+import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
 
 /** Catalog for table store. */
 public class FlinkCatalog extends AbstractCatalog {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkCatalogFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkCatalogFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
index 6bb1daed4..2a1901a3c 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkCatalogFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.catalog.Catalog;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkConnectorOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkConnectorOptions.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
index e07bef956..29b9e41a2 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkConnectorOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.options.ConfigOption;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkFileIO.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkFileIO.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java
index bdf86bf82..6e05cdca4 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkFileIO.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIO.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.core.fs.FSDataInputStream;
 import org.apache.flink.core.fs.FSDataOutputStream;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkFileIOLoader.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIOLoader.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkFileIOLoader.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIOLoader.java
index cbad1333b..5c2403209 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkFileIOLoader.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkFileIOLoader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.FileIOLoader;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkRowData.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowData.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkRowData.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowData.java
index 8e7611cd7..87d48fd6c 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkRowData.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowData.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.data.ArrayData;
 import org.apache.flink.table.data.DecimalData;
@@ -33,7 +33,7 @@ import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.types.RowKind;
 
-import static org.apache.flink.table.store.connector.FlinkRowWrapper.fromFlinkRowKind;
+import static org.apache.paimon.connector.FlinkRowWrapper.fromFlinkRowKind;
 
 /** Convert to Flink row data. */
 public class FlinkRowData implements RowData {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkRowWrapper.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkRowWrapper.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java
index 734c4a854..e2cf67b98 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkRowWrapper.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.data.DecimalData;
 import org.apache.flink.table.data.GenericRowData;
@@ -30,8 +30,8 @@ import org.apache.flink.table.store.data.Timestamp;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.types.logical.LogicalType;
 
-import static org.apache.flink.table.store.connector.FlinkRowData.toFlinkRowKind;
-import static org.apache.flink.table.store.connector.LogicalTypeConversion.toDataType;
+import static org.apache.paimon.connector.FlinkRowData.toFlinkRowKind;
+import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
 
 /** Convert from Flink row data. */
 public class FlinkRowWrapper implements InternalRow {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkUtils.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
index 3acbb5ac3..593917a1d 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/FlinkUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.configuration.ReadableConfig;
 import org.apache.flink.table.store.catalog.CatalogContext;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/HadoopUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/HadoopUtils.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/HadoopUtils.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/HadoopUtils.java
index f7fa60a39..d6e09085d 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/HadoopUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/HadoopUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.configuration.ConfigConstants;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/LogicalTypeConversion.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeConversion.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/LogicalTypeConversion.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeConversion.java
index 0c7d4a5de..8e36e3a32 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/LogicalTypeConversion.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeConversion.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/LogicalTypeToDataType.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeToDataType.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/LogicalTypeToDataType.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeToDataType.java
index d855d03eb..652918f6f 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/LogicalTypeToDataType.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeToDataType.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/PredicateConverter.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/PredicateConverter.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
index e62cc5efc..f00e90bf1 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/PredicateConverter.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.data.conversion.DataStructureConverters;
 import org.apache.flink.table.expressions.CallExpression;
@@ -44,8 +44,8 @@ import java.util.function.BiFunction;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-import static org.apache.flink.table.store.connector.LogicalTypeConversion.toDataType;
 import static org.apache.flink.table.types.logical.utils.LogicalTypeCasts.supportsImplicitCast;
+import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
 
 /**
  * Convert {@link Expression} to {@link Predicate}.
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/ProjectedRowData.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/ProjectedRowData.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/ProjectedRowData.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/ProjectedRowData.java
index 60e66e6ac..2f2a70e86 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/ProjectedRowData.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/ProjectedRowData.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.data.ArrayData;
 import org.apache.flink.table.data.DecimalData;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/Projection.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/Projection.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/Projection.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/Projection.java
index c82b46e2e..4a8ecf43e 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/Projection.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/Projection.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.logical.RowType;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/RocksDBOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/RocksDBOptions.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
index 74d700cc6..75281e4ec 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/RocksDBOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.annotation.Documentation;
 import org.apache.flink.table.store.options.ConfigOption;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/SystemCatalogTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/SystemCatalogTable.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/SystemCatalogTable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/SystemCatalogTable.java
index 4b6d8524c..9cde264bb 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/SystemCatalogTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/SystemCatalogTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.Schema;
 import org.apache.flink.table.catalog.CatalogTable;
@@ -28,7 +28,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.connector.LogicalTypeConversion.toLogicalType;
+import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
 
 /** A {@link CatalogTable} to represent system table. */
 public class SystemCatalogTable implements CatalogTable {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableConfigUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableConfigUtils.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableConfigUtils.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableConfigUtils.java
index 55f8b928b..0203eca71 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableConfigUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableConfigUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.configuration.ReadableConfig;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableStoreConnectorFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableStoreConnectorFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
index 0dc566c18..c22da6f64 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableStoreConnectorFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.catalog.ResolvedCatalogTable;
 import org.apache.flink.table.connector.sink.DynamicTableSink;
@@ -24,17 +24,18 @@ import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.factories.FactoryUtil;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.connector.sink.TableStoreSink;
 import org.apache.flink.table.store.file.catalog.CatalogLock;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.options.Options;
 
+import org.apache.paimon.connector.sink.TableStoreSink;
+
 import javax.annotation.Nullable;
 
 import static org.apache.flink.table.store.CoreOptions.AUTO_CREATE;
-import static org.apache.flink.table.store.connector.FlinkCatalogFactory.IDENTIFIER;
+import static org.apache.paimon.connector.FlinkCatalogFactory.IDENTIFIER;
 
 /** A table store {@link DynamicTableFactory} to create source and sink. */
 public class TableStoreConnectorFactory extends AbstractTableStoreFactory {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamScanProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreDataStreamScanProvider.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamScanProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreDataStreamScanProvider.java
index f6aa042e5..ae8bd7ae9 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamScanProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreDataStreamScanProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamSinkProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreDataStreamSinkProvider.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamSinkProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreDataStreamSinkProvider.java
index 03c7c699d..e245823dd 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/TableStoreDataStreamSinkProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreDataStreamSinkProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.streaming.api.datastream.DataStreamSink;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/VersionedSerializerWrapper.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/VersionedSerializerWrapper.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/VersionedSerializerWrapper.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/VersionedSerializerWrapper.java
index 476b57008..821d7b79c 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/VersionedSerializerWrapper.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/VersionedSerializerWrapper.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.core.io.SimpleVersionedSerializer;
 import org.apache.flink.table.store.data.serializer.VersionedSerializer;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/Action.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/Action.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
index cf4ed56c1..a5c49490a 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/Action.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.action;
+package org.apache.paimon.connector.action;
 
 import org.apache.flink.api.java.tuple.Tuple3;
 import org.apache.flink.api.java.utils.MultipleParameterTool;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/ActionBase.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/ActionBase.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
index 0384e8a69..6ab601903 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/ActionBase.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.action;
+package org.apache.paimon.connector.action;
 
 import org.apache.flink.api.dag.Transformation;
 import org.apache.flink.streaming.api.datastream.DataStream;
@@ -25,10 +25,6 @@ import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.bridge.java.StreamTableEnvironment;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.connector.FlinkCatalog;
-import org.apache.flink.table.store.connector.LogicalTypeConversion;
-import org.apache.flink.table.store.connector.sink.FlinkSinkBuilder;
-import org.apache.flink.table.store.connector.utils.TableEnvironmentUtils;
 import org.apache.flink.table.store.file.catalog.Catalog;
 import org.apache.flink.table.store.file.catalog.CatalogFactory;
 import org.apache.flink.table.store.file.catalog.Identifier;
@@ -41,6 +37,10 @@ import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypeCasts;
 import org.apache.flink.table.types.logical.LogicalType;
 
+import org.apache.paimon.connector.FlinkCatalog;
+import org.apache.paimon.connector.LogicalTypeConversion;
+import org.apache.paimon.connector.sink.FlinkSinkBuilder;
+import org.apache.paimon.connector.utils.TableEnvironmentUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/CompactAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
similarity index 92%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/CompactAction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
index 7084365b5..86f1eaff1 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/CompactAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.action;
+package org.apache.paimon.connector.action;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.api.java.tuple.Tuple3;
@@ -27,12 +27,12 @@ import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.connector.sink.CompactorSinkBuilder;
-import org.apache.flink.table.store.connector.source.CompactorSourceBuilder;
-import org.apache.flink.table.store.connector.utils.StreamExecutionEnvironmentUtils;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 
+import org.apache.paimon.connector.sink.CompactorSinkBuilder;
+import org.apache.paimon.connector.source.CompactorSourceBuilder;
+import org.apache.paimon.connector.utils.StreamExecutionEnvironmentUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -40,8 +40,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.connector.action.Action.getPartitions;
-import static org.apache.flink.table.store.connector.action.Action.getTablePath;
+import static org.apache.paimon.connector.action.Action.getPartitions;
+import static org.apache.paimon.connector.action.Action.getTablePath;
 
 /** Table compact action for Flink. */
 public class CompactAction extends ActionBase {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/DeleteAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DeleteAction.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/DeleteAction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DeleteAction.java
index 5890a9254..0cfba60e4 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/DeleteAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DeleteAction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.action;
+package org.apache.paimon.connector.action;
 
 import org.apache.flink.api.java.tuple.Tuple3;
 import org.apache.flink.api.java.utils.MultipleParameterTool;
@@ -35,7 +35,7 @@ import java.util.List;
 import java.util.Optional;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.connector.action.Action.getTablePath;
+import static org.apache.paimon.connector.action.Action.getTablePath;
 
 /** Delete from table action for Flink. */
 public class DeleteAction extends ActionBase {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/DropPartitionAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DropPartitionAction.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/DropPartitionAction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DropPartitionAction.java
index c4026c393..d11bc24c7 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/DropPartitionAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DropPartitionAction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.action;
+package org.apache.paimon.connector.action;
 
 import org.apache.flink.api.java.tuple.Tuple3;
 import org.apache.flink.api.java.utils.MultipleParameterTool;
@@ -30,8 +30,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.connector.action.Action.getPartitions;
-import static org.apache.flink.table.store.connector.action.Action.getTablePath;
+import static org.apache.paimon.connector.action.Action.getPartitions;
+import static org.apache.paimon.connector.action.Action.getTablePath;
 
 /** Table drop partition action for Flink. */
 public class DropPartitionAction extends ActionBase {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/FlinkActions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/FlinkActions.java
similarity index 92%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/FlinkActions.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/FlinkActions.java
index 580683709..0d488f5dc 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/FlinkActions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/FlinkActions.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.action;
+package org.apache.paimon.connector.action;
 
 import java.util.Optional;
 
-import static org.apache.flink.table.store.connector.action.Action.Factory.printHelp;
+import static org.apache.paimon.connector.action.Action.Factory.printHelp;
 
 /** Table maintenance actions for Flink. */
 public class FlinkActions {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/MergeIntoAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/MergeIntoAction.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/MergeIntoAction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/MergeIntoAction.java
index 9943bfdbc..b231f20d4 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/action/MergeIntoAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/MergeIntoAction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.action;
+package org.apache.paimon.connector.action;
 
 import org.apache.flink.api.java.tuple.Tuple3;
 import org.apache.flink.api.java.utils.MultipleParameterTool;
@@ -26,13 +26,13 @@ import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.data.conversion.DataStructureConverter;
 import org.apache.flink.table.data.conversion.DataStructureConverters;
-import org.apache.flink.table.store.connector.LogicalTypeConversion;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.types.DataField;
 import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.types.utils.TypeConversions;
 import org.apache.flink.types.RowKind;
 
+import org.apache.paimon.connector.LogicalTypeConversion;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -47,8 +47,8 @@ import java.util.Optional;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import static org.apache.flink.table.store.connector.action.Action.getTablePath;
-import static org.apache.flink.table.store.connector.action.Action.parseKeyValues;
+import static org.apache.paimon.connector.action.Action.getTablePath;
+import static org.apache.paimon.connector.action.Action.parseKeyValues;
 
 /**
  * Flink action for 'MERGE INTO', which references the syntax as follows (we use 'upsert' semantics
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogDeserializationSchema.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogDeserializationSchema.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogDeserializationSchema.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogDeserializationSchema.java
index 9355e6ba4..3f53f4479 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogDeserializationSchema.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogDeserializationSchema.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.kafka;
+package org.apache.paimon.connector.kafka;
 
 import org.apache.flink.api.common.serialization.DeserializationSchema;
 import org.apache.flink.api.common.typeinfo.TypeInformation;
@@ -24,8 +24,6 @@ import org.apache.flink.streaming.connectors.kafka.KafkaDeserializationSchema;
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
-import org.apache.flink.table.store.connector.ProjectedRowData;
-import org.apache.flink.table.store.connector.Projection;
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.logical.LogicalType;
 import org.apache.flink.table.types.logical.RowType;
@@ -33,6 +31,8 @@ import org.apache.flink.types.RowKind;
 import org.apache.flink.util.Collector;
 
 import org.apache.kafka.clients.consumer.ConsumerRecord;
+import org.apache.paimon.connector.ProjectedRowData;
+import org.apache.paimon.connector.Projection;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogOptions.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogOptions.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogOptions.java
index 3f5c8e001..89c17ebe8 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogOptions.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.kafka;
+package org.apache.paimon.connector.kafka;
 
 import org.apache.flink.table.store.options.ConfigOption;
 import org.apache.flink.table.store.options.ConfigOptions;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogSerializationSchema.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogSerializationSchema.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java
index 8f23f6e1b..0ebfc7047 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogSerializationSchema.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java
@@ -16,18 +16,18 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.kafka;
+package org.apache.paimon.connector.kafka;
 
 import org.apache.flink.api.common.serialization.SerializationSchema;
 import org.apache.flink.connector.kafka.sink.KafkaRecordSerializationSchema;
 import org.apache.flink.streaming.connectors.kafka.KafkaSerializationSchema;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
-import org.apache.flink.table.store.connector.FlinkRowData;
 import org.apache.flink.table.store.table.sink.SinkRecord;
 import org.apache.flink.table.store.types.RowKind;
 
 import org.apache.kafka.clients.producer.ProducerRecord;
+import org.apache.paimon.connector.FlinkRowData;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogSinkProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogSinkProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
index cf88919c4..ecf90e934 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogSinkProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.kafka;
+package org.apache.paimon.connector.kafka;
 
 import org.apache.flink.api.common.serialization.SerializationSchema;
 import org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer.Semantic;
@@ -24,8 +24,9 @@ import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
 import org.apache.flink.table.store.CoreOptions.LogConsistency;
 import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.log.LogSinkProvider;
-import org.apache.flink.table.store.table.sink.LogSinkFunction;
+
+import org.apache.paimon.connector.log.LogSinkProvider;
+import org.apache.paimon.connector.sink.LogSinkFunction;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogSourceProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogSourceProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
index 7571e1917..38e19b36c 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogSourceProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.kafka;
+package org.apache.paimon.connector.kafka;
 
 import org.apache.flink.api.common.serialization.DeserializationSchema;
 import org.apache.flink.connector.kafka.source.KafkaSource;
@@ -26,10 +26,10 @@ import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.CoreOptions.LogConsistency;
 import org.apache.flink.table.store.CoreOptions.StartupMode;
 import org.apache.flink.table.store.annotation.VisibleForTesting;
-import org.apache.flink.table.store.log.LogSourceProvider;
 import org.apache.flink.table.types.DataType;
 
 import org.apache.kafka.common.TopicPartition;
+import org.apache.paimon.connector.log.LogSourceProvider;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogStoreFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
index bdea7f9b0..3f3c95218 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaLogStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.kafka;
+package org.apache.paimon.connector.kafka;
 
 import org.apache.flink.api.common.serialization.DeserializationSchema;
 import org.apache.flink.api.common.serialization.SerializationSchema;
@@ -30,11 +30,12 @@ import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.factories.FactoryUtil;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.log.LogStoreTableFactory;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.utils.DataTypeUtils;
 
+import org.apache.paimon.connector.log.LogStoreTableFactory;
+
 import javax.annotation.Nullable;
 
 import java.util.HashSet;
@@ -48,8 +49,8 @@ import static org.apache.flink.table.store.CoreOptions.LOG_CHANGELOG_MODE;
 import static org.apache.flink.table.store.CoreOptions.LOG_CONSISTENCY;
 import static org.apache.flink.table.store.CoreOptions.LogConsistency;
 import static org.apache.flink.table.store.CoreOptions.SCAN_TIMESTAMP_MILLIS;
-import static org.apache.flink.table.store.kafka.KafkaLogOptions.TOPIC;
 import static org.apache.kafka.clients.consumer.ConsumerConfig.ISOLATION_LEVEL_CONFIG;
+import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
 
 /** The Kafka {@link LogStoreTableFactory} implementation. */
 public class KafkaLogStoreFactory implements LogStoreTableFactory {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaSinkFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaSinkFunction.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaSinkFunction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaSinkFunction.java
index afea23671..bf44e0beb 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/kafka/KafkaSinkFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaSinkFunction.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.kafka;
+package org.apache.paimon.connector.kafka;
 
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.streaming.connectors.kafka.FlinkKafkaException;
 import org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer;
 import org.apache.flink.streaming.connectors.kafka.KafkaSerializationSchema;
-import org.apache.flink.table.store.table.sink.LogSinkFunction;
 import org.apache.flink.table.store.table.sink.SinkRecord;
 
 import org.apache.kafka.clients.producer.Callback;
 import org.apache.kafka.clients.producer.ProducerRecord;
+import org.apache.paimon.connector.sink.LogSinkFunction;
 
 import java.util.Properties;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogSinkProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogSinkProvider.java
similarity index 90%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogSinkProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogSinkProvider.java
index 319324f19..cc35d18ed 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogSinkProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogSinkProvider.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.log;
+package org.apache.paimon.connector.log;
 
-import org.apache.flink.table.store.table.sink.LogSinkFunction;
+import org.apache.paimon.connector.sink.LogSinkFunction;
 
 import java.io.Serializable;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogSourceProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogSourceProvider.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogSourceProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogSourceProvider.java
index 94dd604af..625e552b4 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogSourceProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogSourceProvider.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.log;
+package org.apache.paimon.connector.log;
 
 import org.apache.flink.api.connector.source.Source;
 import org.apache.flink.connector.base.source.hybrid.HybridSource;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogStoreTableFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogStoreTableFactory.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogStoreTableFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogStoreTableFactory.java
index 0e26efb2d..4dd8529f4 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogStoreTableFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogStoreTableFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.log;
+package org.apache.paimon.connector.log;
 
 import org.apache.flink.api.common.serialization.DeserializationSchema;
 import org.apache.flink.api.common.serialization.SerializationSchema;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogWriteCallback.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogWriteCallback.java
similarity index 93%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogWriteCallback.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogWriteCallback.java
index 972d2dc8e..beccc46ca 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/log/LogWriteCallback.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogWriteCallback.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.log;
+package org.apache.paimon.connector.log;
 
-import org.apache.flink.table.store.table.sink.LogSinkFunction.WriteCallback;
+import org.apache.paimon.connector.sink.LogSinkFunction.WriteCallback;
 
 import java.util.HashMap;
 import java.util.Map;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/FileStoreLookupFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/FileStoreLookupFunction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
index f2448feda..688963b8c 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/FileStoreLookupFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
@@ -16,15 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.streaming.api.operators.StreamingRuntimeContext;
 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.store.CoreOptions;
-import org.apache.flink.table.store.connector.FlinkRowData;
-import org.apache.flink.table.store.connector.FlinkRowWrapper;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateFilter;
@@ -39,6 +37,8 @@ import org.apache.flink.table.store.utils.TypeUtils;
 
 import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
 
+import org.apache.paimon.connector.FlinkRowData;
+import org.apache.paimon.connector.FlinkRowWrapper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -60,9 +60,9 @@ import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.connector.RocksDBOptions.LOOKUP_CACHE_ROWS;
 import static org.apache.flink.table.store.file.predicate.PredicateBuilder.transformFieldMapping;
 import static org.apache.flink.table.store.utils.Preconditions.checkArgument;
+import static org.apache.paimon.connector.RocksDBOptions.LOOKUP_CACHE_ROWS;
 
 /** A lookup {@link TableFunction} for file store. */
 public class FileStoreLookupFunction implements Serializable, Closeable {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/LookupRuntimeProviderFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/LookupRuntimeProviderFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
index ffc9a256e..7b5bb5644 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/LookupRuntimeProviderFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupRuntimeProviderFactory.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.connector.source.LookupTableSource.LookupRuntimeProvider;
 import org.apache.flink.table.connector.source.lookup.LookupFunctionProvider;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/LookupTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/LookupTable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java
index 202013ca5..ef54b4eeb 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/LookupTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.types.RowType;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/NewLookupFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/NewLookupFunction.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/NewLookupFunction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/NewLookupFunction.java
index b5e17a296..90a5ed455 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/NewLookupFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/NewLookupFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.functions.FunctionContext;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/PrimaryKeyLookupTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/PrimaryKeyLookupTable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java
index e29fa68cc..95e9b5a06 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/PrimaryKeyLookupTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.serializer.InternalSerializers;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBSetState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBSetState.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBSetState.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBSetState.java
index 2780f88cf..5aed1281c 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBSetState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBSetState.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.serializer.Serializer;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBState.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
index 3f83f54a4..30e3c4ac7 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.serializer.Serializer;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBStateFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBStateFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java
index bd23d0276..b12f9d16c 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBStateFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBStateFactory.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
-import org.apache.flink.table.store.connector.RocksDBOptions;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.serializer.Serializer;
 
+import org.apache.paimon.connector.RocksDBOptions;
 import org.rocksdb.ColumnFamilyDescriptor;
 import org.rocksdb.ColumnFamilyHandle;
 import org.rocksdb.ColumnFamilyOptions;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBValueState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBValueState.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBValueState.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBValueState.java
index 12e7d1773..c147cb2eb 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/RocksDBValueState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBValueState.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.serializer.Serializer;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/SecondaryIndexLookupTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/SecondaryIndexLookupTable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java
index d2c624bc2..d1f3ae279 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/lookup/SecondaryIndexLookupTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.data.serializer.InternalSerializers;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/BucketStreamPartitioner.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/BucketStreamPartitioner.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
index d8bd0c20e..a18087263 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/BucketStreamPartitioner.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
@@ -16,19 +16,20 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.io.network.api.writer.SubtaskStateMapper;
 import org.apache.flink.runtime.plugable.SerializationDelegate;
 import org.apache.flink.streaming.runtime.partitioner.StreamPartitioner;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.connector.FlinkRowWrapper;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.table.sink.BucketComputer;
 import org.apache.flink.table.store.table.sink.PartitionComputer;
 
+import org.apache.paimon.connector.FlinkRowWrapper;
+
 import java.util.Objects;
 import java.util.function.Function;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/Committable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committable.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/Committable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committable.java
index 57cbda8de..e9fe5fd3a 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/Committable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 /** Committable produced by {@link PrepareCommitOperator}. */
 public class Committable {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommittableSerializer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableSerializer.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommittableSerializer.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableSerializer.java
index ea140e465..a2e4a5101 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommittableSerializer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.core.io.SimpleVersionedSerializer;
 import org.apache.flink.table.store.table.sink.CommitMessage;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommittableStateManager.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java
index 8ef8d5dc6..0e945b371 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableStateManager.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommittableTypeInfo.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableTypeInfo.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommittableTypeInfo.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableTypeInfo.java
index b4f34d286..b21e67d01 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommittableTypeInfo.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableTypeInfo.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.api.common.ExecutionConfig;
 import org.apache.flink.api.common.typeinfo.TypeInformation;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/Committer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/Committer.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java
index 763041d78..f6e8e30af 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/Committer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/Committer.java
@@ -17,7 +17,7 @@
  *
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.table.store.file.manifest.ManifestCommittable;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommitterOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommitterOperator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java
index 69c0c4b82..f8a9df5e5 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CommitterOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommitterOperator.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CompactorSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CompactorSink.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
index c234858f8..316ed52cd 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CompactorSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CompactorSinkBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CompactorSinkBuilder.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
index c57063a28..3c513eb6c 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/CompactorSinkBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.streaming.api.datastream.DataStreamSink;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FileStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FileStoreSink.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
index 9958fdc78..dd07e2b17 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FileStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.connector.VersionedSerializerWrapper;
 import org.apache.flink.table.store.file.manifest.ManifestCommittableSerializer;
 import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.sink.LogSinkFunction;
 import org.apache.flink.util.function.SerializableFunction;
 
+import org.apache.paimon.connector.VersionedSerializerWrapper;
+
 import javax.annotation.Nullable;
 
 import java.util.Map;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FlinkSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FlinkSink.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
index 81e13809c..8a06cfe11 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FlinkSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.configuration.ExecutionOptions;
@@ -31,17 +31,18 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.streaming.api.functions.sink.DiscardingSink;
 import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.connector.utils.StreamExecutionEnvironmentUtils;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.utils.Preconditions;
 import org.apache.flink.util.function.SerializableFunction;
 
+import org.apache.paimon.connector.utils.StreamExecutionEnvironmentUtils;
+
 import java.io.Serializable;
 import java.util.UUID;
 
-import static org.apache.flink.table.store.connector.FlinkConnectorOptions.CHANGELOG_PRODUCER_FULL_COMPACTION_TRIGGER_INTERVAL;
-import static org.apache.flink.table.store.connector.FlinkConnectorOptions.CHANGELOG_PRODUCER_LOOKUP_WAIT;
+import static org.apache.paimon.connector.FlinkConnectorOptions.CHANGELOG_PRODUCER_FULL_COMPACTION_TRIGGER_INTERVAL;
+import static org.apache.paimon.connector.FlinkConnectorOptions.CHANGELOG_PRODUCER_LOOKUP_WAIT;
 
 /** Abstract sink of table store. */
 public abstract class FlinkSink implements Serializable {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FlinkSinkBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FlinkSinkBuilder.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
index 7358201dc..84f8c9c71 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FlinkSinkBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.annotation.VisibleForTesting;
 import org.apache.flink.streaming.api.datastream.DataStream;
@@ -24,10 +24,10 @@ import org.apache.flink.streaming.api.datastream.DataStreamSink;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.streaming.api.transformations.PartitionTransformation;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.connector.FlinkConnectorOptions;
 import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.sink.LogSinkFunction;
+
+import org.apache.paimon.connector.FlinkConnectorOptions;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FullChangelogStoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FullChangelogStoreSinkWrite.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
index d1424aed2..2bcc5077c 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/FullChangelogStoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.api.common.state.ListState;
 import org.apache.flink.api.common.state.ListStateDescriptor;
@@ -30,7 +30,6 @@ import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.connector.BinaryRowTypeSerializer;
 import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.Snapshot;
@@ -38,6 +37,7 @@ import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.sink.SinkRecord;
 
+import org.apache.paimon.connector.BinaryRowTypeSerializer;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/LogOffsetCommittable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogOffsetCommittable.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/LogOffsetCommittable.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogOffsetCommittable.java
index 8e474807f..c837ff490 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/LogOffsetCommittable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogOffsetCommittable.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import java.nio.ByteBuffer;
 import java.util.Objects;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/table/sink/LogSinkFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogSinkFunction.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/table/sink/LogSinkFunction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogSinkFunction.java
index b484b4d58..355d518fa 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/table/sink/LogSinkFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogSinkFunction.java
@@ -16,9 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.table.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.streaming.api.functions.sink.SinkFunction;
+import org.apache.flink.table.store.table.sink.SinkRecord;
 
 /** Log {@link SinkFunction} with {@link WriteCallback}. */
 public interface LogSinkFunction extends SinkFunction<SinkRecord> {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/LookupChangelogStoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/LookupChangelogStoreSinkWrite.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java
index 4c64d1d7e..14175b336 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/LookupChangelogStoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/NoopCommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/NoopCommittableStateManager.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java
index 2f45f9984..865baeb3a 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/NoopCommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/NoopCommittableStateManager.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/OffsetRowDataHashStreamPartitioner.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/OffsetRowDataHashStreamPartitioner.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
index 7a9c9f6ba..780f6e2f6 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/OffsetRowDataHashStreamPartitioner.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
@@ -16,18 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.io.network.api.writer.SubtaskStateMapper;
 import org.apache.flink.runtime.plugable.SerializationDelegate;
 import org.apache.flink.streaming.runtime.partitioner.StreamPartitioner;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.connector.FlinkRowWrapper;
 import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.utils.OffsetRow;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.connector.FlinkRowWrapper;
+
 /**
  * {@link StreamPartitioner} to partition {@link RowData} according to its hash value from an {@link
  * OffsetRow}.
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/PrepareCommitOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/PrepareCommitOperator.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/PrepareCommitOperator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/PrepareCommitOperator.java
index 6730a27c3..374c151c9 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/PrepareCommitOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/PrepareCommitOperator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.streaming.api.operators.AbstractStreamOperator;
 import org.apache.flink.streaming.api.operators.BoundedOneInput;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/RestoreAndFailCommittableStateManager.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/RestoreAndFailCommittableStateManager.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
index e0ddedbff..52d8b822d 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/RestoreAndFailCommittableStateManager.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/RestoreAndFailCommittableStateManager.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.api.common.state.ListState;
 import org.apache.flink.api.common.state.ListStateDescriptor;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StateUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StateUtils.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StateUtils.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StateUtils.java
index d0579c3c8..26839f20a 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StateUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StateUtils.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.api.common.state.ListState;
 import org.apache.flink.api.common.state.ListStateDescriptor;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreCommitter.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreCommitter.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
index 2a0a06abe..6e6ed826e 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreCommitter.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.table.store.file.manifest.ManifestCommittable;
 import org.apache.flink.table.store.table.sink.CommitMessage;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreCompactOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
similarity index 93%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreCompactOperator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
index f44ae1711..995ff8dfa 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreCompactOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
@@ -16,13 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.connector.FlinkRowWrapper;
 import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.data.serializer.InternalRowSerializer;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -31,6 +30,8 @@ import org.apache.flink.table.store.file.utils.OffsetRow;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.utils.Preconditions;
 
+import org.apache.paimon.connector.FlinkRowWrapper;
+
 import java.io.IOException;
 import java.util.List;
 
@@ -38,8 +39,8 @@ import java.util.List;
  * A dedicated operator for manual triggered compaction.
  *
  * <p>In-coming records are generated by sources built from {@link
- * org.apache.flink.table.store.connector.source.CompactorSourceBuilder}. The records will contain
- * partition keys in the first few columns, and bucket number in the last column.
+ * org.apache.paimon.connector.source.CompactorSourceBuilder}. The records will contain partition
+ * keys in the first few columns, and bucket number in the last column.
  */
 public class StoreCompactOperator extends PrepareCommitOperator {
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreSinkWrite.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
index f515e0f3b..d48dd6417 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWrite.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreSinkWriteImpl.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreSinkWriteImpl.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
index 5f0f2b3ae..a4328ab70 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreSinkWriteImpl.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreSinkWriteImpl.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreWriteOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreWriteOperator.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreWriteOperator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreWriteOperator.java
index 9b5061a6c..67e2089bb 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/StoreWriteOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreWriteOperator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.api.common.functions.util.FunctionUtils;
 import org.apache.flink.api.common.state.CheckpointListener;
@@ -33,12 +33,12 @@ import org.apache.flink.streaming.runtime.tasks.ProcessingTimeService;
 import org.apache.flink.streaming.runtime.tasks.StreamTask;
 import org.apache.flink.streaming.util.functions.StreamingFunctionUtils;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.connector.FlinkRowWrapper;
-import org.apache.flink.table.store.log.LogWriteCallback;
 import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.sink.LogSinkFunction;
 import org.apache.flink.table.store.table.sink.SinkRecord;
 
+import org.apache.paimon.connector.FlinkRowWrapper;
+import org.apache.paimon.connector.log.LogWriteCallback;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/TableStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/TableStoreSink.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
index a548d44b9..4c120c6d3 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/sink/TableStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.table.catalog.ObjectIdentifier;
@@ -28,21 +28,21 @@ import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
 import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
 import org.apache.flink.table.store.CoreOptions.MergeEngine;
-import org.apache.flink.table.store.connector.FlinkCatalog;
-import org.apache.flink.table.store.connector.FlinkConnectorOptions;
-import org.apache.flink.table.store.connector.TableStoreDataStreamSinkProvider;
 import org.apache.flink.table.store.file.catalog.CatalogLock;
 import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.flink.table.store.log.LogSinkProvider;
-import org.apache.flink.table.store.log.LogStoreTableFactory;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.table.AppendOnlyFileStoreTable;
 import org.apache.flink.table.store.table.ChangelogValueCountFileStoreTable;
 import org.apache.flink.table.store.table.ChangelogWithKeyFileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTable;
-import org.apache.flink.table.store.table.sink.LogSinkFunction;
 import org.apache.flink.types.RowKind;
 
+import org.apache.paimon.connector.FlinkCatalog;
+import org.apache.paimon.connector.FlinkConnectorOptions;
+import org.apache.paimon.connector.TableStoreDataStreamSinkProvider;
+import org.apache.paimon.connector.log.LogSinkProvider;
+import org.apache.paimon.connector.log.LogStoreTableFactory;
+
 import javax.annotation.Nullable;
 
 import java.util.HashMap;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/CompactorSourceBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/CompactorSourceBuilder.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java
index f9443aeae..cb7395b7e 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/CompactorSourceBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/CompactorSourceBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.common.eventtime.WatermarkStrategy;
 import org.apache.flink.api.connector.source.Source;
@@ -24,7 +24,6 @@ import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
-import org.apache.flink.table.store.connector.LogicalTypeConversion;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.table.FileStoreTable;
@@ -35,6 +34,8 @@ import org.apache.flink.table.store.table.source.snapshot.FullStartingScanner;
 import org.apache.flink.table.store.table.system.BucketsTable;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.connector.LogicalTypeConversion;
+
 import javax.annotation.Nullable;
 
 import java.util.Collections;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/ContinuousFileSplitEnumerator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumerator.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/ContinuousFileSplitEnumerator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumerator.java
index baaf820fa..df3f0c6bc 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/ContinuousFileSplitEnumerator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.SourceEvent;
 import org.apache.flink.api.connector.source.SplitEnumerator;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/ContinuousFileStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/ContinuousFileStoreSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java
index 79d583031..e1456132d 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/ContinuousFileStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/ContinuousFileStoreSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.Boundedness;
 import org.apache.flink.api.connector.source.SourceReaderContext;
@@ -32,7 +32,7 @@ import javax.annotation.Nullable;
 import java.util.ArrayList;
 import java.util.Collection;
 
-import static org.apache.flink.table.store.connector.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
+import static org.apache.paimon.connector.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
 
 /** Unbounded {@link FlinkSource} for reading records. It continuously monitors new snapshots. */
 public class ContinuousFileStoreSource extends FlinkSource {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceReader.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceReader.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceReader.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceReader.java
index 5c31a0d2e..5cfe0aaf2 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceReader.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.SourceReader;
 import org.apache.flink.api.connector.source.SourceReaderContext;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplit.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplit.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplit.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplit.java
index 4ff027ead..3629eeeac 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplit.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplit.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.SourceSplit;
 import org.apache.flink.table.store.table.source.Split;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitGenerator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitGenerator.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitGenerator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitGenerator.java
index 92ae8ceb7..de3cde41e 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitGenerator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitGenerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.table.store.table.source.TableScan;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitReader.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitReader.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitReader.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitReader.java
index 7b32b0c49..6cae5ebb0 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitReader.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitReader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.connector.base.source.reader.RecordsWithSplitIds;
 import org.apache.flink.connector.base.source.reader.splitreader.SplitReader;
@@ -27,13 +27,14 @@ import org.apache.flink.connector.file.src.util.MutableRecordAndPosition;
 import org.apache.flink.connector.file.src.util.Pool;
 import org.apache.flink.connector.file.src.util.RecordAndPosition;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.connector.FlinkRowData;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.reader.RecordReader;
 import org.apache.flink.table.store.reader.RecordReader.RecordIterator;
 import org.apache.flink.table.store.table.source.Split;
 import org.apache.flink.table.store.table.source.TableRead;
 
+import org.apache.paimon.connector.FlinkRowData;
+
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitSerializer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializer.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitSerializer.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializer.java
index 85b8e8746..b17f4adc7 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitSerializer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.core.io.SimpleVersionedSerializer;
 import org.apache.flink.core.memory.DataInputViewStreamWrapper;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitState.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitState.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitState.java
index b07fb7908..e4ca4efcb 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FileStoreSourceSplitState.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.connector.file.src.util.CheckpointedPosition;
 import org.apache.flink.connector.file.src.util.RecordAndPosition;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FlinkSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSource.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FlinkSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSource.java
index eca174881..dceed8373 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FlinkSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.Source;
 import org.apache.flink.api.connector.source.SourceReader;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FlinkSourceBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FlinkSourceBuilder.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
index 784916c69..343753c57 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FlinkSourceBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.common.eventtime.WatermarkStrategy;
 import org.apache.flink.api.connector.source.Boundedness;
@@ -29,20 +29,21 @@ import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.CoreOptions.StartupMode;
-import org.apache.flink.table.store.connector.Projection;
 import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.log.LogSourceProvider;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.source.StreamDataTableScan;
 import org.apache.flink.table.types.logical.LogicalType;
 import org.apache.flink.table.types.logical.RowType;
 
+import org.apache.paimon.connector.Projection;
+import org.apache.paimon.connector.log.LogSourceProvider;
+
 import javax.annotation.Nullable;
 
 import java.util.Optional;
 
-import static org.apache.flink.table.store.connector.LogicalTypeConversion.toLogicalType;
+import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
 
 /**
  * Source builder to build a Flink {@link StaticFileStoreSource} or {@link
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FlinkTableSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FlinkTableSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
index d438d7bbb..1eb00966f 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/FlinkTableSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkTableSource.java
@@ -16,20 +16,21 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.table.connector.source.ScanTableSource;
 import org.apache.flink.table.connector.source.abilities.SupportsFilterPushDown;
 import org.apache.flink.table.connector.source.abilities.SupportsLimitPushDown;
 import org.apache.flink.table.connector.source.abilities.SupportsProjectionPushDown;
 import org.apache.flink.table.expressions.ResolvedExpression;
-import org.apache.flink.table.store.connector.LogicalTypeConversion;
-import org.apache.flink.table.store.connector.PredicateConverter;
 import org.apache.flink.table.store.file.predicate.Predicate;
 import org.apache.flink.table.store.file.predicate.PredicateBuilder;
 import org.apache.flink.table.store.table.Table;
 import org.apache.flink.table.types.logical.RowType;
 
+import org.apache.paimon.connector.LogicalTypeConversion;
+import org.apache.paimon.connector.PredicateConverter;
+
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/LogHybridSourceFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/LogHybridSourceFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java
index 4036bc178..ce4373a32 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/LogHybridSourceFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/LogHybridSourceFactory.java
@@ -16,14 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.Source;
 import org.apache.flink.connector.base.source.hybrid.HybridSource;
 import org.apache.flink.connector.base.source.hybrid.HybridSource.SourceFactory;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.file.Snapshot;
-import org.apache.flink.table.store.log.LogSourceProvider;
+
+import org.apache.paimon.connector.log.LogSourceProvider;
 
 import java.util.Map;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/PendingSplitsCheckpoint.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/PendingSplitsCheckpoint.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/PendingSplitsCheckpoint.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/PendingSplitsCheckpoint.java
index 789a1a774..bd0eb5bf4 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/PendingSplitsCheckpoint.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/PendingSplitsCheckpoint.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import javax.annotation.Nullable;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/PendingSplitsCheckpointSerializer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializer.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/PendingSplitsCheckpointSerializer.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializer.java
index 2f129ea21..5a5356b26 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/PendingSplitsCheckpointSerializer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializer.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.core.io.SimpleVersionedSerializer;
 import org.apache.flink.core.memory.DataInputDeserializer;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/RecordsFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/RecordsFunction.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/RecordsFunction.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/RecordsFunction.java
index a5050535f..87021d2c2 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/RecordsFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/RecordsFunction.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.SourceOutput;
 import org.apache.flink.connector.base.source.reader.RecordEmitter;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/SimpleSystemSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SimpleSystemSource.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/SimpleSystemSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SimpleSystemSource.java
index 87f88942d..675d3a4e1 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/SimpleSystemSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SimpleSystemSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.Boundedness;
 import org.apache.flink.api.connector.source.SplitEnumerator;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/SingleIteratorRecords.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SingleIteratorRecords.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/SingleIteratorRecords.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SingleIteratorRecords.java
index 47d2f1edc..e03dfa7e8 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/SingleIteratorRecords.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SingleIteratorRecords.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.connector.base.source.reader.RecordsWithSplitIds;
 import org.apache.flink.connector.file.src.reader.BulkFormat;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/StaticFileStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/StaticFileStoreSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
index 439e230d1..b955d6cee 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/StaticFileStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.Boundedness;
 import org.apache.flink.api.connector.source.SplitEnumerator;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/StaticFileStoreSplitEnumerator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/StaticFileStoreSplitEnumerator.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java
index 82dcd20a9..13b614b08 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/StaticFileStoreSplitEnumerator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.SplitEnumerator;
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/SystemTableSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/SystemTableSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java
index d15069e3e..0f5956919 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/SystemTableSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/SystemTableSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.Source;
 import org.apache.flink.table.connector.ChangelogMode;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/TableStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/TableStoreSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
index b2b0ae096..dbe941423 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/source/TableStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.common.eventtime.WatermarkStrategy;
 import org.apache.flink.table.catalog.ObjectIdentifier;
@@ -29,13 +29,7 @@ import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
 import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
 import org.apache.flink.table.store.CoreOptions.LogConsistency;
-import org.apache.flink.table.store.connector.FlinkConnectorOptions;
-import org.apache.flink.table.store.connector.TableStoreDataStreamScanProvider;
-import org.apache.flink.table.store.connector.lookup.FileStoreLookupFunction;
-import org.apache.flink.table.store.connector.lookup.LookupRuntimeProviderFactory;
 import org.apache.flink.table.store.file.predicate.Predicate;
-import org.apache.flink.table.store.log.LogSourceProvider;
-import org.apache.flink.table.store.log.LogStoreTableFactory;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.table.AppendOnlyFileStoreTable;
 import org.apache.flink.table.store.table.ChangelogValueCountFileStoreTable;
@@ -43,6 +37,13 @@ import org.apache.flink.table.store.table.ChangelogWithKeyFileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.utils.Projection;
 
+import org.apache.paimon.connector.FlinkConnectorOptions;
+import org.apache.paimon.connector.TableStoreDataStreamScanProvider;
+import org.apache.paimon.connector.log.LogSourceProvider;
+import org.apache.paimon.connector.log.LogStoreTableFactory;
+import org.apache.paimon.connector.lookup.FileStoreLookupFunction;
+import org.apache.paimon.connector.lookup.LookupRuntimeProviderFactory;
+
 import javax.annotation.Nullable;
 
 import java.util.stream.IntStream;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/utils/StreamExecutionEnvironmentUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/utils/StreamExecutionEnvironmentUtils.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/utils/StreamExecutionEnvironmentUtils.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/utils/StreamExecutionEnvironmentUtils.java
index 2af52bae8..75eaa0f8c 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/utils/StreamExecutionEnvironmentUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/utils/StreamExecutionEnvironmentUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.utils;
+package org.apache.paimon.connector.utils;
 
 import org.apache.flink.configuration.ReadableConfig;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/utils/TableEnvironmentUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/utils/TableEnvironmentUtils.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/utils/TableEnvironmentUtils.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/utils/TableEnvironmentUtils.java
index ce8183309..82ff003e2 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/java/org/apache/flink/table/store/connector/utils/TableEnvironmentUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/utils/TableEnvironmentUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.utils;
+package org.apache.paimon.connector.utils;
 
 import org.apache.flink.api.dag.Transformation;
 import org.apache.flink.table.api.TableEnvironment;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory b/paimon-flink/paimon-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
similarity index 81%
rename from flink-table-store-flink/flink-table-store-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
rename to paimon-flink/paimon-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
index 90364c6b8..302bbf296 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
+++ b/paimon-flink/paimon-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
@@ -13,6 +13,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.flink.table.store.connector.TableStoreConnectorFactory
-org.apache.flink.table.store.connector.FlinkCatalogFactory
-org.apache.flink.table.store.kafka.KafkaLogStoreFactory
+org.apache.paimon.connector.TableStoreConnectorFactory
+org.apache.paimon.connector.FlinkCatalogFactory
+org.apache.paimon.connector.kafka.KafkaLogStoreFactory
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/AbstractTableStoreFactoryTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AbstractTableStoreFactoryTest.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/AbstractTableStoreFactoryTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AbstractTableStoreFactoryTest.java
index 4f08ac893..354488427 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/AbstractTableStoreFactoryTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AbstractTableStoreFactoryTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.types.logical.IntType;
 import org.apache.flink.table.types.logical.LogicalType;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/AppendOnlyTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/AppendOnlyTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java
index 7a50fc5e0..dd31de471 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/AppendOnlyTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/AppendOnlyTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.planner.factories.TestValuesTableFactory;
 import org.apache.flink.table.store.file.Snapshot;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/BatchFileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/BatchFileStoreITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
index b6ab05917..6d6bd1766 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/BatchFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.types.Row;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/BinaryRowTypeSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/BinaryRowTypeSerializerTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
index 8d0c1582e..8d8c50c6a 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/BinaryRowTypeSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BinaryRowTypeSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.typeutils.SerializerTestBase;
 import org.apache.flink.api.common.typeutils.TypeSerializer;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CatalogITCaseBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index fe52936b3..1ac5218c1 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
@@ -30,7 +30,6 @@ import org.apache.flink.table.catalog.exceptions.TableNotExistException;
 import org.apache.flink.table.delegation.Parser;
 import org.apache.flink.table.operations.Operation;
 import org.apache.flink.table.operations.ddl.CreateCatalogOperation;
-import org.apache.flink.table.store.connector.util.AbstractTestBase;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
@@ -41,6 +40,7 @@ import org.apache.flink.util.CloseableIterator;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
+import org.apache.paimon.connector.util.AbstractTestBase;
 import org.junit.jupiter.api.BeforeEach;
 
 import javax.annotation.Nullable;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CatalogTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CatalogTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
index 156ba9829..146d2e5a7 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CatalogTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CatalogTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.file.schema.SchemaChange;
 import org.apache.flink.table.store.file.schema.SchemaManager;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ChangelogModeTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
similarity index 93%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ChangelogModeTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
index efeaba04d..fb8fbead0 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ChangelogModeTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
@@ -16,25 +16,25 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.catalog.ObjectIdentifier;
 import org.apache.flink.table.connector.ChangelogMode;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.connector.sink.TableStoreSink;
-import org.apache.flink.table.store.connector.source.TableStoreSource;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
-import org.apache.flink.table.store.kafka.KafkaLogStoreFactory;
-import org.apache.flink.table.store.log.LogStoreTableFactory;
 import org.apache.flink.table.store.options.Options;
 import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.FileStoreTableFactory;
 import org.apache.flink.table.store.types.IntType;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.connector.kafka.KafkaLogStoreFactory;
+import org.apache.paimon.connector.log.LogStoreTableFactory;
+import org.apache.paimon.connector.sink.TableStoreSink;
+import org.apache.paimon.connector.source.TableStoreSource;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ChangelogWithKeyFileStoreTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ChangelogWithKeyFileStoreTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
index efedcf281..5cb40a797 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ChangelogWithKeyFileStoreTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogWithKeyFileStoreTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.JobStatus;
 import org.apache.flink.api.common.restartstrategy.RestartStrategies;
@@ -27,14 +27,14 @@ import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
 import org.apache.flink.table.api.TableResult;
 import org.apache.flink.table.api.config.ExecutionConfigOptions;
-import org.apache.flink.table.store.connector.action.FlinkActions;
-import org.apache.flink.table.store.connector.util.AbstractTestBase;
 import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.types.Row;
 import org.apache.flink.types.RowKind;
 import org.apache.flink.util.CloseableIterator;
 
+import org.apache.paimon.connector.action.FlinkActions;
+import org.apache.paimon.connector.util.AbstractTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.Timeout;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CompositePkAndMultiPartitionedTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableITCase.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CompositePkAndMultiPartitionedTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableITCase.java
index 693adce93..86ceaf33f 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CompositePkAndMultiPartitionedTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableITCase.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.connector.util.AbstractTestBase;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.connector.util.AbstractTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
@@ -29,17 +29,17 @@ import java.util.Collections;
 import java.util.List;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.bEnv;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildQuery;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.checkFileStorePath;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.createTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertOverwrite;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertOverwritePartition;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testBatchRead;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.bEnv;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQuery;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.checkFileStorePath;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertOverwrite;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertOverwritePartition;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
 
 /** Table store IT case when the table has composite primary keys and multiple partition fields. */
 public class CompositePkAndMultiPartitionedTableITCase extends AbstractTestBase {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
index a6d2f4bcb..26331ae17 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CompositePkAndMultiPartitionedTableWIthKafkaLogITCase.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.file.utils.BlockingIterator;
-import org.apache.flink.table.store.kafka.KafkaTableTestBase;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.connector.kafka.KafkaTableTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
@@ -31,23 +31,23 @@ import java.util.Collections;
 import java.util.List;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.SCAN_LATEST;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.assertNoMoreRecords;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.bEnv;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildQuery;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.checkFileStorePath;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.createTableWithKafkaLog;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertInto;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertIntoPartition;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testBatchRead;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testStreamingRead;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.SCAN_LATEST;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.assertNoMoreRecords;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.bEnv;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQuery;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.checkFileStorePath;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTableWithKafkaLog;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertInto;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoPartition;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
 
 /**
  * IT cases of streaming reading and writing tables which have composite primary keys and multiple
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ComputedColumnAndWatermarkTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ComputedColumnAndWatermarkTableITCase.java
similarity index 93%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ComputedColumnAndWatermarkTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ComputedColumnAndWatermarkTableITCase.java
index f05623e58..07a49645d 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ComputedColumnAndWatermarkTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ComputedColumnAndWatermarkTableITCase.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.kafka.KafkaTableTestBase;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.connector.kafka.KafkaTableTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
@@ -31,18 +31,18 @@ import java.util.List;
 import java.util.stream.Collectors;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.SCAN_LATEST;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildQuery;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.createTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.createTableWithKafkaLog;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testBatchRead;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testStreamingRead;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.SCAN_LATEST;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQuery;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTableWithKafkaLog;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
 
 /** Table store IT case when the table has computed column and watermark spec. */
 public class ComputedColumnAndWatermarkTableITCase extends KafkaTableTestBase {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ContinuousFileStoreITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index ccd6cf8d3..d12575e84 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.ValidationException;
 import org.apache.flink.table.store.file.Snapshot;
@@ -39,7 +39,7 @@ import java.util.Comparator;
 import java.util.List;
 import java.util.concurrent.TimeoutException;
 
-import static org.apache.flink.table.store.connector.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
+import static org.apache.paimon.connector.FlinkConnectorOptions.STREAMING_READ_ATOMIC;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CreateTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CreateTableITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CreateTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CreateTableITCase.java
index 2ec3e1643..40e1fbbc9 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/CreateTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/CreateTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.table.api.internal.TableEnvironmentImpl;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/DropTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/DropTableITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/DropTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/DropTableITCase.java
index 02710e0e6..a6086632e 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/DropTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/DropTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.table.api.ValidationException;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FileStoreITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
index 0f754f33f..fbe576df0 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.api.connector.source.Boundedness;
@@ -33,12 +33,6 @@ import org.apache.flink.table.data.conversion.DataStructureConverters;
 import org.apache.flink.table.runtime.typeutils.InternalSerializers;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.connector.sink.FileStoreSink;
-import org.apache.flink.table.store.connector.sink.FlinkSinkBuilder;
-import org.apache.flink.table.store.connector.source.ContinuousFileStoreSource;
-import org.apache.flink.table.store.connector.source.FlinkSourceBuilder;
-import org.apache.flink.table.store.connector.source.StaticFileStoreSource;
-import org.apache.flink.table.store.connector.util.AbstractTestBase;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
@@ -58,6 +52,12 @@ import org.apache.flink.types.Row;
 import org.apache.flink.types.RowKind;
 import org.apache.flink.util.CloseableIterator;
 
+import org.apache.paimon.connector.sink.FileStoreSink;
+import org.apache.paimon.connector.sink.FlinkSinkBuilder;
+import org.apache.paimon.connector.source.ContinuousFileStoreSource;
+import org.apache.paimon.connector.source.FlinkSourceBuilder;
+import org.apache.paimon.connector.source.StaticFileStoreSource;
+import org.apache.paimon.connector.util.AbstractTestBase;
 import org.junit.jupiter.api.TestTemplate;
 import org.junit.jupiter.api.extension.ExtendWith;
 
@@ -76,8 +76,8 @@ import java.util.stream.Stream;
 import static org.apache.flink.table.store.CoreOptions.BUCKET;
 import static org.apache.flink.table.store.CoreOptions.FILE_FORMAT;
 import static org.apache.flink.table.store.CoreOptions.PATH;
-import static org.apache.flink.table.store.connector.LogicalTypeConversion.toDataType;
 import static org.apache.flink.table.store.file.utils.FailingFileIO.retryArtificialException;
+import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.api.Assumptions.assumeFalse;
 import static org.junit.jupiter.api.Assumptions.assumeTrue;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FileSystemCatalogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FileSystemCatalogITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
index 678bb781d..81b253e0a 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FileSystemCatalogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileSystemCatalogITCase.java
@@ -16,17 +16,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.file.catalog.AbstractCatalog;
 import org.apache.flink.table.store.file.catalog.Catalog;
 import org.apache.flink.table.store.file.catalog.Identifier;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.table.store.fs.Path;
-import org.apache.flink.table.store.kafka.KafkaTableTestBase;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
 
+import org.apache.paimon.connector.kafka.KafkaTableTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FiniteTestSource.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FiniteTestSource.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FiniteTestSource.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FiniteTestSource.java
index de9abc06b..263a887cc 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FiniteTestSource.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FiniteTestSource.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.state.CheckpointListener;
 import org.apache.flink.api.common.state.ListState;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FlinkCatalogTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FlinkCatalogTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
index e079c5732..32a68d49e 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FlinkCatalogTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FlinkCatalogTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.DataTypes;
 import org.apache.flink.table.api.Schema;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ForceCompactionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ForceCompactionITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
index cf2d705dd..38c5c13b9 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ForceCompactionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FullCompactionFileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FullCompactionFileStoreITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java
index acb004feb..4fc80baeb 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/FullCompactionFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FullCompactionFileStoreITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LargeDataITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LargeDataITCase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LargeDataITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LargeDataITCase.java
index 1b2e3ffc1..04fbe629e 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LargeDataITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LargeDataITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.types.Row;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LogSystemITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LogSystemITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
index 6ff30ad42..2805d8ea4 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LogSystemITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LogSystemITCase.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.TableResult;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
-import org.apache.flink.table.store.kafka.KafkaTableTestBase;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.connector.kafka.KafkaTableTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LookupChangelogWithAggITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LookupChangelogWithAggITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java
index a863e1136..ed5f5cf92 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LookupChangelogWithAggITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupChangelogWithAggITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LookupJoinITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
index 4fd36130e..e25a606f0 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/MappingTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/MappingTableITCase.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/MappingTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/MappingTableITCase.java
index 91baf6c67..aae34acb5 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/MappingTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/MappingTableITCase.java
@@ -16,16 +16,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
 import org.apache.flink.table.api.ValidationException;
-import org.apache.flink.table.store.connector.util.AbstractTestBase;
 import org.apache.flink.types.Row;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
+import org.apache.paimon.connector.util.AbstractTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PartialUpdateITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PartialUpdateITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PartialUpdateITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PartialUpdateITCase.java
index a48b512df..dca0a98f6 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PartialUpdateITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PartialUpdateITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.config.ExecutionConfigOptions;
 import org.apache.flink.types.Row;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PreAggregationITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PreAggregationITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PreAggregationITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PreAggregationITCase.java
index c33ba4471..24f8c91fe 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PreAggregationITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PreAggregationITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.types.Row;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PredicateConverterTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PredicateConverterTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
index 4f58aa43e..0e35def13 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PredicateConverterTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateConverterTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.DataTypes;
 import org.apache.flink.table.expressions.CallExpression;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PredicateITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateITCase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PredicateITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateITCase.java
index 81651e834..abee498f3 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/PredicateITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/PredicateITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.types.Row;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ReadWriteTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ReadWriteTableITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
index db2a4f83f..d580e3144 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ReadWriteTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.api.dag.Transformation;
 import org.apache.flink.configuration.Configuration;
@@ -34,8 +34,6 @@ import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.factories.FactoryUtil;
 import org.apache.flink.table.runtime.connector.sink.SinkRuntimeProviderContext;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.connector.sink.TableStoreSink;
-import org.apache.flink.table.store.connector.util.AbstractTestBase;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.table.store.fs.Path;
@@ -45,6 +43,8 @@ import org.apache.flink.table.types.logical.RowType;
 import org.apache.flink.table.types.logical.VarCharType;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.connector.sink.TableStoreSink;
+import org.apache.paimon.connector.util.AbstractTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
@@ -57,27 +57,27 @@ import java.util.Map;
 import java.util.UUID;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.flink.table.store.connector.AbstractTableStoreFactory.buildFileStoreTable;
-import static org.apache.flink.table.store.connector.FlinkConnectorOptions.SCAN_PARALLELISM;
-import static org.apache.flink.table.store.connector.FlinkConnectorOptions.SINK_PARALLELISM;
-import static org.apache.flink.table.store.connector.TableStoreTestBase.createResolvedTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.bEnv;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.bExeEnv;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildQuery;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.checkFileStorePath;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.createTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertInto;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertOverwrite;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertOverwritePartition;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.sEnv;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testBatchRead;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testStreamingRead;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
+import static org.apache.paimon.connector.AbstractTableStoreFactory.buildFileStoreTable;
+import static org.apache.paimon.connector.FlinkConnectorOptions.SCAN_PARALLELISM;
+import static org.apache.paimon.connector.FlinkConnectorOptions.SINK_PARALLELISM;
+import static org.apache.paimon.connector.TableStoreTestBase.createResolvedTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.bEnv;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.bExeEnv;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQuery;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.checkFileStorePath;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertInto;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertOverwrite;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertOverwritePartition;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.sEnv;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/RescaleBucketITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/RescaleBucketITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
index a61dd8a11..4f4e315b8 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/RescaleBucketITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.core.execution.JobClient;
 import org.apache.flink.core.execution.SavepointFormatType;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/SchemaChangeITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/SchemaChangeITCase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/SchemaChangeITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/SchemaChangeITCase.java
index d275b0ef0..66528bbf7 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/SchemaChangeITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/SchemaChangeITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/SerializableRowData.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/SerializableRowData.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/SerializableRowData.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/SerializableRowData.java
index 8a315f3d9..8b101e36f 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/SerializableRowData.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/SerializableRowData.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.typeutils.TypeSerializer;
 import org.apache.flink.core.memory.DataInputViewStreamWrapper;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ShowCreateUtil.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ShowCreateUtil.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ShowCreateUtil.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ShowCreateUtil.java
index eaac2b1d3..187b1c053 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/ShowCreateUtil.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ShowCreateUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.TableException;
 import org.apache.flink.table.catalog.CatalogBaseTable;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/StreamingReadWriteTableWithKafkaLogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/StreamingReadWriteTableWithKafkaLogITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
index afdb0e096..9b09442d0 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/StreamingReadWriteTableWithKafkaLogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
-import org.apache.flink.table.store.kafka.KafkaTableTestBase;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.connector.kafka.KafkaTableTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
@@ -36,23 +36,23 @@ import java.util.Map;
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
 import static org.apache.flink.table.store.CoreOptions.SCAN_MODE;
 import static org.apache.flink.table.store.CoreOptions.SCAN_TIMESTAMP_MILLIS;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.SCAN_LATEST;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.assertNoMoreRecords;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildQuery;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.checkFileStorePath;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.createTableWithKafkaLog;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertInto;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertIntoPartition;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertOverwritePartition;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testBatchRead;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testStreamingRead;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.SCAN_LATEST;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.assertNoMoreRecords;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQuery;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQueryWithTableOptions;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.checkFileStorePath;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTableWithKafkaLog;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTemporaryTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertInto;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoFromTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertIntoPartition;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertOverwritePartition;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingReadWithReadFirst;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
 
 /** Streaming reading and writing with Kafka log IT cases. */
 public class StreamingReadWriteTableWithKafkaLogITCase extends KafkaTableTestBase {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/StreamingWarehouseITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/StreamingWarehouseITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
index 7b4b2e4c5..ee623e593 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/StreamingWarehouseITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingWarehouseITCase.java
@@ -16,22 +16,22 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.JobStatus;
 import org.apache.flink.core.execution.JobClient;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
-import org.apache.flink.table.store.kafka.KafkaTableTestBase;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.connector.kafka.KafkaTableTestBase;
 import org.junit.jupiter.api.Test;
 
 import java.time.LocalDateTime;
 import java.util.function.Function;
 
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.bEnv;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.sEnv;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.bEnv;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.sEnv;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Table store IT case to test concurrent batch overwrite and streaming insert into. */
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/TableStoreTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/TableStoreTestBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java
index a9e8f8864..0613b921a 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/TableStoreTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/TableStoreTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector;
+package org.apache.paimon.connector;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.api.common.restartstrategy.RestartStrategies;
@@ -30,7 +30,6 @@ import org.apache.flink.table.catalog.ObjectIdentifier;
 import org.apache.flink.table.catalog.ResolvedCatalogTable;
 import org.apache.flink.table.catalog.ResolvedSchema;
 import org.apache.flink.table.catalog.UniqueConstraint;
-import org.apache.flink.table.store.connector.util.AbstractTestBase;
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.logical.IntType;
 import org.apache.flink.table.types.logical.RowType;
@@ -39,6 +38,7 @@ import org.apache.flink.table.types.utils.TypeConversions;
 import org.apache.flink.types.Row;
 
 import org.apache.commons.io.FileUtils;
+import org.apache.paimon.connector.util.AbstractTestBase;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.MethodSource;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/ActionITCaseBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/ActionITCaseBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
index 6e2d36871..896787dde 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/ActionITCaseBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/ActionITCaseBase.java
@@ -16,10 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.action;
+package org.apache.paimon.connector.action;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.flink.table.store.connector.util.AbstractTestBase;
 import org.apache.flink.table.store.data.DataFormatTestUtil;
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.data.InternalRow;
@@ -37,6 +36,7 @@ import org.apache.flink.table.store.table.source.Split;
 import org.apache.flink.table.store.table.source.TableRead;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.connector.util.AbstractTestBase;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/CompactActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/CompactActionITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
index 21c7aae32..36c25055e 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/CompactActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
@@ -16,14 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.action;
+package org.apache.paimon.connector.action;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.core.execution.JobClient;
 import org.apache.flink.streaming.api.CheckpointingMode;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.connector.FlinkConnectorOptions;
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.table.FileStoreTable;
@@ -35,6 +34,7 @@ import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.table.store.utils.CommonTestUtils;
 
+import org.apache.paimon.connector.FlinkConnectorOptions;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.Timeout;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/DeleteActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
similarity index 92%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/DeleteActionITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
index afd32a860..4971f8bed 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/DeleteActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DeleteActionITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.action;
+package org.apache.paimon.connector.action;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.file.Snapshot;
@@ -38,10 +38,10 @@ import java.util.HashMap;
 import java.util.List;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testStreamingRead;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.params.provider.Arguments.arguments;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/DropPartitionActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/DropPartitionActionITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
index 28da14c47..dbb9aaf10 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/DropPartitionActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/DropPartitionActionITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.action;
+package org.apache.paimon.connector.action;
 
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.file.Snapshot;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/MergeIntoActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/MergeIntoActionITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
index 27ef4dcad..4f448329e 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/action/MergeIntoActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.action;
+package org.apache.paimon.connector.action;
 
 import org.apache.flink.table.planner.factories.TestValuesTableFactory;
 import org.apache.flink.table.store.CoreOptions;
@@ -36,15 +36,15 @@ import java.util.List;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
 import static org.apache.flink.table.store.CoreOptions.CHANGELOG_PRODUCER;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildDdl;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.createTable;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.init;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.insertInto;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.sEnv;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testBatchRead;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.testStreamingRead;
-import static org.apache.flink.table.store.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildDdl;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTable;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.init;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.insertInto;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.sEnv;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testBatchRead;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.testStreamingRead;
+import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.validateStreamingReadResult;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 import static org.junit.jupiter.params.provider.Arguments.arguments;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/kafka/KafkaLogSerializationTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogSerializationTest.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/kafka/KafkaLogSerializationTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogSerializationTest.java
index 480657747..03d0cdc7b 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/kafka/KafkaLogSerializationTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogSerializationTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.kafka;
+package org.apache.paimon.connector.kafka;
 
 import org.apache.flink.connector.kafka.source.reader.deserializer.KafkaRecordDeserializationSchema;
 import org.apache.flink.table.data.RowData;
@@ -33,10 +33,10 @@ import org.junit.jupiter.api.Test;
 
 import java.util.concurrent.atomic.AtomicReference;
 
-import static org.apache.flink.table.store.connector.FlinkRowData.toFlinkRowKind;
-import static org.apache.flink.table.store.kafka.KafkaLogTestUtils.discoverKafkaLogFactory;
-import static org.apache.flink.table.store.kafka.KafkaLogTestUtils.testContext;
-import static org.apache.flink.table.store.kafka.KafkaLogTestUtils.testRecord;
+import static org.apache.paimon.connector.FlinkRowData.toFlinkRowKind;
+import static org.apache.paimon.connector.kafka.KafkaLogTestUtils.discoverKafkaLogFactory;
+import static org.apache.paimon.connector.kafka.KafkaLogTestUtils.testContext;
+import static org.apache.paimon.connector.kafka.KafkaLogTestUtils.testRecord;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Test for {@link KafkaLogSerializationSchema} and {@link KafkaLogDeserializationSchema}. */
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/kafka/KafkaLogTestUtils.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/kafka/KafkaLogTestUtils.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
index 1917896a6..0dcc3e69f 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/kafka/KafkaLogTestUtils.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.kafka;
+package org.apache.paimon.connector.kafka;
 
 import org.apache.flink.api.common.typeinfo.TypeInformation;
 import org.apache.flink.configuration.Configuration;
@@ -37,7 +37,6 @@ import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
 import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
 import org.apache.flink.table.store.CoreOptions.LogConsistency;
 import org.apache.flink.table.store.data.GenericRow;
-import org.apache.flink.table.store.log.LogStoreTableFactory;
 import org.apache.flink.table.store.table.sink.SinkRecord;
 import org.apache.flink.table.store.types.RowKind;
 import org.apache.flink.table.types.DataType;
@@ -46,6 +45,8 @@ import org.apache.flink.table.types.logical.LogicalType;
 import org.apache.flink.table.types.logical.RowType;
 import org.apache.flink.table.types.utils.TypeConversions;
 
+import org.apache.paimon.connector.log.LogStoreTableFactory;
+
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashMap;
@@ -59,8 +60,8 @@ import static org.apache.flink.table.store.CoreOptions.LOG_CHANGELOG_MODE;
 import static org.apache.flink.table.store.CoreOptions.LOG_CONSISTENCY;
 import static org.apache.flink.table.store.data.BinaryRow.EMPTY_ROW;
 import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
-import static org.apache.flink.table.store.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
-import static org.apache.flink.table.store.kafka.KafkaLogOptions.TOPIC;
+import static org.apache.paimon.connector.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
+import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
 
 /** Utils for the test of {@link KafkaLogStoreFactory}. */
 public class KafkaLogTestUtils {
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/kafka/KafkaTableTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaTableTestBase.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/kafka/KafkaTableTestBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaTableTestBase.java
index 667bd4564..6803b816c 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/kafka/KafkaTableTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaTableTestBase.java
@@ -16,13 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.kafka;
+package org.apache.paimon.connector.kafka;
 
 import org.apache.flink.api.common.restartstrategy.RestartStrategies;
 import org.apache.flink.streaming.api.environment.ExecutionCheckpointingOptions;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.api.bridge.java.StreamTableEnvironment;
-import org.apache.flink.table.store.connector.util.AbstractTestBase;
 import org.apache.flink.util.DockerImageVersions;
 
 import org.apache.kafka.clients.admin.AdminClient;
@@ -35,6 +34,7 @@ import org.apache.kafka.common.TopicPartition;
 import org.apache.kafka.common.errors.TopicExistsException;
 import org.apache.kafka.common.errors.UnknownTopicOrPartitionException;
 import org.apache.kafka.common.serialization.StringDeserializer;
+import org.apache.paimon.connector.util.AbstractTestBase;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.extension.AfterAllCallback;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/lookup/LookupTableTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/lookup/LookupTableTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java
index 9bae2205c..d1a095861 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/lookup/LookupTableTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/lookup/LookupTableTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.lookup;
+package org.apache.paimon.connector.lookup;
 
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.data.InternalRow;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CommittableSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CommittableSerializerTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java
index 6834bd340..6aad1a57e 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CommittableSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommittableSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.table.store.file.io.CompactIncrement;
 import org.apache.flink.table.store.file.io.NewFilesIncrement;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CommitterOperatorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CommitterOperatorTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
index 03a98ead7..2da3db628 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CommitterOperatorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTest.java
@@ -16,14 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.api.common.ExecutionConfig;
 import org.apache.flink.api.common.typeutils.TypeSerializer;
 import org.apache.flink.runtime.checkpoint.OperatorSubtaskState;
 import org.apache.flink.streaming.api.watermark.Watermark;
 import org.apache.flink.streaming.util.OneInputStreamOperatorTestHarness;
-import org.apache.flink.table.store.connector.VersionedSerializerWrapper;
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.file.manifest.ManifestCommittableSerializer;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
@@ -32,6 +31,7 @@ import org.apache.flink.table.store.table.FileStoreTable;
 import org.apache.flink.table.store.table.sink.CommitMessage;
 import org.apache.flink.table.store.table.sink.StreamTableWrite;
 
+import org.apache.paimon.connector.VersionedSerializerWrapper;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CommitterOperatorTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CommitterOperatorTestBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
index ec594730a..7de87b40c 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CommitterOperatorTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.data.InternalRow;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CompactorSinkITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CompactorSinkITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
index 9a0518dee..3aabd750d 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/CompactorSinkITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CompactorSinkITCase.java
@@ -16,14 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.connector.source.CompactorSourceBuilder;
-import org.apache.flink.table.store.connector.util.AbstractTestBase;
 import org.apache.flink.table.store.data.BinaryString;
 import org.apache.flink.table.store.data.GenericRow;
 import org.apache.flink.table.store.file.Snapshot;
@@ -43,6 +41,8 @@ import org.apache.flink.table.store.types.DataType;
 import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
 
+import org.apache.paimon.connector.source.CompactorSourceBuilder;
+import org.apache.paimon.connector.util.AbstractTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/FileStoreShuffleBucketTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/FileStoreShuffleBucketTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
index eeff959b7..8c3fc3ea7 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/FileStoreShuffleBucketTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/FileStoreShuffleBucketTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.runtime.state.StateSnapshotContext;
@@ -25,8 +25,6 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
-import org.apache.flink.table.store.connector.CatalogITCaseBase;
-import org.apache.flink.table.store.connector.FlinkConnectorOptions;
 import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.data.InternalRow;
 import org.apache.flink.table.store.file.io.DataFileMeta;
@@ -36,6 +34,8 @@ import org.apache.flink.table.store.table.FileStoreTableFactory;
 import org.apache.flink.table.store.table.sink.SinkRecord;
 import org.apache.flink.table.types.logical.RowType;
 
+import org.apache.paimon.connector.CatalogITCaseBase;
+import org.apache.paimon.connector.FlinkConnectorOptions;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
@@ -46,7 +46,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
-import static org.apache.flink.table.store.connector.LogicalTypeConversion.toLogicalType;
+import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
 /** Tests of shuffle data by bucket and partition. */
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/LogOffsetCommittableTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/LogOffsetCommittableTest.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/LogOffsetCommittableTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/LogOffsetCommittableTest.java
index bf1330d5e..be317e545 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/LogOffsetCommittableTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/LogOffsetCommittableTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/SinkSavepointITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/SinkSavepointITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
index d63c7a851..5ecf67e90 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/sink/SinkSavepointITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/SinkSavepointITCase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.sink;
+package org.apache.paimon.connector.sink;
 
 import org.apache.flink.api.common.JobStatus;
 import org.apache.flink.configuration.CheckpointingOptions;
@@ -32,12 +32,12 @@ import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
 import org.apache.flink.table.api.bridge.java.StreamTableEnvironment;
 import org.apache.flink.table.api.config.ExecutionConfigOptions;
-import org.apache.flink.table.store.connector.util.AbstractTestBase;
 import org.apache.flink.table.store.file.utils.FailingFileIO;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
 import org.apache.flink.util.ExceptionUtils;
 
+import org.apache.paimon.connector.util.AbstractTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.Timeout;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/CompactorSourceITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/CompactorSourceITCase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
index 9c618983e..ce11e32a2 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/CompactorSourceITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/CompactorSourceITCase.java
@@ -16,12 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.connector.util.AbstractTestBase;
 import org.apache.flink.table.store.data.BinaryRow;
 import org.apache.flink.table.store.data.BinaryRowWriter;
 import org.apache.flink.table.store.data.BinaryString;
@@ -41,6 +40,7 @@ import org.apache.flink.table.store.types.DataTypes;
 import org.apache.flink.table.store.types.RowType;
 import org.apache.flink.util.CloseableIterator;
 
+import org.apache.paimon.connector.util.AbstractTestBase;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/ContinuousFileSplitEnumeratorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/ContinuousFileSplitEnumeratorTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java
index 628279c28..20f7b2cfc 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/ContinuousFileSplitEnumeratorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/ContinuousFileSplitEnumeratorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.connector.source.SplitEnumeratorContext;
 import org.apache.flink.connector.testutils.source.reader.TestingSplitEnumeratorContext;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceReaderTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceReaderTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
index df4e3d6bf..1e3b0bc90 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceReaderTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceReaderTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.connector.testutils.source.reader.TestingReaderContext;
 import org.apache.flink.table.store.file.schema.Schema;
@@ -35,8 +35,8 @@ import org.junit.jupiter.api.io.TempDir;
 import java.util.Arrays;
 import java.util.Collections;
 
-import static org.apache.flink.table.store.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
 import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link FileStoreSourceReader}. */
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitGeneratorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitGeneratorTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
index 1fc9bf6fb..a2ebdc169 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitGeneratorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitGeneratorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.manifest.FileKind;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitReaderTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
similarity index 97%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitReaderTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
index 4c65cf540..5fde50fbd 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitReaderTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitReaderTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.java.tuple.Tuple2;
 import org.apache.flink.connector.base.source.reader.RecordsWithSplitIds;
@@ -51,10 +51,10 @@ import java.util.List;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import static org.apache.flink.table.store.connector.LogicalTypeConversion.toDataType;
-import static org.apache.flink.table.store.connector.source.FileStoreSourceSplitSerializerTest.newFile;
-import static org.apache.flink.table.store.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
 import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
+import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newFile;
+import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitSerializerTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
index dcaae26ef..7c5dbeeb7 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.core.io.SimpleVersionedSerialization;
 import org.apache.flink.table.store.data.BinaryRow;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitStateTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java
similarity index 90%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitStateTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java
index 539486b26..6816bbe80 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/FileStoreSourceSplitStateTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/FileStoreSourceSplitStateTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.connector.file.src.util.RecordAndPosition;
 
@@ -24,9 +24,9 @@ import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
 
-import static org.apache.flink.table.store.connector.source.FileStoreSourceSplitSerializerTest.newFile;
-import static org.apache.flink.table.store.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
 import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newFile;
+import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link FileStoreSourceSplitState}. */
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/PendingSplitsCheckpointSerializerTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java
similarity index 94%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/PendingSplitsCheckpointSerializerTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java
index 7548cb61b..e4ec53b48 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/PendingSplitsCheckpointSerializerTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/PendingSplitsCheckpointSerializerTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.core.io.SimpleVersionedSerialization;
 
@@ -26,9 +26,9 @@ import java.io.IOException;
 import java.util.Arrays;
 import java.util.Collections;
 
-import static org.apache.flink.table.store.connector.source.FileStoreSourceSplitSerializerTest.newFile;
-import static org.apache.flink.table.store.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
 import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
+import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newFile;
+import static org.apache.paimon.connector.source.FileStoreSourceSplitSerializerTest.newSourceSplit;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link PendingSplitsCheckpointSerializer}. */
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/RecordsFunctionTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/RecordsFunctionTest.java
similarity index 93%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/RecordsFunctionTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/RecordsFunctionTest.java
index 0e3750a2b..3fb94d6dd 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/RecordsFunctionTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/RecordsFunctionTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.connector.base.source.reader.RecordsWithSplitIds;
 import org.apache.flink.connector.file.src.reader.BulkFormat;
@@ -26,9 +26,9 @@ import org.apache.flink.connector.file.src.util.RecordAndPosition;
 import org.apache.flink.connector.testutils.source.reader.TestingReaderOutput;
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.connector.source.RecordsFunction.IterateRecordsFunction;
-import org.apache.flink.table.store.connector.source.RecordsFunction.SingleRecordsFunction;
 
+import org.apache.paimon.connector.source.RecordsFunction.IterateRecordsFunction;
+import org.apache.paimon.connector.source.RecordsFunction.SingleRecordsFunction;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/SingleIteratorRecordsTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/SingleIteratorRecordsTest.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/SingleIteratorRecordsTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/SingleIteratorRecordsTest.java
index e426d879b..b57ca692f 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/SingleIteratorRecordsTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/SingleIteratorRecordsTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.connector.file.src.reader.BulkFormat;
 import org.apache.flink.connector.file.src.util.SingletonResultIterator;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/StaticFileStoreSplitEnumeratorTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumeratorTest.java
similarity index 96%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/StaticFileStoreSplitEnumeratorTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumeratorTest.java
index 04ceee518..d1480fb54 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/StaticFileStoreSplitEnumeratorTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/StaticFileStoreSplitEnumeratorTest.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.connector.testutils.source.reader.TestingSplitEnumeratorContext;
 
@@ -28,7 +28,7 @@ import java.util.List;
 import java.util.Map;
 
 import static org.apache.flink.connector.testutils.source.reader.TestingSplitEnumeratorContext.SplitAssignmentState;
-import static org.apache.flink.table.store.connector.source.ContinuousFileSplitEnumeratorTest.createSnapshotSplit;
+import static org.apache.paimon.connector.source.ContinuousFileSplitEnumeratorTest.createSnapshotSplit;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Unit tests for the {@link StaticFileStoreSplitEnumerator}. */
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/TestChangelogDataReadWrite.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/TestChangelogDataReadWrite.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
index 294e9d9ca..df4e01ab3 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/source/TestChangelogDataReadWrite.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.source;
+package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.java.tuple.Tuple2;
 import org.apache.flink.table.store.CoreOptions;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/util/AbstractTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/AbstractTestBase.java
similarity index 98%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/util/AbstractTestBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/AbstractTestBase.java
index 457e97f33..b534b086f 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/util/AbstractTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/AbstractTestBase.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.util;
+package org.apache.paimon.connector.util;
 
 import org.apache.flink.client.program.ClusterClient;
 import org.apache.flink.runtime.client.JobStatusMessage;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/util/MiniClusterWithClientExtension.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/MiniClusterWithClientExtension.java
similarity index 99%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/util/MiniClusterWithClientExtension.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/MiniClusterWithClientExtension.java
index ad2264240..6715c3c30 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/util/MiniClusterWithClientExtension.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/MiniClusterWithClientExtension.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.util;
+package org.apache.paimon.connector.util;
 
 import org.apache.flink.annotation.Experimental;
 import org.apache.flink.client.program.ClusterClient;
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/util/ReadWriteTableTestUtil.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
similarity index 95%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/util/ReadWriteTableTestUtil.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
index 69841a597..a392c729b 100644
--- a/flink-table-store-flink/flink-table-store-flink-common/src/test/java/org/apache/flink/table/store/connector/util/ReadWriteTableTestUtil.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.connector.util;
+package org.apache.paimon.connector.util;
 
 import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.api.common.restartstrategy.RestartStrategies;
@@ -26,12 +26,13 @@ import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
 import org.apache.flink.table.api.bridge.java.StreamTableEnvironment;
 import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.connector.ReadWriteTableITCase;
-import org.apache.flink.table.store.connector.StreamingReadWriteTableWithKafkaLogITCase;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
 
+import org.apache.paimon.connector.ReadWriteTableITCase;
+import org.apache.paimon.connector.StreamingReadWriteTableWithKafkaLogITCase;
+
 import javax.annotation.Nullable;
 
 import java.nio.file.Paths;
@@ -46,11 +47,11 @@ import java.util.concurrent.TimeoutException;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.registerData;
 import static org.apache.flink.table.store.CoreOptions.SCAN_MODE;
-import static org.apache.flink.table.store.connector.FlinkConnectorOptions.LOG_SYSTEM;
-import static org.apache.flink.table.store.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
-import static org.apache.flink.table.store.kafka.KafkaLogOptions.TOPIC;
-import static org.apache.flink.table.store.kafka.KafkaTableTestBase.createTopicIfNotExists;
-import static org.apache.flink.table.store.kafka.KafkaTableTestBase.getBootstrapServers;
+import static org.apache.paimon.connector.FlinkConnectorOptions.LOG_SYSTEM;
+import static org.apache.paimon.connector.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
+import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
+import static org.apache.paimon.connector.kafka.KafkaTableTestBase.createTopicIfNotExists;
+import static org.apache.paimon.connector.kafka.KafkaTableTestBase.getBootstrapServers;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /**
diff --git a/flink-table-store-flink/flink-table-store-flink-common/src/test/resources/log4j2-test.properties b/paimon-flink/paimon-flink-common/src/test/resources/log4j2-test.properties
similarity index 100%
rename from flink-table-store-flink/flink-table-store-flink-common/src/test/resources/log4j2-test.properties
rename to paimon-flink/paimon-flink-common/src/test/resources/log4j2-test.properties
diff --git a/flink-table-store-flink/pom.xml b/paimon-flink/pom.xml
similarity index 95%
rename from flink-table-store-flink/pom.xml
rename to paimon-flink/pom.xml
index be1837398..f3cc62853 100644
--- a/flink-table-store-flink/pom.xml
+++ b/paimon-flink/pom.xml
@@ -34,10 +34,10 @@ under the License.
     <packaging>pom</packaging>
 
     <modules>
-        <module>flink-table-store-flink-common</module>
-        <module>flink-table-store-flink-1.14</module>
-        <module>flink-table-store-flink-1.15</module>
-        <module>flink-table-store-flink-1.16</module>
+        <module>paimon-flink-common</module>
+        <module>paimon-flink-1.14</module>
+        <module>paimon-flink-1.15</module>
+        <module>paimon-flink-1.16</module>
     </modules>
 
     <dependencies>
diff --git a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
index ae72249b6..a12dd7d70 100644
--- a/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
+++ b/paimon-hive/paimon-hive-catalog/src/test/java/org/apache/paimon/hive/HiveCatalogITCase.java
@@ -24,7 +24,6 @@ import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
 import org.apache.flink.table.api.TableException;
 import org.apache.flink.table.api.internal.TableEnvironmentImpl;
-import org.apache.flink.table.store.connector.FlinkCatalog;
 import org.apache.flink.table.store.file.catalog.AbstractCatalog;
 import org.apache.flink.table.store.file.catalog.Catalog;
 import org.apache.flink.table.store.file.catalog.CatalogLock;
@@ -40,6 +39,7 @@ import com.klarna.hiverunner.annotations.HiveRunnerSetup;
 import com.klarna.hiverunner.annotations.HiveSQL;
 import com.klarna.hiverunner.config.HiveRunnerConfig;
 import org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
+import org.apache.paimon.connector.FlinkCatalog;
 import org.assertj.core.api.Assertions;
 import org.junit.After;
 import org.junit.Assert;
diff --git a/pom.xml b/pom.xml
index 156f4798a..b069216f6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -57,7 +57,7 @@ under the License.
         <module>flink-table-store-codegen-loader</module>
         <module>flink-table-store-common</module>
         <module>flink-table-store-core</module>
-        <module>flink-table-store-flink</module>
+        <module>paimon-flink</module>
         <module>flink-table-store-docs</module>
         <module>flink-table-store-e2e-tests</module>
         <module>flink-table-store-filesystems</module>


[incubator-paimon] 01/32: [core] Rename paimon benchmark

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit d7662df2dbc4a643ef5cbc149a3466933f568a30
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 12:00:59 2023 +0800

    [core] Rename paimon benchmark
---
 .../paimon-cluster-benchmark}/README.md                  |  0
 .../paimon-cluster-benchmark}/pom.xml                    |  0
 .../src/main/assemblies/bin.xml                          |  0
 .../java/org/apache/paimon}/benchmark/Benchmark.java     | 12 ++++++------
 .../org/apache/paimon}/benchmark/BenchmarkOptions.java   |  2 +-
 .../main/java/org/apache/paimon}/benchmark/Query.java    |  5 +++--
 .../java/org/apache/paimon}/benchmark/QueryRunner.java   | 16 ++++++++--------
 .../src/main/java/org/apache/paimon}/benchmark/Sink.java |  4 ++--
 .../apache/paimon}/benchmark/metric/BenchmarkMetric.java |  9 ++++-----
 .../apache/paimon}/benchmark/metric/FlinkRestClient.java |  5 ++---
 .../paimon}/benchmark/metric/JobBenchmarkMetric.java     |  4 ++--
 .../apache/paimon}/benchmark/metric/MetricReporter.java  |  4 ++--
 .../apache/paimon}/benchmark/metric/cpu/CpuMetric.java   |  6 +++---
 .../paimon}/benchmark/metric/cpu/CpuMetricReceiver.java  |  6 +++---
 .../paimon}/benchmark/metric/cpu/CpuMetricSender.java    | 10 +++++-----
 .../paimon}/benchmark/metric/cpu/CpuTimeTracker.java     |  2 +-
 .../paimon}/benchmark/metric/cpu/OperatingSystem.java    |  2 +-
 .../benchmark/metric/cpu/ProcfsBasedProcessTree.java     |  7 +++----
 .../benchmark/metric/cpu/ShellCommandExecutor.java       |  2 +-
 .../paimon}/benchmark/metric/cpu/SysInfoLinux.java       |  2 +-
 .../apache/paimon}/benchmark/metric/cpu/clock/Clock.java |  2 +-
 .../paimon}/benchmark/metric/cpu/clock/SystemClock.java  |  2 +-
 .../paimon}/benchmark/utils/AutoClosableProcess.java     |  2 +-
 .../benchmark/utils/BenchmarkGlobalConfiguration.java    |  2 +-
 .../apache/paimon}/benchmark/utils/BenchmarkUtils.java   |  2 +-
 .../src/main/resources/bin/config.sh                     |  0
 .../src/main/resources/bin/metric_client.sh              |  0
 .../src/main/resources/bin/run_benchmark.sh              |  0
 .../src/main/resources/bin/setup_cluster.sh              |  0
 .../src/main/resources/bin/shutdown_cluster.sh           |  0
 .../src/main/resources/conf/benchmark.yaml               |  0
 .../src/main/resources/conf/log4j.properties             |  0
 .../src/main/resources/queries/q1.sql                    |  0
 .../src/main/resources/queries/queries.yaml              |  0
 .../src/main/resources/sinks/table_store.yaml            |  0
 .../paimon-micro-benchmarks}/pom.xml                     |  0
 .../java/org/apache/paimon}/benchmark/Benchmark.java     |  2 +-
 .../org/apache/paimon}/benchmark/TableBenchmark.java     |  2 +-
 .../apache/paimon}/benchmark/TableWriterBenchmark.java   |  2 +-
 .../src/test/resources/log4j2-test.properties            |  0
 .../pom.xml                                              |  4 ++--
 pom.xml                                                  |  2 +-
 42 files changed, 59 insertions(+), 61 deletions(-)

diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/README.md b/paimon-benchmark/paimon-cluster-benchmark/README.md
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/README.md
rename to paimon-benchmark/paimon-cluster-benchmark/README.md
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/pom.xml b/paimon-benchmark/paimon-cluster-benchmark/pom.xml
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/pom.xml
rename to paimon-benchmark/paimon-cluster-benchmark/pom.xml
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/assemblies/bin.xml b/paimon-benchmark/paimon-cluster-benchmark/src/main/assemblies/bin.xml
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/assemblies/bin.xml
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/assemblies/bin.xml
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/Benchmark.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/Benchmark.java
similarity index 95%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/Benchmark.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/Benchmark.java
index 3634c5b12..efb4e70f2 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/Benchmark.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/Benchmark.java
@@ -16,19 +16,19 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark;
+package org.apache.paimon.benchmark;
 
 import org.apache.flink.configuration.Configuration;
-import org.apache.flink.table.store.benchmark.metric.FlinkRestClient;
-import org.apache.flink.table.store.benchmark.metric.JobBenchmarkMetric;
-import org.apache.flink.table.store.benchmark.metric.cpu.CpuMetricReceiver;
-import org.apache.flink.table.store.benchmark.utils.BenchmarkGlobalConfiguration;
-import org.apache.flink.table.store.benchmark.utils.BenchmarkUtils;
 
 import org.apache.commons.cli.CommandLine;
 import org.apache.commons.cli.DefaultParser;
 import org.apache.commons.cli.Option;
 import org.apache.commons.cli.Options;
+import org.apache.paimon.benchmark.metric.FlinkRestClient;
+import org.apache.paimon.benchmark.metric.JobBenchmarkMetric;
+import org.apache.paimon.benchmark.metric.cpu.CpuMetricReceiver;
+import org.apache.paimon.benchmark.utils.BenchmarkGlobalConfiguration;
+import org.apache.paimon.benchmark.utils.BenchmarkUtils;
 
 import java.io.File;
 import java.nio.file.Path;
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/BenchmarkOptions.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/BenchmarkOptions.java
similarity index 98%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/BenchmarkOptions.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/BenchmarkOptions.java
index 26ff9ab0b..fca5e5245 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/BenchmarkOptions.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/BenchmarkOptions.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark;
+package org.apache.paimon.benchmark;
 
 import org.apache.flink.configuration.ConfigOption;
 import org.apache.flink.configuration.ConfigOptions;
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/Query.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/Query.java
similarity index 97%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/Query.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/Query.java
index 12b2cf17c..a231257f3 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/Query.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/Query.java
@@ -16,11 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark;
+package org.apache.paimon.benchmark;
 
-import org.apache.flink.table.store.benchmark.utils.BenchmarkUtils;
 import org.apache.flink.util.FileUtils;
 
+import org.apache.paimon.benchmark.utils.BenchmarkUtils;
+
 import java.io.IOException;
 import java.nio.file.Path;
 import java.util.ArrayList;
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/QueryRunner.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/QueryRunner.java
similarity index 92%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/QueryRunner.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/QueryRunner.java
index 7ae2605fb..e1784ccec 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/QueryRunner.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/QueryRunner.java
@@ -16,18 +16,18 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark;
+package org.apache.paimon.benchmark;
 
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.core.fs.FileSystem;
-import org.apache.flink.table.store.benchmark.metric.FlinkRestClient;
-import org.apache.flink.table.store.benchmark.metric.JobBenchmarkMetric;
-import org.apache.flink.table.store.benchmark.metric.MetricReporter;
-import org.apache.flink.table.store.benchmark.metric.cpu.CpuMetricReceiver;
-import org.apache.flink.table.store.benchmark.utils.AutoClosableProcess;
-import org.apache.flink.table.store.benchmark.utils.BenchmarkGlobalConfiguration;
-import org.apache.flink.table.store.benchmark.utils.BenchmarkUtils;
 
+import org.apache.paimon.benchmark.metric.FlinkRestClient;
+import org.apache.paimon.benchmark.metric.JobBenchmarkMetric;
+import org.apache.paimon.benchmark.metric.MetricReporter;
+import org.apache.paimon.benchmark.metric.cpu.CpuMetricReceiver;
+import org.apache.paimon.benchmark.utils.AutoClosableProcess;
+import org.apache.paimon.benchmark.utils.BenchmarkGlobalConfiguration;
+import org.apache.paimon.benchmark.utils.BenchmarkUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/Sink.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/Sink.java
similarity index 95%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/Sink.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/Sink.java
index 3d31c4e68..e633bb05d 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/Sink.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/Sink.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark;
+package org.apache.paimon.benchmark;
 
-import org.apache.flink.table.store.benchmark.utils.BenchmarkUtils;
 import org.apache.flink.util.FileUtils;
 
 import org.apache.commons.io.FilenameUtils;
+import org.apache.paimon.benchmark.utils.BenchmarkUtils;
 
 import java.io.IOException;
 import java.nio.file.Files;
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/BenchmarkMetric.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/BenchmarkMetric.java
similarity index 88%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/BenchmarkMetric.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/BenchmarkMetric.java
index 85f4dbb98..376fbe25b 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/BenchmarkMetric.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/BenchmarkMetric.java
@@ -16,16 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric;
+package org.apache.paimon.benchmark.metric;
 
-import org.apache.flink.table.store.benchmark.utils.BenchmarkUtils;
+import org.apache.paimon.benchmark.utils.BenchmarkUtils;
 
 import javax.annotation.Nullable;
 
 /**
- * Metric collected per {@link
- * org.apache.flink.table.store.benchmark.BenchmarkOptions#METRIC_MONITOR_DURATION} for a single
- * query.
+ * Metric collected per {@link org.apache.paimon.benchmark.BenchmarkOptions#METRIC_MONITOR_DURATION}
+ * for a single query.
  */
 public class BenchmarkMetric {
     private final double rps;
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/FlinkRestClient.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/FlinkRestClient.java
similarity index 98%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/FlinkRestClient.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/FlinkRestClient.java
index 73996324b..2a69e37dd 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/FlinkRestClient.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/FlinkRestClient.java
@@ -16,9 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric;
-
-import org.apache.flink.table.store.benchmark.utils.BenchmarkUtils;
+package org.apache.paimon.benchmark.metric;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.node.ArrayNode;
@@ -37,6 +35,7 @@ import org.apache.http.impl.client.CloseableHttpClient;
 import org.apache.http.impl.client.HttpClientBuilder;
 import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
 import org.apache.http.util.EntityUtils;
+import org.apache.paimon.benchmark.utils.BenchmarkUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/JobBenchmarkMetric.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/JobBenchmarkMetric.java
similarity index 95%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/JobBenchmarkMetric.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/JobBenchmarkMetric.java
index 31572b627..1cf6abad3 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/JobBenchmarkMetric.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/JobBenchmarkMetric.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric;
+package org.apache.paimon.benchmark.metric;
 
-import org.apache.flink.table.store.benchmark.utils.BenchmarkUtils;
+import org.apache.paimon.benchmark.utils.BenchmarkUtils;
 
 /** The aggregated result of a single benchmark query. */
 public class JobBenchmarkMetric {
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/MetricReporter.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/MetricReporter.java
similarity index 98%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/MetricReporter.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/MetricReporter.java
index 53222bfa4..1fde549f2 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/MetricReporter.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/MetricReporter.java
@@ -16,11 +16,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric;
+package org.apache.paimon.benchmark.metric;
 
 import org.apache.flink.api.common.time.Deadline;
-import org.apache.flink.table.store.benchmark.metric.cpu.CpuMetricReceiver;
 
+import org.apache.paimon.benchmark.metric.cpu.CpuMetricReceiver;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuMetric.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuMetric.java
similarity index 96%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuMetric.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuMetric.java
index 1b878bc1e..bd8cb4ca4 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuMetric.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuMetric.java
@@ -16,9 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric.cpu;
-
-import org.apache.flink.table.store.benchmark.utils.BenchmarkUtils;
+package org.apache.paimon.benchmark.metric.cpu;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonCreator;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonIgnore;
@@ -28,6 +26,8 @@ import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonProcessin
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.node.ArrayNode;
 
+import org.apache.paimon.benchmark.utils.BenchmarkUtils;
+
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuMetricReceiver.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuMetricReceiver.java
similarity index 96%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuMetricReceiver.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuMetricReceiver.java
index 0b89836a6..947134fcc 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuMetricReceiver.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuMetricReceiver.java
@@ -16,12 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric.cpu;
+package org.apache.paimon.benchmark.metric.cpu;
 
 import org.apache.flink.configuration.Configuration;
-import org.apache.flink.table.store.benchmark.BenchmarkOptions;
-import org.apache.flink.table.store.benchmark.utils.BenchmarkGlobalConfiguration;
 
+import org.apache.paimon.benchmark.BenchmarkOptions;
+import org.apache.paimon.benchmark.utils.BenchmarkGlobalConfiguration;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuMetricSender.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuMetricSender.java
similarity index 95%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuMetricSender.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuMetricSender.java
index 0c461f26b..d8d6add04 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuMetricSender.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuMetricSender.java
@@ -16,15 +16,15 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric.cpu;
+package org.apache.paimon.benchmark.metric.cpu;
 
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.runtime.net.ConnectionUtils;
-import org.apache.flink.table.store.benchmark.BenchmarkOptions;
-import org.apache.flink.table.store.benchmark.utils.AutoClosableProcess;
-import org.apache.flink.table.store.benchmark.utils.BenchmarkGlobalConfiguration;
-import org.apache.flink.table.store.benchmark.utils.BenchmarkUtils;
 
+import org.apache.paimon.benchmark.BenchmarkOptions;
+import org.apache.paimon.benchmark.utils.AutoClosableProcess;
+import org.apache.paimon.benchmark.utils.BenchmarkGlobalConfiguration;
+import org.apache.paimon.benchmark.utils.BenchmarkUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuTimeTracker.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuTimeTracker.java
similarity index 98%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuTimeTracker.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuTimeTracker.java
index 2580a620f..12e3d75f0 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/CpuTimeTracker.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/CpuTimeTracker.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric.cpu;
+package org.apache.paimon.benchmark.metric.cpu;
 
 import java.math.BigInteger;
 
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/OperatingSystem.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/OperatingSystem.java
similarity index 98%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/OperatingSystem.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/OperatingSystem.java
index 490e02e0c..0e15ca154 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/OperatingSystem.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/OperatingSystem.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric.cpu;
+package org.apache.paimon.benchmark.metric.cpu;
 
 /** An enumeration indicating the operating system that the JVM runs on. */
 public enum OperatingSystem {
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/ProcfsBasedProcessTree.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/ProcfsBasedProcessTree.java
similarity index 99%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/ProcfsBasedProcessTree.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/ProcfsBasedProcessTree.java
index d790e0f63..9e685dd64 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/ProcfsBasedProcessTree.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/ProcfsBasedProcessTree.java
@@ -16,10 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric.cpu;
-
-import org.apache.flink.table.store.benchmark.metric.cpu.clock.Clock;
-import org.apache.flink.table.store.benchmark.metric.cpu.clock.SystemClock;
+package org.apache.paimon.benchmark.metric.cpu;
 
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.io.filefilter.AndFileFilter;
@@ -27,6 +24,8 @@ import org.apache.commons.io.filefilter.DirectoryFileFilter;
 import org.apache.commons.io.filefilter.RegexFileFilter;
 import org.apache.commons.lang3.ArrayUtils;
 import org.apache.commons.lang3.StringUtils;
+import org.apache.paimon.benchmark.metric.cpu.clock.Clock;
+import org.apache.paimon.benchmark.metric.cpu.clock.SystemClock;
 
 import java.io.BufferedReader;
 import java.io.File;
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/ShellCommandExecutor.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/ShellCommandExecutor.java
similarity index 97%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/ShellCommandExecutor.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/ShellCommandExecutor.java
index 74b8efebf..e3abc2d34 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/ShellCommandExecutor.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/ShellCommandExecutor.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric.cpu;
+package org.apache.paimon.benchmark.metric.cpu;
 
 import java.io.BufferedReader;
 import java.io.IOException;
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/SysInfoLinux.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/SysInfoLinux.java
similarity index 99%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/SysInfoLinux.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/SysInfoLinux.java
index 493146b72..776377589 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/SysInfoLinux.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/SysInfoLinux.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric.cpu;
+package org.apache.paimon.benchmark.metric.cpu;
 
 import java.io.BufferedReader;
 import java.io.FileInputStream;
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/clock/Clock.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/clock/Clock.java
similarity index 96%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/clock/Clock.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/clock/Clock.java
index 30fb8c341..a99c9ebee 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/clock/Clock.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/clock/Clock.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric.cpu.clock;
+package org.apache.paimon.benchmark.metric.cpu.clock;
 
 /**
  * A clock that gives access to time. This clock returns two flavors of time:
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/clock/SystemClock.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/clock/SystemClock.java
similarity index 96%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/clock/SystemClock.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/clock/SystemClock.java
index 88b70f491..d6cec4caa 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/cpu/clock/SystemClock.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/metric/cpu/clock/SystemClock.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.metric.cpu.clock;
+package org.apache.paimon.benchmark.metric.cpu.clock;
 
 /**
  * A clock that returns the time of the system / process.
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/utils/AutoClosableProcess.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/utils/AutoClosableProcess.java
similarity index 99%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/utils/AutoClosableProcess.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/utils/AutoClosableProcess.java
index 254ed13c2..4f79d7085 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/utils/AutoClosableProcess.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/utils/AutoClosableProcess.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.utils;
+package org.apache.paimon.benchmark.utils;
 
 import org.apache.flink.api.common.time.Deadline;
 import org.apache.flink.util.Preconditions;
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/utils/BenchmarkGlobalConfiguration.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/utils/BenchmarkGlobalConfiguration.java
similarity index 99%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/utils/BenchmarkGlobalConfiguration.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/utils/BenchmarkGlobalConfiguration.java
index 3a38afcb2..6e3bc0ce9 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/utils/BenchmarkGlobalConfiguration.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/utils/BenchmarkGlobalConfiguration.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.utils;
+package org.apache.paimon.benchmark.utils;
 
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.configuration.IllegalConfigurationException;
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/utils/BenchmarkUtils.java b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/utils/BenchmarkUtils.java
similarity index 98%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/utils/BenchmarkUtils.java
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/utils/BenchmarkUtils.java
index cba04d113..4dc832a61 100644
--- a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/java/org/apache/flink/table/store/benchmark/utils/BenchmarkUtils.java
+++ b/paimon-benchmark/paimon-cluster-benchmark/src/main/java/org/apache/paimon/benchmark/utils/BenchmarkUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark.utils;
+package org.apache.paimon.benchmark.utils;
 
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ObjectMapper;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/bin/config.sh b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/config.sh
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/bin/config.sh
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/config.sh
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/bin/metric_client.sh b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/metric_client.sh
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/bin/metric_client.sh
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/metric_client.sh
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/bin/run_benchmark.sh b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/run_benchmark.sh
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/bin/run_benchmark.sh
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/run_benchmark.sh
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/bin/setup_cluster.sh b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/setup_cluster.sh
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/bin/setup_cluster.sh
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/setup_cluster.sh
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/bin/shutdown_cluster.sh b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/shutdown_cluster.sh
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/bin/shutdown_cluster.sh
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/resources/bin/shutdown_cluster.sh
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/conf/benchmark.yaml b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/conf/benchmark.yaml
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/conf/benchmark.yaml
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/resources/conf/benchmark.yaml
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/conf/log4j.properties b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/conf/log4j.properties
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/conf/log4j.properties
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/resources/conf/log4j.properties
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/queries/q1.sql b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/queries/q1.sql
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/queries/q1.sql
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/resources/queries/q1.sql
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/queries/queries.yaml b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/queries/queries.yaml
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/queries/queries.yaml
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/resources/queries/queries.yaml
diff --git a/flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/sinks/table_store.yaml b/paimon-benchmark/paimon-cluster-benchmark/src/main/resources/sinks/table_store.yaml
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-cluster-benchmark/src/main/resources/sinks/table_store.yaml
rename to paimon-benchmark/paimon-cluster-benchmark/src/main/resources/sinks/table_store.yaml
diff --git a/flink-table-store-benchmark/flink-table-store-micro-benchmarks/pom.xml b/paimon-benchmark/paimon-micro-benchmarks/pom.xml
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-micro-benchmarks/pom.xml
rename to paimon-benchmark/paimon-micro-benchmarks/pom.xml
diff --git a/flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/java/org/apache/flink/table/store/benchmark/Benchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/Benchmark.java
similarity index 99%
rename from flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/java/org/apache/flink/table/store/benchmark/Benchmark.java
rename to paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/Benchmark.java
index accae9c03..38761e7b0 100644
--- a/flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/java/org/apache/flink/table/store/benchmark/Benchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/Benchmark.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark;
+package org.apache.paimon.benchmark;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.SystemUtils;
diff --git a/flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/java/org/apache/flink/table/store/benchmark/TableBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
similarity index 98%
rename from flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/java/org/apache/flink/table/store/benchmark/TableBenchmark.java
rename to paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
index ab426a6bb..43206ace5 100644
--- a/flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/java/org/apache/flink/table/store/benchmark/TableBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark;
+package org.apache.paimon.benchmark;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
diff --git a/flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/java/org/apache/flink/table/store/benchmark/TableWriterBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
similarity index 99%
rename from flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/java/org/apache/flink/table/store/benchmark/TableWriterBenchmark.java
rename to paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
index 2e8611fdb..eaeacdc19 100644
--- a/flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/java/org/apache/flink/table/store/benchmark/TableWriterBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.benchmark;
+package org.apache.paimon.benchmark;
 
 import org.apache.flink.table.store.CoreOptions;
 import org.apache.flink.table.store.options.Options;
diff --git a/flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/resources/log4j2-test.properties b/paimon-benchmark/paimon-micro-benchmarks/src/test/resources/log4j2-test.properties
similarity index 100%
rename from flink-table-store-benchmark/flink-table-store-micro-benchmarks/src/test/resources/log4j2-test.properties
rename to paimon-benchmark/paimon-micro-benchmarks/src/test/resources/log4j2-test.properties
diff --git a/flink-table-store-benchmark/pom.xml b/paimon-benchmark/pom.xml
similarity index 93%
rename from flink-table-store-benchmark/pom.xml
rename to paimon-benchmark/pom.xml
index d30a5d261..c5d6cdaab 100644
--- a/flink-table-store-benchmark/pom.xml
+++ b/paimon-benchmark/pom.xml
@@ -34,8 +34,8 @@ under the License.
     <packaging>pom</packaging>
 
     <modules>
-        <module>flink-table-store-cluster-benchmark</module>
-        <module>flink-table-store-micro-benchmarks</module>
+        <module>paimon-cluster-benchmark</module>
+        <module>paimon-micro-benchmarks</module>
     </modules>
 
     <properties>
diff --git a/pom.xml b/pom.xml
index e9dd516ed..8b042247b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -52,7 +52,7 @@ under the License.
     </scm>
 
     <modules>
-        <module>flink-table-store-benchmark</module>
+        <module>paimon-benchmark</module>
         <module>flink-table-store-codegen</module>
         <module>flink-table-store-codegen-loader</module>
         <module>flink-table-store-common</module>


[incubator-paimon] 18/32: [core] Rename paimon to move CodeGeneratorImpl

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 9cb13f5098f0bdb12f066f412fc4625425bca653
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 14:45:42 2023 +0800

    [core] Rename paimon to move CodeGeneratorImpl
---
 .../src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java        | 0
 .../src/main/java/org/apache/paimon/codegen/SortSpec.java                 | 0
 2 files changed, 0 insertions(+), 0 deletions(-)

diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java b/paimon-codegen/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java
rename to paimon-codegen/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/SortSpec.java b/paimon-codegen/src/main/java/org/apache/paimon/codegen/SortSpec.java
similarity index 100%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/SortSpec.java
rename to paimon-codegen/src/main/java/org/apache/paimon/codegen/SortSpec.java


[incubator-paimon] 17/32: [core] Rename paimon checkstyle

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 2027096985a689ae10f6b903cb437b9c71903610
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 14:38:31 2023 +0800

    [core] Rename paimon checkstyle
---
 .../apache/paimon/benchmark/TableBenchmark.java    | 12 +++++------
 .../paimon/benchmark/TableWriterBenchmark.java     |  1 -
 paimon-common/pom.xml                              |  8 ++++----
 paimon-common/src/main/antlr4/JavaLexer.g4         |  2 +-
 paimon-common/src/main/antlr4/JavaParser.g4        |  2 +-
 .../org/apache/paimon/catalog/CatalogContext.java  |  5 ++---
 .../apache/paimon/codegen/CodeGenException.scala   |  2 +-
 .../org/apache/paimon/codegen/CodeGenLoader.java   |  2 +-
 .../org/apache/paimon/codegen/CodeGenUtils.java    |  5 ++---
 .../org/apache/paimon/codegen/CodeGenerator.java   |  2 +-
 .../paimon/codegen/CodeGeneratorContext.scala      |  2 +-
 .../apache/paimon/codegen/CodeGeneratorImpl.java   |  2 +-
 .../paimon/codegen/ComparatorCodeGenerator.scala   |  4 ++--
 .../org/apache/paimon/codegen/CompileUtils.java    |  2 +-
 .../apache/paimon/codegen/ExprCodeGenerator.scala  |  2 +-
 .../org/apache/paimon/codegen/GenerateUtils.scala  |  2 +-
 .../org/apache/paimon/codegen/GeneratedClass.java  |  5 ++---
 .../paimon/codegen/GeneratedExpression.scala       |  2 +-
 .../paimon/codegen/NormalizedKeyComputer.java      |  5 ++---
 .../java/org/apache/paimon/codegen/Projection.java |  2 +-
 .../paimon/codegen/ProjectionCodeGenerator.scala   |  4 ++--
 .../apache/paimon/codegen/RecordComparator.java    |  2 +-
 .../apache/paimon/codegen/SortCodeGenerator.scala  |  4 ++--
 .../java/org/apache/paimon/codegen/SortSpec.java   |  2 +-
 .../codesplit/AddBoolBeforeReturnRewriter.java     |  4 ++--
 .../AddBooleanBeforeReturnRewriterTest.java        |  4 ++--
 .../codegen/codesplit/BlockStatementGrouper.java   | 13 ++++++------
 .../codegen/codesplit/BlockStatementRewriter.java  | 13 ++++++------
 .../codegen/codesplit/BlockStatementSplitter.java  | 13 ++++++------
 .../paimon/codegen/codesplit/CodeRewriter.java     |  2 +-
 .../codegen/codesplit/CodeRewriterTestBase.java    |  6 +++---
 .../paimon/codegen/codesplit/CodeSplitUtil.java    |  2 +-
 .../codegen/codesplit/DeclarationRewriter.java     |  8 +++-----
 .../paimon/codegen/codesplit/FunctionSplitter.java |  8 ++++----
 .../paimon/codegen/codesplit/JavaCodeSplitter.java |  2 +-
 .../codegen/codesplit/MemberFieldRewriter.java     |  5 ++---
 .../codegen/codesplit/ReturnAndJumpCounter.java    |  4 ++--
 .../codegen/codesplit/ReturnValueRewriter.java     |  2 +-
 .../apache/paimon/data/AbstractBinaryWriter.java   |  5 ++---
 .../java/org/apache/paimon/data/BinaryArray.java   |  3 +--
 .../java/org/apache/paimon/data/BinaryMap.java     |  3 +--
 .../java/org/apache/paimon/data/BinaryRow.java     |  3 +--
 .../java/org/apache/paimon/data/BinaryString.java  |  3 +--
 .../java/org/apache/paimon/data/BinaryWriter.java  |  9 ++++----
 .../main/java/org/apache/paimon/data/Decimal.java  |  3 +--
 .../java/org/apache/paimon/data/GenericArray.java  |  3 +--
 .../java/org/apache/paimon/data/GenericMap.java    |  3 +--
 .../java/org/apache/paimon/data/GenericRow.java    |  3 +--
 .../java/org/apache/paimon/data/InternalArray.java |  3 +--
 .../java/org/apache/paimon/data/InternalMap.java   |  3 +--
 .../java/org/apache/paimon/data/InternalRow.java   |  3 +--
 .../java/org/apache/paimon/data/JoinedRow.java     |  3 +--
 .../java/org/apache/paimon/data/NestedRow.java     |  2 +-
 .../java/org/apache/paimon/data/Timestamp.java     |  3 +--
 .../apache/paimon/data/columnar/ColumnarRow.java   |  3 +--
 .../paimon/data/columnar/ColumnarRowIterator.java  |  3 +--
 .../data/columnar/heap/AbstractHeapVector.java     |  3 +--
 .../data/serializer/BinaryRowSerializer.java       |  7 +++----
 .../data/serializer/BinaryStringSerializer.java    |  3 +--
 .../paimon/data/serializer/DecimalSerializer.java  |  3 +--
 .../data/serializer/InternalArraySerializer.java   | 11 +++++-----
 .../data/serializer/InternalMapSerializer.java     | 11 +++++-----
 .../data/serializer/InternalRowSerializer.java     |  9 ++++----
 .../data/serializer/RowCompactedSerializer.java    | 17 ++++++++-------
 .../data/serializer/TimestampSerializer.java       |  3 +--
 .../org/apache/paimon/file/predicate/Equal.java    |  3 +--
 .../paimon/file/predicate/GreaterOrEqual.java      |  3 +--
 .../apache/paimon/file/predicate/GreaterThan.java  |  3 +--
 .../java/org/apache/paimon/file/predicate/In.java  |  3 +--
 .../apache/paimon/file/predicate/IsNotNull.java    |  3 +--
 .../org/apache/paimon/file/predicate/IsNull.java   |  3 +--
 .../apache/paimon/file/predicate/LeafFunction.java |  3 +--
 .../paimon/file/predicate/LeafPredicate.java       |  7 +++----
 .../paimon/file/predicate/LeafUnaryFunction.java   |  3 +--
 .../apache/paimon/file/predicate/LessOrEqual.java  |  3 +--
 .../org/apache/paimon/file/predicate/LessThan.java |  3 +--
 .../org/apache/paimon/file/predicate/NotEqual.java |  3 +--
 .../org/apache/paimon/file/predicate/NotIn.java    |  3 +--
 .../predicate/NullFalseLeafBinaryFunction.java     |  3 +--
 .../paimon/file/predicate/PredicateBuilder.java    |  9 ++++----
 .../paimon/file/predicate/PredicateFilter.java     |  3 +--
 .../apache/paimon/file/predicate/StartsWith.java   |  3 +--
 .../apache/paimon/format/FieldStatsCollector.java  |  5 ++---
 .../apache/paimon/format/FormatReaderFactory.java  |  3 +--
 .../src/main/java/org/apache/paimon/fs/FileIO.java |  2 +-
 .../src/main/java/org/apache/paimon/fs/Path.java   |  3 +--
 .../java/org/apache/paimon/fs/PluginFileIO.java    |  1 +
 .../org/apache/paimon/fs/hadoop/HadoopFileIO.java  | 10 ++++-----
 .../org/apache/paimon/fs/local/LocalFileIO.java    |  1 +
 .../org/apache/paimon/io/cache/CacheManager.java   |  5 ++---
 .../paimon/io/cache/CachedRandomInputView.java     |  3 +--
 .../paimon/lookup/hash/HashLookupStoreReader.java  |  1 -
 .../paimon/lookup/hash/HashLookupStoreWriter.java  |  1 -
 .../apache/paimon/memory/MemorySegmentUtils.java   |  9 ++++----
 .../org/apache/paimon/options/ConfigOption.java    |  3 +--
 .../org/apache/paimon/options/ConfigOptions.java   |  3 +--
 .../paimon/options/description/Description.java    |  4 ++--
 .../apache/paimon/plugin/ComponentClassLoader.java |  3 +--
 .../org/apache/paimon/reader/RecordReader.java     |  3 +--
 .../java/org/apache/paimon/types/ArrayType.java    |  3 +--
 .../java/org/apache/paimon/types/DataType.java     |  3 +--
 .../apache/paimon/types/DataTypeJsonParser.java    |  4 ++--
 .../main/java/org/apache/paimon/types/MapType.java |  3 +--
 .../java/org/apache/paimon/types/MultisetType.java |  3 +--
 .../main/java/org/apache/paimon/types/RowType.java |  5 ++---
 .../org/apache/paimon/utils/BinaryRowDataUtil.java |  3 +--
 .../java/org/apache/paimon/utils/HadoopUtils.java  |  3 +--
 .../org/apache/paimon/utils/KeyProjectedRow.java   |  3 +--
 .../java/org/apache/paimon/utils/ProjectedRow.java |  5 ++---
 .../java/org/apache/paimon/utils/Projection.java   |  3 +--
 .../utils/RowDataToObjectArrayConverter.java       |  3 +--
 .../java/org/apache/paimon/utils/RowDataUtils.java | 21 +++++++++----------
 .../java/org/apache/paimon/utils/SortUtil.java     |  3 +--
 .../java/org/apache/paimon/utils/StringUtils.java  |  5 ++---
 .../java/org/apache/paimon/utils/TypeUtils.java    |  7 +++----
 .../codesplit/BlockStatementGrouperTest.java       |  9 ++++----
 .../codesplit/BlockStatementRewriterTest.java      |  2 +-
 .../codesplit/BlockStatementSplitterTest.java      |  4 ++--
 .../codegen/codesplit/CodeSplitTestUtil.java       |  3 +--
 .../codegen/codesplit/DeclarationRewriterTest.java |  4 ++--
 .../codegen/codesplit/FunctionSplitterTest.java    |  4 ++--
 .../codegen/codesplit/JavaCodeSplitterTest.java    |  7 +++----
 .../paimon/codegen/codesplit/JavaParserTest.java   |  4 ++--
 .../codegen/codesplit/MemberFieldRewriterTest.java |  4 ++--
 .../codegen/codesplit/ReturnValueRewriterTest.java |  4 ++--
 .../java/org/apache/paimon/data/BinaryRowTest.java | 13 ++++++------
 .../org/apache/paimon/data/BinaryStringTest.java   |  5 ++---
 .../java/org/apache/paimon/data/NestedRowTest.java |  3 +--
 .../java/org/apache/paimon/data/RowDataTest.java   |  7 +++----
 .../serializer/InternalArraySerializerTest.java    |  5 ++---
 .../data/serializer/InternalMapSerializerTest.java |  2 +-
 .../data/serializer/InternalRowSerializerTest.java |  5 ++---
 .../serializer/RowCompactedSerializerTest.java     |  7 +++----
 .../paimon/data/serializer/SerializerTestBase.java |  1 -
 .../paimon/datagen/RandomGeneratorVisitor.java     | 11 +++++-----
 .../paimon/format/FileStatsExtractorTestBase.java  | 17 ++++++++-------
 .../apache/paimon/fs/FileIOBehaviorTestBase.java   |  1 -
 .../java/org/apache/paimon/fs/FileIOFinder.java    |  1 +
 .../apache/paimon/fs/HadoopConfigLoadingTest.java  |  3 +--
 .../paimon/fs/HadoopLocalFileIOBehaviorTest.java   |  3 +--
 .../org/apache/paimon/fs/HdfsBehaviorTest.java     |  5 ++---
 .../apache/paimon/fs/LocalFileIOBehaviorTest.java  |  1 -
 .../paimon/io/cache/CachedRandomInputViewTest.java |  1 -
 .../lookup/hash/HashLookupStoreFactoryTest.java    |  3 +--
 .../org/apache/paimon/types/DataTypeAssert.java    |  1 -
 .../org/apache/paimon/utils/RowDataUtilsTest.java  | 11 +++++-----
 .../main/java/org/apache/paimon/CoreOptions.java   |  7 +++----
 .../org/apache/paimon/file/AbstractFileStore.java  |  5 ++---
 .../apache/paimon/file/AppendOnlyFileStore.java    |  5 ++---
 .../main/java/org/apache/paimon/file/KeyValue.java | 11 ++++------
 .../org/apache/paimon/file/KeyValueFileStore.java  |  5 ++---
 .../org/apache/paimon/file/KeyValueSerializer.java |  7 +++----
 .../main/java/org/apache/paimon/file/Snapshot.java |  8 ++++----
 .../file/append/AppendOnlyCompactManager.java      |  3 +--
 .../paimon/file/append/AppendOnlyWriter.java       |  5 ++---
 .../apache/paimon/file/casting/CastExecutors.java  |  7 +++----
 .../org/apache/paimon/file/casting/CastedRow.java  |  3 +--
 .../paimon/file/catalog/AbstractCatalog.java       |  3 +--
 .../org/apache/paimon/file/catalog/Catalog.java    |  3 +--
 .../apache/paimon/file/catalog/CatalogFactory.java |  4 ++--
 .../file/catalog/FileSystemCatalogFactory.java     |  1 +
 .../org/apache/paimon/file/catalog/Identifier.java |  3 +--
 .../apache/paimon/file/compact/CompactTask.java    |  1 -
 .../paimon/file/disk/AbstractFileIOChannel.java    |  1 -
 .../apache/paimon/file/disk/BufferFileReader.java  |  3 +--
 .../apache/paimon/file/disk/BufferFileWriter.java  |  3 +--
 .../paimon/file/disk/ChannelReaderInputView.java   |  3 +--
 .../file/disk/ChannelReaderInputViewIterator.java  |  5 ++---
 .../paimon/file/disk/ChannelWriterOutputView.java  |  3 +--
 .../paimon/file/disk/FileChannelManagerImpl.java   |  1 -
 .../org/apache/paimon/file/disk/FileIOChannel.java |  3 +--
 .../org/apache/paimon/file/disk/IOManager.java     |  3 +--
 .../org/apache/paimon/file/disk/IOManagerImpl.java |  1 -
 .../paimon/file/io/AbstractFileRecordIterator.java |  3 +--
 .../org/apache/paimon/file/io/DataFileMeta.java    |  7 +++----
 .../paimon/file/io/DataFileMetaSerializer.java     |  5 ++---
 .../apache/paimon/file/io/DataFilePathFactory.java |  3 +--
 .../file/io/KeyValueDataFileRecordReader.java      |  5 ++---
 .../paimon/file/io/KeyValueDataFileWriter.java     | 13 ++++++------
 .../paimon/file/io/KeyValueFileReaderFactory.java  |  7 +++----
 .../paimon/file/io/KeyValueFileWriterFactory.java  | 11 +++++-----
 .../apache/paimon/file/io/RollingFileWriter.java   |  3 +--
 .../paimon/file/io/RowDataFileRecordReader.java    |  5 ++---
 .../apache/paimon/file/io/RowDataFileWriter.java   |  7 +++----
 .../paimon/file/io/RowDataRollingFileWriter.java   |  5 ++---
 .../apache/paimon/file/io/SingleFileWriter.java    |  7 +++----
 .../file/io/StatsCollectingSingleFileWriter.java   |  9 ++++----
 .../manifest/ManifestCommittableSerializer.java    |  3 +--
 .../apache/paimon/file/manifest/ManifestEntry.java |  3 +--
 .../file/manifest/ManifestEntrySerializer.java     |  5 ++---
 .../apache/paimon/file/manifest/ManifestFile.java  |  9 ++++----
 .../file/manifest/ManifestFileMetaSerializer.java  |  5 ++---
 .../apache/paimon/file/manifest/ManifestList.java  |  9 ++++----
 .../java/org/apache/paimon/file/memory/Buffer.java |  3 +--
 .../paimon/file/memory/MemorySegmentPool.java      |  3 +--
 .../org/apache/paimon/file/mergetree/Levels.java   |  3 +--
 .../apache/paimon/file/mergetree/LookupLevels.java | 15 +++++++-------
 .../paimon/file/mergetree/MergeTreeReaders.java    |  3 +--
 .../paimon/file/mergetree/MergeTreeWriter.java     |  5 ++---
 .../file/mergetree/SortBufferWriteBuffer.java      | 14 ++++++-------
 .../apache/paimon/file/mergetree/SortedRun.java    |  5 ++---
 .../apache/paimon/file/mergetree/WriteBuffer.java  |  3 +--
 .../compact/ChangelogMergeTreeRewriter.java        |  3 +--
 .../FullChangelogMergeTreeCompactRewriter.java     |  3 +--
 .../file/mergetree/compact/IntervalPartition.java  |  5 ++---
 .../LookupChangelogMergeFunctionWrapper.java       |  3 +--
 .../compact/LookupMergeTreeCompactRewriter.java    |  3 +--
 .../mergetree/compact/MergeTreeCompactManager.java |  5 ++---
 .../compact/MergeTreeCompactRewriter.java          |  3 +--
 .../mergetree/compact/MergeTreeCompactTask.java    |  3 +--
 .../compact/PartialUpdateMergeFunction.java        |  5 ++---
 .../file/mergetree/compact/SortMergeReader.java    |  3 +--
 .../mergetree/compact/UniversalCompaction.java     |  3 +--
 .../mergetree/compact/ValueCountMergeFunction.java |  5 ++---
 .../compact/aggregate/AggregateMergeFunction.java  |  5 ++---
 .../compact/aggregate/FieldListaggAgg.java         |  3 +--
 .../mergetree/compact/aggregate/FieldSumAgg.java   |  3 +--
 .../file/operation/AbstractFileStoreScan.java      |  3 +--
 .../file/operation/AbstractFileStoreWrite.java     |  5 ++---
 .../file/operation/AppendOnlyFileStoreRead.java    |  7 +++----
 .../file/operation/AppendOnlyFileStoreWrite.java   |  7 +++----
 .../paimon/file/operation/FileStoreCommitImpl.java |  5 ++---
 .../paimon/file/operation/FileStoreExpireImpl.java |  7 +++----
 .../paimon/file/operation/FileStoreScan.java       |  3 +--
 .../paimon/file/operation/FileStoreWrite.java      |  3 +--
 .../file/operation/KeyValueFileStoreRead.java      | 10 +++------
 .../file/operation/KeyValueFileStoreWrite.java     |  7 +++----
 .../org/apache/paimon/file/operation/Lock.java     |  3 +--
 .../file/operation/MemoryFileStoreWrite.java       |  4 ++--
 .../paimon/file/operation/PartitionExpire.java     |  5 ++---
 .../paimon/file/predicate/BucketSelector.java      |  5 ++---
 .../java/org/apache/paimon/file/schema/Schema.java |  3 +--
 .../apache/paimon/file/schema/SchemaChange.java    |  3 +--
 .../paimon/file/schema/SchemaEvolutionUtil.java    |  3 +--
 .../apache/paimon/file/schema/SchemaManager.java   |  6 ++----
 .../paimon/file/schema/SchemaSerializer.java       |  6 +++---
 .../file/sort/AbstractBinaryExternalMerger.java    |  3 +--
 .../paimon/file/sort/BinaryExternalMerger.java     |  8 ++++----
 .../paimon/file/sort/BinaryExternalSortBuffer.java | 10 ++++-----
 .../paimon/file/sort/BinaryInMemorySortBuffer.java |  6 +++---
 .../paimon/file/sort/BinaryIndexedSortable.java    |  4 ++--
 .../org/apache/paimon/file/sort/SortBuffer.java    |  3 +--
 .../file/stats/FieldStatsArraySerializer.java      |  9 ++++----
 .../paimon/file/utils/BulkFormatMapping.java       |  5 ++---
 .../paimon/file/utils/FileStorePathFactory.java    |  5 ++---
 .../org/apache/paimon/file/utils/FileUtils.java    |  5 ++---
 .../apache/paimon/file/utils/JsonSerdeUtil.java    | 12 +++++------
 .../paimon/file/utils/KeyComparatorSupplier.java   |  2 +-
 .../apache/paimon/file/utils/ObjectSerializer.java |  7 +++----
 .../org/apache/paimon/file/utils/OffsetRow.java    |  3 +--
 .../file/utils/RowDataPartitionComputer.java       |  3 +--
 .../paimon/file/utils/SerializationUtils.java      |  3 +--
 .../file/utils/VersionedObjectSerializer.java      |  7 +++----
 .../paimon/table/AbstractFileStoreTable.java       |  3 +--
 .../paimon/table/AppendOnlyFileStoreTable.java     |  3 +--
 .../table/ChangelogValueCountFileStoreTable.java   |  5 ++---
 .../table/ChangelogWithKeyFileStoreTable.java      |  3 +--
 .../org/apache/paimon/table/FileStoreTable.java    |  7 +++----
 .../apache/paimon/table/FileStoreTableFactory.java |  3 ++-
 .../main/java/org/apache/paimon/table/Table.java   |  3 +--
 .../java/org/apache/paimon/table/TableUtils.java   |  3 +--
 .../apache/paimon/table/sink/BucketComputer.java   |  8 ++++----
 .../paimon/table/sink/CommitMessageImpl.java       |  3 +--
 .../paimon/table/sink/CommitMessageSerializer.java |  3 +--
 .../paimon/table/sink/PartitionComputer.java       |  4 ++--
 .../paimon/table/sink/SequenceGenerator.java       |  3 +--
 .../org/apache/paimon/table/sink/SinkRecord.java   |  3 +--
 .../paimon/table/sink/SinkRecordConverter.java     |  4 ++--
 .../org/apache/paimon/table/sink/TableCommit.java  |  3 +--
 .../org/apache/paimon/table/sink/TableWrite.java   |  5 ++---
 .../apache/paimon/table/sink/TableWriteImpl.java   |  5 ++---
 .../org/apache/paimon/table/sink/WriteBuilder.java |  3 +--
 .../paimon/table/source/AbstractDataTableScan.java |  3 +--
 .../org/apache/paimon/table/source/DataSplit.java  |  3 +--
 .../apache/paimon/table/source/DataTableScan.java  |  3 +--
 .../paimon/table/source/KeyValueTableRead.java     |  3 +--
 .../table/source/MergeTreeSplitGenerator.java      |  3 +--
 .../apache/paimon/table/source/ReadBuilder.java    |  5 ++---
 .../table/source/ResetRowKindRecordIterator.java   |  3 +--
 .../table/source/StreamDataTableScanImpl.java      |  1 -
 .../paimon/table/source/StreamTableScan.java       |  3 +--
 .../org/apache/paimon/table/source/TableRead.java  |  5 ++---
 .../org/apache/paimon/table/source/TableScan.java  |  3 +--
 .../paimon/table/source/TableStreamingReader.java  |  9 ++++----
 .../source/ValueContentRowDataRecordIterator.java  |  3 +--
 .../source/ValueCountRowDataRecordIterator.java    |  3 +--
 .../source/snapshot/CompactedStartingScanner.java  |  1 -
 .../CompactionChangelogFollowUpScanner.java        |  1 -
 .../ContinuousCompactorFollowUpScanner.java        |  1 -
 .../ContinuousCompactorStartingScanner.java        |  1 -
 .../ContinuousFromTimestampStartingScanner.java    |  1 -
 .../snapshot/ContinuousLatestStartingScanner.java  |  1 -
 .../source/snapshot/DeltaFollowUpScanner.java      |  1 -
 .../table/source/snapshot/FullStartingScanner.java |  1 -
 .../snapshot/InputChangelogFollowUpScanner.java    |  1 -
 .../table/source/snapshot/SnapshotSplitReader.java |  3 +--
 .../source/snapshot/SnapshotSplitReaderImpl.java   |  6 +++---
 .../StaticFromTimestampStartingScanner.java        |  1 -
 .../apache/paimon/table/system/AuditLogTable.java  |  9 ++++----
 .../apache/paimon/table/system/BucketsTable.java   |  7 +++----
 .../org/apache/paimon/table/system/FilesTable.java | 13 ++++++------
 .../apache/paimon/table/system/OptionsTable.java   | 11 +++++-----
 .../apache/paimon/table/system/SchemasTable.java   | 11 +++++-----
 .../apache/paimon/table/system/SnapshotsTable.java | 13 ++++++------
 .../java/org/apache/paimon/CoreOptionsTest.java    |  4 +---
 .../org/apache/paimon/file/FileFormatTest.java     | 11 +++++-----
 .../apache/paimon/file/KeyValueSerializerTest.java |  3 +--
 .../java/org/apache/paimon/file/TestFileStore.java |  5 ++---
 .../apache/paimon/file/TestKeyValueGenerator.java  | 14 ++++++-------
 .../file/append/AppendOnlyCompactManagerTest.java  |  1 -
 .../paimon/file/append/AppendOnlyWriterTest.java   | 13 ++++++------
 .../file/append/IterativeCompactTaskTest.java      |  1 -
 .../paimon/file/casting/CastExecutorTest.java      |  5 ++---
 .../paimon/file/catalog/CatalogFactoryTest.java    |  6 +++---
 .../file/disk/BufferFileWriterReaderTest.java      |  1 -
 .../paimon/file/format/FileFormatSuffixTest.java   |  7 +++----
 .../file/format/FileStatsExtractingAvroFormat.java |  5 ++---
 .../FileStatsExtractingAvroFormatFactory.java      |  3 +--
 .../paimon/file/format/FlushingFileFormat.java     |  7 +++----
 .../paimon/file/io/DataFilePathFactoryTest.java    |  1 -
 .../paimon/file/io/DataFileTestDataGenerator.java  |  3 +--
 .../apache/paimon/file/io/DataFileTestUtils.java   |  3 +--
 .../paimon/file/io/KeyValueFileReadWriteTest.java  |  7 +++----
 .../paimon/file/io/RollingFileWriterTest.java      |  7 +++----
 .../ManifestCommittableSerializerTest.java         |  3 +--
 .../paimon/file/manifest/ManifestFileMetaTest.java |  9 ++++----
 .../paimon/file/manifest/ManifestFileTest.java     |  3 +--
 .../paimon/file/manifest/ManifestListTest.java     |  3 +--
 .../file/manifest/ManifestTestDataGenerator.java   |  5 ++---
 .../apache/paimon/file/mergetree/LevelsTest.java   |  3 +--
 .../paimon/file/mergetree/LookupLevelsTest.java    |  7 +++----
 .../paimon/file/mergetree/MergeTreeTest.java       | 15 ++++++--------
 .../mergetree/SortBufferWriteBufferTestBase.java   |  2 +-
 .../compact/CombiningRecordReaderTestBase.java     |  2 +-
 .../mergetree/compact/ConcatRecordReaderTest.java  |  1 -
 .../compact/ForceUpLevel0CompactionTest.java       |  1 -
 .../FullChangelogMergeFunctionWrapperTestBase.java |  1 -
 .../mergetree/compact/IntervalPartitionTest.java   |  6 +++---
 .../LookupChangelogMergeFunctionWrapperTest.java   |  5 ++---
 .../compact/MergeTreeCompactManagerTest.java       |  5 ++---
 .../ReducerMergeFunctionWrapperTestBase.java       |  3 +--
 .../mergetree/compact/SortMergeReaderTestBase.java |  1 -
 .../mergetree/compact/UniversalCompactionTest.java |  1 -
 .../compact/aggregate/FieldAggregatorTest.java     |  5 ++---
 .../file/operation/CleanedFileStoreExpireTest.java |  5 ++---
 .../paimon/file/operation/FileStoreCommitTest.java |  3 +--
 .../file/operation/FileStoreExpireTestBase.java    |  3 +--
 .../file/operation/KeyValueFileStoreReadTest.java  | 10 ++++-----
 .../file/operation/KeyValueFileStoreScanTest.java  |  3 +--
 .../paimon/file/operation/PartitionExpireTest.java |  5 ++---
 .../paimon/file/operation/TestCommitThread.java    |  3 +--
 .../operation/UncleanedFileStoreExpireTest.java    |  1 -
 .../paimon/file/predicate/BucketSelectorTest.java  |  1 -
 .../file/predicate/PredicateBuilderTest.java       |  3 +--
 .../paimon/file/predicate/PredicateTest.java       |  3 +--
 .../paimon/file/schema/DataTypeJsonParserTest.java |  1 -
 .../file/schema/SchemaEvolutionUtilTest.java       |  5 ++---
 .../paimon/file/schema/SchemaManagerTest.java      | 19 ++++++-----------
 .../file/schema/TableSchemaSerializationTest.java  |  1 -
 .../apache/paimon/file/schema/TableSchemaTest.java |  1 -
 .../file/sort/BinaryExternalSortBufferTest.java    |  9 ++++----
 .../paimon/file/sort/IntNormalizedKeyComputer.java |  4 ++--
 .../paimon/file/stats/BinaryTableStatsTest.java    |  5 ++---
 .../file/stats/FieldStatsArraySerializerTest.java  |  5 ++---
 .../paimon/file/stats/FieldStatsCollectorTest.java |  9 ++++----
 .../apache/paimon/file/stats/StatsTestUtils.java   |  3 +--
 .../paimon/file/stats/TestFileStatsExtractor.java  |  9 ++++----
 .../file/utils/FileStorePathFactoryTest.java       |  7 +++----
 .../file/utils/ObjectSerializerTestBase.java       |  1 -
 .../apache/paimon/file/utils/OffsetRowTest.java    |  3 +--
 .../apache/paimon/file/utils/ReusingKeyValue.java  |  3 +--
 .../paimon/file/utils/SnapshotManagerTest.java     |  1 -
 .../apache/paimon/file/utils/TraceableFileIO.java  |  1 +
 .../paimon/table/AppendOnlyFileStoreTableTest.java |  7 +++----
 .../AppendOnlyTableColumnTypeFileDataTest.java     |  1 -
 .../AppendOnlyTableColumnTypeFileMetaTest.java     |  1 -
 .../table/AppendOnlyTableFileMetaFilterTest.java   |  1 -
 .../ChangelogValueCountColumnTypeFileDataTest.java |  1 -
 .../ChangelogValueCountColumnTypeFileMetaTest.java |  1 -
 .../ChangelogValueCountFileDataTableTest.java      |  1 -
 .../ChangelogValueCountFileMetaFilterTest.java     |  1 -
 .../ChangelogValueCountFileStoreTableTest.java     |  1 -
 .../ChangelogWithKeyColumnTypeFileDataTest.java    |  3 +--
 .../table/ChangelogWithKeyFileDataTableTest.java   |  1 -
 .../table/ChangelogWithKeyFileMetaFilterTest.java  |  1 -
 .../table/ChangelogWithKeyFileStoreTableTest.java  |  7 +++----
 ...hangelogWithKeyTableColumnTypeFileMetaTest.java |  5 ++---
 .../paimon/table/ColumnTypeFileDataTestBase.java   |  3 +--
 .../paimon/table/ColumnTypeFileMetaTestBase.java   |  7 +++----
 .../paimon/table/FileDataFilterTestBase.java       |  3 +--
 .../paimon/table/FileMetaFilterTestBase.java       |  3 +--
 .../paimon/table/FileStoreTableTestBase.java       | 15 +++++++-------
 .../paimon/table/SchemaEvolutionTableTestBase.java | 11 +++++-----
 .../apache/paimon/table/SchemaEvolutionTest.java   |  7 +++----
 .../paimon/table/WritePreemptMemoryTest.java       |  3 +--
 .../table/sink/CommitMessageSerializerTest.java    |  1 -
 .../paimon/table/sink/SinkRecordConverterTest.java |  5 ++---
 .../apache/paimon/table/sink/TableWriteTest.java   |  5 ++---
 .../table/source/BatchDataTableScanTest.java       |  1 -
 .../source/RowDataRecordIteratorTestBase.java      |  3 +--
 .../paimon/table/source/SplitGeneratorTest.java    |  3 +--
 .../org/apache/paimon/table/source/SplitTest.java  |  1 -
 .../table/source/StreamDataTableScanTest.java      |  1 -
 .../ValueContentRowDataRecordIteratorTest.java     |  1 -
 .../ValueCountRowDataRecordIteratorTest.java       |  1 -
 .../BoundedWatermarkFollowUpScannerTest.java       |  1 -
 .../snapshot/CompactedStartingScannerTest.java     |  1 -
 .../CompactionChangelogFollowUpScannerTest.java    |  1 -
 .../ContinuousCompactorFollowUpScannerTest.java    |  3 +--
 .../ContinuousCompactorStartingScannerTest.java    |  1 -
 ...ContinuousFromTimestampStartingScannerTest.java |  1 -
 .../ContinuousLatestStartingScannerTest.java       |  1 -
 .../source/snapshot/DeltaFollowUpScannerTest.java  |  1 -
 .../source/snapshot/FullStartingScannerTest.java   |  1 -
 .../InputChangelogFollowUpScannerTest.java         |  1 -
 .../table/source/snapshot/ScannerTestBase.java     |  9 ++++----
 .../configuration/ConfigOptionsDocGenerator.java   | 14 ++++++-------
 .../ConfigOptionsDocGeneratorTest.java             |  9 ++++----
 .../ConfigOptionsDocsCompletenessITCase.java       |  3 +--
 .../docs/configuration/data/TestCommonOptions.java |  3 +--
 .../main/java/org/apache/paimon/oss/OSSFileIO.java |  2 +-
 .../main/java/org/apache/paimon/oss/OSSLoader.java |  1 +
 .../main/java/org/apache/paimon/s3/S3FileIO.java   |  2 +-
 .../main/java/org/apache/paimon/s3/S3Loader.java   |  1 +
 .../paimon/connector/BatchFileStoreITCase.java     |  2 +-
 .../apache/paimon/connector/CatalogITCaseBase.java |  4 ++--
 .../connector/ContinuousFileStoreITCase.java       |  6 +++---
 .../apache/paimon/connector/FlinkActionITCase.java |  2 +-
 .../apache/paimon/connector/LookupJoinITCase.java  |  2 +-
 .../paimon/connector/BatchFileStoreITCase.java     |  2 +-
 .../apache/paimon/connector/CatalogITCaseBase.java |  4 ++--
 .../connector/ContinuousFileStoreITCase.java       |  6 +++---
 .../apache/paimon/connector/FlinkActionITCase.java |  2 +-
 .../apache/paimon/connector/LookupJoinITCase.java  |  2 +-
 .../connector/AbstractTableStoreFactory.java       | 16 +++++++--------
 .../paimon/connector/BinaryRowTypeSerializer.java  |  2 +-
 .../apache/paimon/connector/DataCatalogTable.java  |  1 +
 .../paimon/connector/DataTypeToLogicalType.java    |  3 ++-
 .../org/apache/paimon/connector/FlinkCatalog.java  |  8 ++++----
 .../paimon/connector/FlinkCatalogFactory.java      |  1 +
 .../apache/paimon/connector/FlinkRowWrapper.java   |  2 +-
 .../org/apache/paimon/connector/FlinkUtils.java    |  1 +
 .../paimon/connector/LogicalTypeConversion.java    |  3 ++-
 .../paimon/connector/LogicalTypeToDataType.java    | 11 +++++-----
 .../paimon/connector/PredicateConverter.java       |  6 +++---
 .../apache/paimon/connector/RocksDBOptions.java    |  3 +--
 .../paimon/connector/SystemCatalogTable.java       |  3 ++-
 .../connector/TableStoreConnectorFactory.java      |  8 ++++----
 .../org/apache/paimon/connector/action/Action.java |  1 +
 .../apache/paimon/connector/action/ActionBase.java | 12 +++++------
 .../paimon/connector/action/CompactAction.java     |  6 +++---
 .../connector/action/DropPartitionAction.java      |  2 +-
 .../paimon/connector/action/MergeIntoAction.java   |  6 +++---
 .../kafka/KafkaLogSerializationSchema.java         |  6 +++---
 .../connector/kafka/KafkaLogSinkProvider.java      |  2 +-
 .../connector/kafka/KafkaLogSourceProvider.java    |  4 ++--
 .../connector/kafka/KafkaLogStoreFactory.java      |  6 +++---
 .../paimon/connector/kafka/KafkaSinkFunction.java  |  2 +-
 .../connector/lookup/FileStoreLookupFunction.java  | 14 ++++++-------
 .../paimon/connector/lookup/LookupTable.java       |  3 +--
 .../connector/lookup/PrimaryKeyLookupTable.java    |  5 ++---
 .../paimon/connector/lookup/RocksDBState.java      |  5 ++---
 .../lookup/SecondaryIndexLookupTable.java          |  5 ++---
 .../connector/sink/BucketStreamPartitioner.java    |  6 +++---
 .../connector/sink/CommittableSerializer.java      |  1 +
 .../paimon/connector/sink/CommittableTypeInfo.java |  1 +
 .../paimon/connector/sink/CompactorSink.java       |  3 ++-
 .../connector/sink/CompactorSinkBuilder.java       |  1 +
 .../paimon/connector/sink/FileStoreSink.java       |  2 +-
 .../apache/paimon/connector/sink/FlinkSink.java    |  6 +++---
 .../paimon/connector/sink/FlinkSinkBuilder.java    |  2 +-
 .../sink/FullChangelogStoreSinkWrite.java          |  6 +++---
 .../paimon/connector/sink/LogSinkFunction.java     |  1 +
 .../sink/LookupChangelogStoreSinkWrite.java        |  1 +
 .../sink/OffsetRowDataHashStreamPartitioner.java   |  2 +-
 .../apache/paimon/connector/sink/StateUtils.java   |  1 +
 .../paimon/connector/sink/StoreCommitter.java      |  1 +
 .../connector/sink/StoreCompactOperator.java       |  6 +++---
 .../paimon/connector/sink/StoreSinkWrite.java      |  4 ++--
 .../paimon/connector/sink/StoreSinkWriteImpl.java  |  6 +++---
 .../paimon/connector/sink/StoreWriteOperator.java  |  4 ++--
 .../paimon/connector/sink/TableStoreSink.java      | 16 +++++++--------
 .../connector/source/CompactorSourceBuilder.java   |  4 ++--
 .../source/ContinuousFileSplitEnumerator.java      |  2 +-
 .../source/ContinuousFileStoreSource.java          |  1 +
 .../connector/source/FileStoreSourceReader.java    |  1 +
 .../connector/source/FileStoreSourceSplit.java     |  1 +
 .../source/FileStoreSourceSplitReader.java         |  6 +++---
 .../source/FileStoreSourceSplitSerializer.java     |  1 +
 .../paimon/connector/source/FlinkSource.java       |  1 +
 .../connector/source/FlinkSourceBuilder.java       | 10 ++++-----
 .../paimon/connector/source/FlinkTableSource.java  |  6 +++---
 .../connector/source/SimpleSystemSource.java       |  1 +
 .../connector/source/SingleIteratorRecords.java    |  1 +
 .../connector/source/StaticFileStoreSource.java    |  3 ++-
 .../paimon/connector/source/SystemTableSource.java |  1 +
 .../paimon/connector/source/TableStoreSource.java  | 14 ++++++-------
 .../paimon/connector/BatchFileStoreITCase.java     |  2 +-
 .../paimon/connector/CatalogTableITCase.java       |  2 +-
 .../apache/paimon/connector/ChangelogModeTest.java | 12 +++++------
 .../apache/paimon/connector/FileStoreITCase.java   | 10 ++++-----
 .../apache/paimon/connector/FiniteTestSource.java  |  1 +
 .../apache/paimon/connector/FlinkCatalogTest.java  |  2 +-
 .../paimon/connector/ForceCompactionITCase.java    |  6 +++---
 .../paimon/connector/PredicateConverterTest.java   |  4 ++--
 .../paimon/connector/ReadWriteTableITCase.java     |  2 +-
 .../StreamingReadWriteTableWithKafkaLogITCase.java |  2 +-
 .../paimon/connector/action/ActionITCaseBase.java  | 10 ++++-----
 .../connector/action/CompactActionITCase.java      |  8 ++++----
 .../connector/action/DeleteActionITCase.java       |  6 +++---
 .../action/DropPartitionActionITCase.java          |  4 ++--
 .../connector/action/MergeIntoActionITCase.java    |  2 +-
 .../connector/kafka/KafkaLogSerializationTest.java |  6 +++---
 .../paimon/connector/kafka/KafkaLogTestUtils.java  | 10 ++++-----
 .../paimon/connector/lookup/LookupTableTest.java   |  5 ++---
 .../connector/sink/CommittableSerializerTest.java  |  2 +-
 .../connector/sink/CommitterOperatorTest.java      |  6 +++---
 .../connector/sink/CommitterOperatorTestBase.java  |  6 +++---
 .../paimon/connector/sink/CompactorSinkITCase.java | 10 ++++-----
 .../connector/sink/FileStoreShuffleBucketTest.java |  6 +++---
 .../connector/source/CompactorSourceITCase.java    | 14 ++++++-------
 .../source/ContinuousFileSplitEnumeratorTest.java  |  2 +-
 .../source/FileStoreSourceReaderTest.java          |  2 +-
 .../source/FileStoreSourceSplitGeneratorTest.java  |  2 +-
 .../source/FileStoreSourceSplitReaderTest.java     |  2 +-
 .../source/FileStoreSourceSplitSerializerTest.java |  2 +-
 .../source/TestChangelogDataReadWrite.java         | 24 ++++++++--------------
 .../paimon/connector/util/AbstractTestBase.java    |  2 +-
 .../connector/util/ReadWriteTableTestUtil.java     |  2 +-
 .../paimon/format/avro/AbstractAvroBulkFormat.java |  8 ++++----
 .../apache/paimon/format/avro/AvroFileFormat.java  | 14 ++++++-------
 .../paimon/format/avro/AvroFileFormatFactory.java  |  3 +--
 .../paimon/format/avro/AvroSchemaConverter.java    |  7 +++----
 .../format/avro/AvroToRowDataConverters.java       | 13 ++++++------
 .../format/avro/RowDataToAvroConverters.java       |  9 ++++----
 .../paimon/format/fs/HadoopReadOnlyFileSystem.java |  2 +-
 .../apache/paimon/format/orc/OrcFileFormat.java    | 23 ++++++++++-----------
 .../paimon/format/orc/OrcFileFormatFactory.java    |  3 +--
 .../apache/paimon/format/orc/OrcReaderFactory.java | 12 +++++------
 .../orc/SerializableHadoopConfigWrapper.java       |  3 +--
 .../format/orc/filter/OrcFileStatsExtractor.java   | 10 ++++-----
 .../orc/filter/OrcPredicateFunctionVisitor.java    | 11 +++++-----
 .../format/orc/reader/AbstractOrcColumnVector.java | 11 +++++-----
 .../format/orc/reader/OrcArrayColumnVector.java    |  3 +--
 .../format/orc/reader/OrcMapColumnVector.java      |  3 +--
 .../format/orc/reader/OrcRowColumnVector.java      |  3 +--
 .../format/orc/reader/OrcSplitReaderUtil.java      |  3 +--
 .../format/orc/writer/RowDataVectorizer.java       | 15 +++++++-------
 .../paimon/format/parquet/ParquetFileFormat.java   |  9 ++++----
 .../format/parquet/ParquetFileFormatFactory.java   |  3 +--
 .../format/parquet/ParquetFileStatsExtractor.java  | 10 ++++-----
 .../format/parquet/ParquetReaderFactory.java       | 12 +++++------
 .../format/parquet/ParquetSchemaConverter.java     |  1 -
 .../apache/paimon/format/parquet/ParquetUtil.java  |  2 +-
 .../format/parquet/reader/ArrayColumnReader.java   |  5 ++---
 .../parquet/reader/BaseVectorizedColumnReader.java |  3 +--
 .../parquet/reader/ParquetSplitReaderUtil.java     | 17 ++++++++-------
 .../parquet/writer/ParquetRowDataBuilder.java      |  3 +--
 .../parquet/writer/ParquetRowDataWriter.java       | 15 +++++++-------
 .../parquet/writer/RowDataParquetBuilder.java      |  3 +--
 .../apache/paimon/format/BulkFileFormatTest.java   |  6 +++---
 .../paimon/format/avro/AvroBulkFormatTest.java     |  4 ++--
 .../format/avro/AvroBulkFormatTestUtils.java       |  7 +++----
 .../paimon/format/orc/OrcFileFormatTest.java       |  1 -
 .../format/orc/OrcFileStatsExtractorTest.java      |  7 +++----
 .../paimon/format/orc/OrcFilterConverterTest.java  |  7 +++----
 .../paimon/format/orc/OrcReaderFactoryTest.java    |  8 ++++----
 .../paimon/format/orc/OrcSplitReaderUtilTest.java  |  3 +--
 .../paimon/format/orc/OrcWriterFactoryTest.java    |  4 ++--
 .../format/parquet/ParquetFileFormatTest.java      |  1 -
 .../parquet/ParquetFileStatsExtractorTest.java     |  7 +++----
 .../format/parquet/ParquetReadWriteTest.java       | 20 +++++++++---------
 .../java/org/apache/paimon/hive/HiveCatalog.java   | 12 +++++------
 .../org/apache/paimon/hive/HiveCatalogFactory.java |  8 ++++----
 .../org/apache/paimon/hive/HiveCatalogLock.java    |  2 +-
 .../apache/paimon/hive/SerializableHiveConf.java   |  3 +--
 .../java/org/apache/paimon/hive/HiveTypeUtils.java |  5 ++---
 .../java/org/apache/paimon/hive/HiveSchema.java    | 10 ++++-----
 .../hive/SearchArgumentToPredicateConverter.java   |  9 ++++----
 .../apache/paimon/hive/TableStoreHiveMetaHook.java |  3 +--
 .../org/apache/paimon/hive/TableStoreJobConf.java  |  2 +-
 .../paimon/hive/mapred/TableStoreInputFormat.java  | 14 ++++++-------
 .../paimon/hive/mapred/TableStoreInputSplit.java   |  6 +++---
 .../paimon/hive/mapred/TableStoreRecordReader.java |  6 +++---
 .../TableStoreDateObjectInspector.java             |  3 +--
 .../TableStoreListObjectInspector.java             |  3 +--
 .../TableStoreMapObjectInspector.java              |  3 +--
 .../TableStoreObjectInspectorFactory.java          |  9 ++++----
 .../TableStoreRowDataObjectInspector.java          |  5 ++---
 .../org/apache/paimon/hive/FileStoreTestUtils.java |  3 ++-
 .../apache/paimon/hive/HiveTableSchemaTest.java    |  4 ++--
 .../paimon/hive/RandomGenericRowDataGenerator.java |  9 ++++----
 .../SearchArgumentToPredicateConverterTest.java    | 11 +++++-----
 .../hive/TableStoreHiveStorageHandlerITCase.java   | 18 ++++++++--------
 .../hive/mapred/TableStoreInputSplitTest.java      |  2 +-
 .../hive/mapred/TableStoreRecordReaderTest.java    | 13 ++++++------
 .../TableStoreListObjectInspectorTest.java         |  3 +--
 .../TableStoreMapObjectInspectorTest.java          |  3 +--
 .../apache/paimon/spark/SparkDataSourceReader.java |  1 -
 .../apache/paimon/spark/SparkInputPartition.java   |  3 +--
 .../java/org/apache/paimon/spark/SparkSource.java  |  2 +-
 .../apache/paimon/spark/SimpleTableTestHelper.java |  6 +++---
 .../paimon/spark/SparkFilterConverterTest.java     |  3 +--
 .../apache/paimon/spark/SparkInternalRowTest.java  |  3 +--
 .../org/apache/paimon/spark/SparkReadITCase.java   |  8 ++++----
 .../org/apache/paimon/spark/SparkTypeTest.java     |  1 -
 .../org/apache/paimon/spark/SparkArrayData.java    |  5 ++---
 .../java/org/apache/paimon/spark/SparkCatalog.java |  2 +-
 .../apache/paimon/spark/SparkFilterConverter.java  |  1 -
 .../apache/paimon/spark/SparkInputPartition.java   |  1 -
 .../org/apache/paimon/spark/SparkInternalRow.java  | 11 +++++-----
 .../apache/paimon/spark/SparkReaderFactory.java    |  3 +--
 .../java/org/apache/paimon/spark/SparkRow.java     | 13 ++++++------
 .../java/org/apache/paimon/spark/SparkScan.java    |  1 -
 .../org/apache/paimon/spark/SparkScanBuilder.java  |  1 -
 .../java/org/apache/paimon/spark/SparkSource.java  |  2 +-
 .../java/org/apache/paimon/spark/SparkTable.java   |  2 +-
 .../org/apache/paimon/spark/SparkTypeUtils.java    |  1 -
 .../java/org/apache/paimon/spark/SparkWrite.java   |  2 +-
 .../org/apache/paimon/spark/SparkWriteBuilder.java |  2 +-
 .../apache/paimon/spark/MinioTestContainer.java    |  2 +-
 .../paimon/spark/SparkFilterConverterTest.java     |  3 +--
 .../apache/paimon/spark/SparkInternalRowTest.java  |  3 +--
 .../org/apache/paimon/spark/SparkReadITCase.java   |  2 +-
 .../org/apache/paimon/spark/SparkReadTestBase.java |  8 ++++----
 .../org/apache/paimon/spark/SparkTypeTest.java     |  1 -
 626 files changed, 1251 insertions(+), 1661 deletions(-)

diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
index 701916f71..028dd94f3 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
@@ -18,8 +18,13 @@
 
 package org.apache.paimon.benchmark;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
+
+import org.apache.commons.math3.random.RandomDataGenerator;
+import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.catalog.Catalog;
 import org.apache.paimon.file.catalog.CatalogFactory;
 import org.apache.paimon.file.catalog.Identifier;
@@ -30,11 +35,6 @@ import org.apache.paimon.table.Table;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.IntType;
-
-import org.apache.commons.math3.random.RandomDataGenerator;
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.io.TempDir;
 
 import java.util.ArrayList;
diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
index 0d1f83c5b..694aff3b8 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
@@ -24,7 +24,6 @@ import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.sink.StreamWriteBuilder;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.List;
diff --git a/paimon-common/pom.xml b/paimon-common/pom.xml
index 5f7ed0416..8741523bf 100644
--- a/paimon-common/pom.xml
+++ b/paimon-common/pom.xml
@@ -221,7 +221,7 @@ under the License.
                             <goal>antlr4</goal>
                         </goals>
                         <configuration>
-                            <outputDirectory>${project.build.directory}/generated-sources/antlr4/org/apache/flink/table/store/codegen/codesplit</outputDirectory>
+                            <outputDirectory>${project.build.directory}/generated-sources/antlr4/org/apache/paimon/codegen/codesplit</outputDirectory>
                             <visitor>true</visitor>
                         </configuration>
                     </execution>
@@ -255,15 +255,15 @@ under the License.
                             <relocations>
                                 <relocation>
                                     <pattern>org.antlr.v4.runtime</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.antlr.v4.runtime</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.antlr.v4.runtime</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>org.codehaus.janino</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.codehaus.janino</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.codehaus.janino</shadedPattern>
                                 </relocation>
                                 <relocation>
                                     <pattern>org.codehaus.commons</pattern>
-                                    <shadedPattern>org.apache.flink.table.store.shaded.org.codehaus.commons</shadedPattern>
+                                    <shadedPattern>org.apache.paimon.shaded.org.codehaus.commons</shadedPattern>
                                 </relocation>
                             </relocations>
                         </configuration>
diff --git a/paimon-common/src/main/antlr4/JavaLexer.g4 b/paimon-common/src/main/antlr4/JavaLexer.g4
index 38f54a3d7..2710e8714 100644
--- a/paimon-common/src/main/antlr4/JavaLexer.g4
+++ b/paimon-common/src/main/antlr4/JavaLexer.g4
@@ -39,7 +39,7 @@
 lexer grammar JavaLexer;
 
 @header {
-    package org.apache.flink.table.store.codegen.codesplit;
+    package org.apache.paimon.codegen.codesplit;
 }
 
 // Keywords
diff --git a/paimon-common/src/main/antlr4/JavaParser.g4 b/paimon-common/src/main/antlr4/JavaParser.g4
index 590b1282d..2b75b975c 100644
--- a/paimon-common/src/main/antlr4/JavaParser.g4
+++ b/paimon-common/src/main/antlr4/JavaParser.g4
@@ -43,7 +43,7 @@
 parser grammar JavaParser;
 
 @header {
-    package org.apache.flink.table.store.codegen.codesplit;
+    package org.apache.paimon.codegen.codesplit;
 }
 
 options { tokenVocab=JavaLexer; }
diff --git a/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java b/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
index 75f98f835..a4411e9da 100644
--- a/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
+++ b/paimon-common/src/main/java/org/apache/paimon/catalog/CatalogContext.java
@@ -18,15 +18,14 @@
 
 package org.apache.flink.table.store.catalog;
 
+import org.apache.hadoop.conf.Configuration;
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.fs.FileIOLoader;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.hadoop.HadoopFileIOLoader;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.utils.HadoopUtils;
 
-import org.apache.hadoop.conf.Configuration;
-import org.apache.paimon.annotation.Experimental;
-
 import javax.annotation.Nullable;
 
 import static org.apache.paimon.options.CatalogOptions.FS_ALLOW_HADOOP_FALLBACK;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenException.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenException.scala
index 4921c259b..4a34fe3a6 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenException.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenException.scala
@@ -15,7 +15,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.flink.table.store.codegen
+package org.apache.paimon.codegen
 
 /** Exception for all errors occurring during code generation. */
 class CodeGenException(msg: String) extends RuntimeException(msg)
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
index ddd392a6d..9a1310a40 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenLoader.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen;
+package org.apache.paimon.codegen;
 
 import org.apache.paimon.plugin.PluginLoader;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
index da6fcf6b4..e450ceaf4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenUtils.java
@@ -16,13 +16,12 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen;
+package org.apache.paimon.codegen;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.data.BinaryRow;
-
 import java.util.List;
 
 /** Utils for code generations. */
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenerator.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenerator.java
index 34853e603..b877d94f2 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenerator.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGenerator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen;
+package org.apache.paimon.codegen;
 
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala
index 68f761665..ca4eae009 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorContext.scala
@@ -15,7 +15,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.flink.table.store.codegen
+package org.apache.paimon.codegen
 
 import org.apache.paimon.data.serializer.InternalSerializers
 import org.apache.paimon.types.DataType
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java
index afccfc800..c6e544d0d 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CodeGeneratorImpl.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen;
+package org.apache.paimon.codegen;
 
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
index 989e7dbc6..b02875f70 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/ComparatorCodeGenerator.scala
@@ -15,9 +15,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.flink.table.store.codegen
+package org.apache.paimon.codegen
 
-import org.apache.flink.table.store.codegen.GenerateUtils.{newName, ROW_DATA}
+import org.apache.paimon.codegen.GenerateUtils.{newName, ROW_DATA}
 import org.apache.paimon.types.RowType
 
 /** A code generator for generating [[RecordComparator]]. */
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/CompileUtils.java b/paimon-common/src/main/java/org/apache/paimon/codegen/CompileUtils.java
index e723d1c39..e528c13cc 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/CompileUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/CompileUtils.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen;
+package org.apache.paimon.codegen;
 
 import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
 import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala
index 51e7560c8..bc64276c1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/ExprCodeGenerator.scala
@@ -15,7 +15,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.flink.table.store.codegen
+package org.apache.paimon.codegen
 
 import org.apache.paimon.data.{BinaryRow, InternalRow}
 import org.apache.paimon.types.{RowType, TimestampType}
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
index 4616ca6f4..3a8f53611 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/GenerateUtils.scala
@@ -15,7 +15,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.flink.table.store.codegen
+package org.apache.paimon.codegen
 
 import org.apache.paimon.data._
 import org.apache.paimon.memory.MemorySegment
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedClass.java b/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedClass.java
index 0ff33bd18..363fa07e7 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedClass.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedClass.java
@@ -16,10 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen;
-
-import org.apache.flink.table.store.codegen.codesplit.JavaCodeSplitter;
+package org.apache.paimon.codegen;
 
+import org.apache.paimon.codegen.codesplit.JavaCodeSplitter;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedExpression.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedExpression.scala
index 595be957f..47977e06c 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedExpression.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/GeneratedExpression.scala
@@ -15,7 +15,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.flink.table.store.codegen
+package org.apache.paimon.codegen
 
 import org.apache.paimon.types.DataType
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/NormalizedKeyComputer.java b/paimon-common/src/main/java/org/apache/paimon/codegen/NormalizedKeyComputer.java
index be1c8be28..f0d8b46b4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/NormalizedKeyComputer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/NormalizedKeyComputer.java
@@ -16,11 +16,10 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen;
-
-import org.apache.paimon.memory.MemorySegment;
+package org.apache.paimon.codegen;
 
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.memory.MemorySegment;
 
 /**
  * Normalized key computer for {@code SortBuffer}. For performance, subclasses are usually
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/Projection.java b/paimon-common/src/main/java/org/apache/paimon/codegen/Projection.java
index 91c2ef28e..81922588c 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/Projection.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/Projection.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen;
+package org.apache.paimon.codegen;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
index 3fe899a40..752fb81f5 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/ProjectionCodeGenerator.scala
@@ -15,9 +15,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.flink.table.store.codegen
+package org.apache.paimon.codegen
 
-import org.apache.flink.table.store.codegen.GenerateUtils.{generateRecordStatement, newName, DEFAULT_INPUT1_TERM, DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM, ROW_DATA}
+import org.apache.paimon.codegen.GenerateUtils.{generateRecordStatement, newName, DEFAULT_INPUT1_TERM, DEFAULT_OUT_RECORD_TERM, DEFAULT_OUT_RECORD_WRITER_TERM, ROW_DATA}
 import org.apache.paimon.data.{BinaryRow, InternalRow}
 import org.apache.paimon.types.RowType
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/RecordComparator.java b/paimon-common/src/main/java/org/apache/paimon/codegen/RecordComparator.java
index b4a3a62c7..8e3014183 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/RecordComparator.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/RecordComparator.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen;
+package org.apache.paimon.codegen;
 
 import org.apache.paimon.data.InternalRow;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala b/paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala
index 2947216d1..30d3639ea 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/SortCodeGenerator.scala
@@ -15,9 +15,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.flink.table.store.codegen
+package org.apache.paimon.codegen
 
-import org.apache.flink.table.store.codegen.GenerateUtils.{newName, ROW_DATA, SEGMENT}
+import org.apache.paimon.codegen.GenerateUtils.{newName, ROW_DATA, SEGMENT}
 import org.apache.paimon.data.{BinaryRow, Decimal, Timestamp}
 import org.apache.paimon.types.{DataType, DecimalType, RowType, TimestampType}
 import org.apache.paimon.types.DataTypeRoot._
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/SortSpec.java b/paimon-common/src/main/java/org/apache/paimon/codegen/SortSpec.java
index fb2dbbb26..4cebb8c06 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/SortSpec.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/SortSpec.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen;
+package org.apache.paimon.codegen;
 
 import java.util.Arrays;
 import java.util.LinkedList;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBoolBeforeReturnRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBoolBeforeReturnRewriter.java
index d93224bf8..fd73a2f45 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBoolBeforeReturnRewriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBoolBeforeReturnRewriter.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
@@ -28,7 +28,7 @@ import java.util.List;
 import java.util.Map;
 
 /**
- * A helper class of {@link org.apache.flink.table.store.codegen.codesplit.FunctionSplitter}.
+ * A helper class of {@link org.apache.paimon.codegen.codesplit.FunctionSplitter}.
  *
  * <p>Add a boolean variable before each return statement so that when the function is split, the
  * outer function can determine whether to return early with this boolean variable.
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
index c3ad3355b..c428e80e9 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/AddBooleanBeforeReturnRewriterTest.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.junit.jupiter.api.Test;
 
@@ -24,7 +24,7 @@ import java.util.Map;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link org.apache.flink.table.store.codegen.codesplit.AddBoolBeforeReturnRewriter}. */
+/** Tests for {@link org.apache.paimon.codegen.codesplit.AddBoolBeforeReturnRewriter}. */
 class AddBooleanBeforeReturnRewriterTest extends CodeRewriterTestBase<AddBoolBeforeReturnRewriter> {
 
     public AddBooleanBeforeReturnRewriterTest() {
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouper.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouper.java
index 2a1488644..dfb2f26c1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouper.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouper.java
@@ -15,11 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
-
-import org.apache.flink.table.store.codegen.codesplit.JavaParser.BlockStatementContext;
-import org.apache.flink.table.store.codegen.codesplit.JavaParser.StatementContext;
-import org.apache.paimon.utils.Pair;
+package org.apache.paimon.codegen.codesplit;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
@@ -27,6 +23,9 @@ import org.antlr.v4.runtime.ParserRuleContext;
 import org.antlr.v4.runtime.Token;
 import org.antlr.v4.runtime.TokenStreamRewriter;
 import org.antlr.v4.runtime.atn.PredictionMode;
+import org.apache.paimon.codegen.codesplit.JavaParser.BlockStatementContext;
+import org.apache.paimon.codegen.codesplit.JavaParser.StatementContext;
+import org.apache.paimon.utils.Pair;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -41,8 +40,8 @@ import java.util.stream.Collectors;
  *
  * <p>BlockStatementGrouper does not recognize if statement operates on local of class member
  * variable. Because of that, code must be preprocessed by {@link
- * org.apache.flink.table.store.codegen.codesplit.DeclarationRewriter} which converts all local
- * variables extracted as to member variables.
+ * org.apache.paimon.codegen.codesplit.DeclarationRewriter} which converts all local variables
+ * extracted as to member variables.
  *
  * <p><i>Before</i>
  *
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriter.java
index 4dc020bd9..ef6622bf9 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriter.java
@@ -15,15 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
-
-import org.apache.flink.table.store.codegen.codesplit.BlockStatementGrouper.RewriteGroupedCode;
-import org.apache.flink.table.store.codegen.codesplit.JavaParser.StatementContext;
+package org.apache.paimon.codegen.codesplit;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
 import org.antlr.v4.runtime.TokenStreamRewriter;
 import org.antlr.v4.runtime.atn.PredictionMode;
+import org.apache.paimon.codegen.codesplit.BlockStatementGrouper.RewriteGroupedCode;
+import org.apache.paimon.codegen.codesplit.JavaParser.StatementContext;
 
 import java.util.LinkedHashSet;
 import java.util.List;
@@ -37,9 +36,9 @@ import java.util.StringJoiner;
  * extracted also to separate methods.
  *
  * <p>This rewriter only deals with functions without return values. Functions with return values
- * should have been converted by {@link
- * org.apache.flink.table.store.codegen.codesplit.ReturnValueRewriter}. Also, this rewriter will not
- * extract blocks containing <code>return</code> statements for correctness.
+ * should have been converted by {@link org.apache.paimon.codegen.codesplit.ReturnValueRewriter}.
+ * Also, this rewriter will not extract blocks containing <code>return</code> statements for
+ * correctness.
  *
  * <p><i>Before</i>
  *
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitter.java
index 6f2234f87..63d324ed2 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitter.java
@@ -15,17 +15,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
-
-import org.apache.flink.table.store.codegen.codesplit.JavaParser.BlockStatementContext;
-import org.apache.flink.table.store.codegen.codesplit.JavaParser.StatementContext;
-import org.apache.paimon.utils.Preconditions;
+package org.apache.paimon.codegen.codesplit;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
 import org.antlr.v4.runtime.ParserRuleContext;
 import org.antlr.v4.runtime.TokenStreamRewriter;
 import org.antlr.v4.runtime.atn.PredictionMode;
+import org.apache.paimon.codegen.codesplit.JavaParser.BlockStatementContext;
+import org.apache.paimon.codegen.codesplit.JavaParser.StatementContext;
+import org.apache.paimon.utils.Preconditions;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -39,8 +38,8 @@ import java.util.stream.Collectors;
  *
  * <p>BlockStatementSplitter does not recognize if statement operates on local of class member
  * variable. Because of that, code must be preprocessed by {@link
- * org.apache.flink.table.store.codegen.codesplit.DeclarationRewriter} which converts all local
- * variables extracted as to member variables.
+ * org.apache.paimon.codegen.codesplit.DeclarationRewriter} which converts all local variables
+ * extracted as to member variables.
  *
  * <p><i>Before</i>
  *
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriter.java
index fcfcad779..d7cfce709 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriter.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 /** Interface for Java code rewriter. */
 public interface CodeRewriter {
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java
index c5e4ef13c..64562c66e 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeRewriterTestBase.java
@@ -15,17 +15,17 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.apache.paimon.utils.FileIOUtils;
 
 import java.io.File;
 import java.util.function.Function;
 
-import static org.apache.flink.table.store.codegen.codesplit.CodeSplitTestUtil.trimLines;
+import static org.apache.paimon.codegen.codesplit.CodeSplitTestUtil.trimLines;
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Base test class for {@link org.apache.flink.table.store.codegen.codesplit.CodeRewriter}. */
+/** Base test class for {@link org.apache.paimon.codegen.codesplit.CodeRewriter}. */
 abstract class CodeRewriterTestBase<R extends CodeRewriter> {
 
     private final String resourceDir;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitUtil.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitUtil.java
index ae936f2bf..f374bc5f8 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitUtil.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitUtil.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.antlr.v4.runtime.CharStream;
 import org.antlr.v4.runtime.ParserRuleContext;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriter.java
index c1d2af31a..b6db61087 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriter.java
@@ -15,15 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
-
-import org.apache.paimon.utils.Preconditions;
+package org.apache.paimon.codegen.codesplit;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
 import org.antlr.v4.runtime.Token;
 import org.antlr.v4.runtime.TokenStreamRewriter;
 import org.antlr.v4.runtime.atn.PredictionMode;
+import org.apache.paimon.utils.Preconditions;
 
 import java.util.HashMap;
 import java.util.HashSet;
@@ -35,8 +34,7 @@ import java.util.Stack;
  * Extract and rename local variables into member variables.
  *
  * <p>This rewriter only deals with functions without return values. Functions with return values
- * should have been converted by {@link
- * org.apache.flink.table.store.codegen.codesplit.ReturnValueRewriter}.
+ * should have been converted by {@link org.apache.paimon.codegen.codesplit.ReturnValueRewriter}.
  *
  * <p><i>Before</i>
  *
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/FunctionSplitter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/FunctionSplitter.java
index 1a2b40945..ffad29689 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/FunctionSplitter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/FunctionSplitter.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
@@ -31,10 +31,10 @@ import java.util.Map;
  * Split long functions into several smaller functions.
  *
  * <p>This rewriter only deals with functions without return values. Functions with return values
- * should have been converted by {@link
- * org.apache.flink.table.store.codegen.codesplit.ReturnValueRewriter}. For functions with <code>
+ * should have been converted by {@link org.apache.paimon.codegen.codesplit.ReturnValueRewriter}.
+ * For functions with <code>
  * return</code> statements, this rewriter will add a check for early returns with the help of
- * {@link org.apache.flink.table.store.codegen.codesplit.AddBoolBeforeReturnRewriter}.
+ * {@link org.apache.paimon.codegen.codesplit.AddBoolBeforeReturnRewriter}.
  *
  * <p><i>Before</i>
  *
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitter.java
index d4656b2c1..4cd86c3c1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitter.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import java.util.Optional;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriter.java
index bcf2dd1da..d800c3bde 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriter.java
@@ -15,15 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
-
-import org.apache.paimon.utils.Preconditions;
+package org.apache.paimon.codegen.codesplit;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
 import org.antlr.v4.runtime.ParserRuleContext;
 import org.antlr.v4.runtime.TokenStreamRewriter;
 import org.antlr.v4.runtime.atn.PredictionMode;
+import org.apache.paimon.utils.Preconditions;
 
 import java.util.ArrayList;
 import java.util.HashMap;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnAndJumpCounter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnAndJumpCounter.java
index fc68bf264..03dc73429 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnAndJumpCounter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnAndJumpCounter.java
@@ -15,9 +15,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
-import org.apache.flink.table.store.codegen.codesplit.JavaParser.StatementContext;
+import org.apache.paimon.codegen.codesplit.JavaParser.StatementContext;
 
 /** Simple parser that counts combined number of 'return', 'continue' and 'break' kay words. */
 public class ReturnAndJumpCounter extends JavaParserBaseVisitor<Void> {
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriter.java b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriter.java
index e2a8eea52..a866dcf60 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriter.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/AbstractBinaryWriter.java b/paimon-common/src/main/java/org/apache/paimon/data/AbstractBinaryWriter.java
index b44f99701..9856f4bd8 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/AbstractBinaryWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/AbstractBinaryWriter.java
@@ -17,12 +17,11 @@
 
 package org.apache.paimon.data;
 
-import org.apache.paimon.memory.MemorySegment;
-import org.apache.paimon.memory.MemorySegmentUtils;
-
 import org.apache.paimon.data.serializer.InternalArraySerializer;
 import org.apache.paimon.data.serializer.InternalMapSerializer;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
 
 import java.nio.charset.StandardCharsets;
 import java.util.Arrays;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
index 3c2744a55..d92516857 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryArray.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.paimon.types.DataType;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.lang.reflect.Array;
 
 import static org.apache.paimon.memory.MemorySegment.UNSAFE;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
index 48d3e19e0..7752cb471 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryMap.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.paimon.types.DataType;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.util.HashMap;
 import java.util.Map;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
index 7b7e1d8b1..78c1063d1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryRow.java
@@ -17,6 +17,7 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.paimon.types.DataType;
@@ -26,8 +27,6 @@ import org.apache.paimon.types.LocalZonedTimestampType;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.TimestampType;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.nio.ByteOrder;
 
 import static org.apache.paimon.utils.Preconditions.checkArgument;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
index 86b78a5a7..8a533d597 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryString.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
 
-import org.apache.paimon.annotation.Experimental;
-
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/BinaryWriter.java b/paimon-common/src/main/java/org/apache/paimon/data/BinaryWriter.java
index 9cd405acf..0da3bced2 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/BinaryWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/BinaryWriter.java
@@ -17,16 +17,15 @@
 
 package org.apache.paimon.data;
 
-import org.apache.paimon.types.DataType;
-import org.apache.paimon.types.DecimalType;
-import org.apache.paimon.types.LocalZonedTimestampType;
-import org.apache.paimon.types.TimestampType;
-
 import org.apache.paimon.data.serializer.InternalArraySerializer;
 import org.apache.paimon.data.serializer.InternalMapSerializer;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.data.serializer.InternalSerializers;
 import org.apache.paimon.data.serializer.Serializer;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.LocalZonedTimestampType;
+import org.apache.paimon.types.TimestampType;
 
 import java.io.Serializable;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/Decimal.java b/paimon-common/src/main/java/org/apache/paimon/data/Decimal.java
index 00bbebabf..9c8e15021 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/Decimal.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/Decimal.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.paimon.types.DecimalType;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.types.DecimalType;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/GenericArray.java b/paimon-common/src/main/java/org/apache/paimon/data/GenericArray.java
index 7e5947931..54616b8aa 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/GenericArray.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/GenericArray.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.utils.ArrayUtils;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.io.Serializable;
 import java.util.Arrays;
 import java.util.Objects;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/GenericMap.java b/paimon-common/src/main/java/org/apache/paimon/data/GenericMap.java
index b3ee5dac2..8f89b3b2e 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/GenericMap.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/GenericMap.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.types.MapType;
 import org.apache.paimon.types.MultisetType;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.io.Serializable;
 import java.util.Map;
 import java.util.Objects;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/GenericRow.java b/paimon-common/src/main/java/org/apache/paimon/data/GenericRow.java
index c79eed6a9..354a96232 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/GenericRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/GenericRow.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.io.Serializable;
 import java.util.Arrays;
 import java.util.Objects;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/InternalArray.java b/paimon-common/src/main/java/org/apache/paimon/data/InternalArray.java
index 31e6ba46d..f23574e26 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/InternalArray.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/InternalArray.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.DataType;
 
-import org.apache.paimon.annotation.Experimental;
-
 import javax.annotation.Nullable;
 
 import java.io.Serializable;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/InternalMap.java b/paimon-common/src/main/java/org/apache/paimon/data/InternalMap.java
index 01c63599a..068e72141 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/InternalMap.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/InternalMap.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.types.MapType;
 import org.apache.paimon.types.MultisetType;
 
-import org.apache.paimon.annotation.Experimental;
-
 /**
  * Base interface of an internal data structure representing data of {@link MapType} or {@link
  * MultisetType}.
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java b/paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java
index 8330c2ea1..8f384d6ea 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypeChecks;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.annotation.Experimental;
-
 import javax.annotation.Nullable;
 
 import java.io.Serializable;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/JoinedRow.java b/paimon-common/src/main/java/org/apache/paimon/data/JoinedRow.java
index 313a92b97..26933fee1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/JoinedRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/JoinedRow.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.data;
 
-import org.apache.paimon.types.RowKind;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.types.RowKind;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java b/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
index 17323c15e..b7410de30 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/NestedRow.java
@@ -21,8 +21,8 @@ import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.paimon.types.RowKind;
 
-import static org.apache.paimon.utils.Preconditions.checkArgument;
 import static org.apache.paimon.data.BinaryRow.calculateBitSetWidthInBytes;
+import static org.apache.paimon.utils.Preconditions.checkArgument;
 
 /**
  * Its memory storage structure is exactly the same with {@link BinaryRow}. The only different is
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/Timestamp.java b/paimon-common/src/main/java/org/apache/paimon/data/Timestamp.java
index ba7e9d7d2..7302033ec 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/Timestamp.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/Timestamp.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.types.LocalZonedTimestampType;
 import org.apache.paimon.types.TimestampType;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.io.Serializable;
 import java.time.Instant;
 import java.time.LocalDate;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRow.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRow.java
index a7e2d47f9..eb9c6a347 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRow.java
@@ -18,8 +18,6 @@
 
 package org.apache.paimon.data.columnar;
 
-import org.apache.paimon.types.RowKind;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.DataSetters;
 import org.apache.paimon.data.Decimal;
@@ -28,6 +26,7 @@ import org.apache.paimon.data.InternalMap;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.data.columnar.BytesColumnVector.Bytes;
+import org.apache.paimon.types.RowKind;
 
 import java.io.Serializable;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRowIterator.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRowIterator.java
index 6ad832ecf..5c04fb0f0 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRowIterator.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/ColumnarRowIterator.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.data.columnar;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.utils.RecyclableIterator;
 
-import org.apache.paimon.data.InternalRow;
-
 import javax.annotation.Nullable;
 
 /**
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/AbstractHeapVector.java b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/AbstractHeapVector.java
index c244e9448..4e1e7c17c 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/AbstractHeapVector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/columnar/heap/AbstractHeapVector.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.data.columnar.heap;
 
-import org.apache.paimon.memory.MemorySegment;
-
 import org.apache.paimon.data.columnar.writable.AbstractWritableVector;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.nio.ByteOrder;
 import java.util.Arrays;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
index e0d185d60..e5f3c9e7d 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryRowSerializer.java
@@ -18,16 +18,15 @@
 
 package org.apache.paimon.data.serializer;
 
+import org.apache.paimon.data.AbstractPagedInputView;
+import org.apache.paimon.data.AbstractPagedOutputView;
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentUtils;
 import org.apache.paimon.memory.MemorySegmentWritable;
 
-import org.apache.paimon.data.AbstractPagedInputView;
-import org.apache.paimon.data.AbstractPagedOutputView;
-import org.apache.paimon.data.BinaryRow;
-
 import java.io.IOException;
 
 import static org.apache.paimon.utils.Preconditions.checkArgument;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryStringSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryStringSerializer.java
index 58bce387a..cc256bad3 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryStringSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/BinaryStringSerializer.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.data.serializer;
 
+import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.memory.MemorySegmentUtils;
 
-import org.apache.paimon.data.BinaryString;
-
 import java.io.IOException;
 
 /** Serializer for {@link BinaryString}. */
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/DecimalSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/DecimalSerializer.java
index c60ee7011..1aea441e0 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/DecimalSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/DecimalSerializer.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.data.serializer;
 
+import org.apache.paimon.data.Decimal;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
 
-import org.apache.paimon.data.Decimal;
-
 import java.io.IOException;
 
 /** Serializer for {@link Decimal}. */
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
index e3c835475..8b7955ecd 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalArraySerializer.java
@@ -18,18 +18,17 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.paimon.io.DataInputView;
-import org.apache.paimon.io.DataOutputView;
-import org.apache.paimon.memory.MemorySegment;
-import org.apache.paimon.memory.MemorySegmentUtils;
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryArrayWriter;
 import org.apache.paimon.data.BinaryWriter;
 import org.apache.paimon.data.GenericArray;
 import org.apache.paimon.data.InternalArray;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
+import org.apache.paimon.types.DataType;
 
 import java.io.IOException;
 import java.lang.reflect.Array;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
index 04950331e..1584e17e1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalMapSerializer.java
@@ -18,18 +18,17 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.paimon.io.DataInputView;
-import org.apache.paimon.io.DataOutputView;
-import org.apache.paimon.memory.MemorySegment;
-import org.apache.paimon.memory.MemorySegmentUtils;
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryArrayWriter;
 import org.apache.paimon.data.BinaryMap;
 import org.apache.paimon.data.BinaryWriter;
 import org.apache.paimon.data.InternalArray;
 import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.memory.MemorySegmentUtils;
+import org.apache.paimon.types.DataType;
 
 import java.io.IOException;
 import java.util.HashMap;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
index 141742db1..145e5811b 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/InternalRowSerializer.java
@@ -18,11 +18,6 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.paimon.io.DataInputView;
-import org.apache.paimon.io.DataOutputView;
-import org.apache.paimon.types.DataType;
-import org.apache.paimon.types.RowType;
-
 import org.apache.paimon.data.AbstractPagedInputView;
 import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.data.BinaryRow;
@@ -31,6 +26,10 @@ import org.apache.paimon.data.BinaryWriter;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.NestedRow;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowType;
 
 import java.io.IOException;
 import java.util.Arrays;
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
index 10aa9303a..3faebdabe 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/RowCompactedSerializer.java
@@ -18,14 +18,6 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.paimon.io.DataInputView;
-import org.apache.paimon.io.DataOutputView;
-import org.apache.paimon.memory.MemorySegment;
-import org.apache.paimon.types.DataType;
-import org.apache.paimon.types.RowKind;
-import org.apache.paimon.types.RowType;
-import org.apache.paimon.utils.VarLengthIntUtils;
-
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryMap;
@@ -37,6 +29,13 @@ import org.apache.paimon.data.InternalMap;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.InternalRow.FieldGetter;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.io.DataInputView;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.VarLengthIntUtils;
 
 import javax.annotation.Nullable;
 
@@ -45,12 +44,12 @@ import java.io.Serializable;
 import java.util.Arrays;
 import java.util.Objects;
 
+import static org.apache.paimon.data.BinaryRow.HEADER_SIZE_IN_BITS;
 import static org.apache.paimon.memory.MemorySegmentUtils.bitGet;
 import static org.apache.paimon.memory.MemorySegmentUtils.bitSet;
 import static org.apache.paimon.types.DataTypeChecks.getPrecision;
 import static org.apache.paimon.types.DataTypeChecks.getScale;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
-import static org.apache.paimon.data.BinaryRow.HEADER_SIZE_IN_BITS;
 
 /** A {@link Serializer} for {@link InternalRow} using compacted binary. */
 public class RowCompactedSerializer implements Serializer<InternalRow> {
diff --git a/paimon-common/src/main/java/org/apache/paimon/data/serializer/TimestampSerializer.java b/paimon-common/src/main/java/org/apache/paimon/data/serializer/TimestampSerializer.java
index f8ce78919..818a73aa7 100644
--- a/paimon-common/src/main/java/org/apache/paimon/data/serializer/TimestampSerializer.java
+++ b/paimon-common/src/main/java/org/apache/paimon/data/serializer/TimestampSerializer.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.data.serializer;
 
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
 
-import org.apache.paimon.data.Timestamp;
-
 import java.io.IOException;
 
 /**
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java
index 926a047a5..7af47ee56 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/Equal.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java
index 206491956..6f4256952 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterOrEqual.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java
index 2c47ee732..00d189040 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/GreaterThan.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java
index 768aa2a1f..56f32be79 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/In.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java
index 37dcdc217..6844619a0 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNotNull.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java
index 4fc9c1db2..adf4eebd4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/IsNull.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java
index 5e0940823..e04ba86c6 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafFunction.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.io.Serializable;
 import java.util.List;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java
index 9786b54a4..d79b23192 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafPredicate.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.io.DataInputViewStreamWrapper;
-import org.apache.paimon.io.DataOutputViewStreamWrapper;
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.data.serializer.InternalSerializers;
 import org.apache.paimon.data.serializer.ListSerializer;
 import org.apache.paimon.data.serializer.NullableSerializer;
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.io.DataInputViewStreamWrapper;
+import org.apache.paimon.io.DataOutputViewStreamWrapper;
+import org.apache.paimon.types.DataType;
 
 import java.io.IOException;
 import java.io.ObjectInputStream;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java
index 3b0e9b03a..30c0e663b 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LeafUnaryFunction.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java
index 7f51007e3..bd9412abc 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessOrEqual.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java
index 8b39aecc4..ac5387106 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/LessThan.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java
index 718d0d0fb..e6cca773c 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotEqual.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java
index 0aebb858c..5783b58c7 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NotIn.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java
index 1d6c49349..a05d70b44 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/NullFalseLeafBinaryFunction.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java
index 117683d94..920b7d812 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateBuilder.java
@@ -18,6 +18,10 @@
 
 package org.apache.paimon.file.predicate;
 
+import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DecimalType;
@@ -25,11 +29,6 @@ import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Preconditions;
 import org.apache.paimon.utils.TypeUtils;
 
-import org.apache.paimon.annotation.Experimental;
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.Decimal;
-import org.apache.paimon.data.Timestamp;
-
 import javax.annotation.Nullable;
 
 import java.math.BigDecimal;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java
index 2eb5558ef..8e22f605f 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/PredicateFilter.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.predicate;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
-import org.apache.paimon.data.InternalRow;
-
 import javax.annotation.Nullable;
 
 import java.util.List;
diff --git a/paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java b/paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java
index 5a769a222..2d15d9305 100644
--- a/paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java
+++ b/paimon-common/src/main/java/org/apache/paimon/file/predicate/StartsWith.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.DataType;
 
 import java.util.List;
 import java.util.Optional;
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java b/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
index 5ecf845b9..d1c399aab 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FieldStatsCollector.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.format;
 
-import org.apache.paimon.types.RowType;
-import org.apache.paimon.utils.RowDataToObjectArrayConverter;
-
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalSerializers;
 import org.apache.paimon.data.serializer.Serializer;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
 /** Collector to extract statistics of each fields from a series of records. */
 public class FieldStatsCollector {
diff --git a/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java b/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
index 7398ce146..7e7855016 100644
--- a/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
+++ b/paimon-common/src/main/java/org/apache/paimon/format/FormatReaderFactory.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.format;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.io.IOException;
 import java.io.Serializable;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/fs/FileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/FileIO.java
index 2dafb94c6..fcf757ce8 100644
--- a/paimon-common/src/main/java/org/apache/paimon/fs/FileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/FileIO.java
@@ -19,9 +19,9 @@
 package org.apache.paimon.fs;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.paimon.fs.local.LocalFileIO;
 
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.fs.local.LocalFileIO;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/fs/Path.java b/paimon-common/src/main/java/org/apache/paimon/fs/Path.java
index 2fe12aeb6..c135c311b 100644
--- a/paimon-common/src/main/java/org/apache/paimon/fs/Path.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/Path.java
@@ -22,9 +22,8 @@
 
 package org.apache.paimon.fs;
 
-import org.apache.paimon.utils.StringUtils;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.utils.StringUtils;
 
 import java.io.Serializable;
 import java.net.URI;
diff --git a/paimon-common/src/main/java/org/apache/paimon/fs/PluginFileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/PluginFileIO.java
index ff3da1065..b0b660e49 100644
--- a/paimon-common/src/main/java/org/apache/paimon/fs/PluginFileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/PluginFileIO.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.fs;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
+
 import org.apache.paimon.options.Options;
 
 import java.io.IOException;
diff --git a/paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIO.java
index a3c4710a8..c7dfaae3d 100644
--- a/paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/hadoop/HadoopFileIO.java
@@ -19,6 +19,11 @@
 package org.apache.paimon.fs.hadoop;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
+
+import org.apache.hadoop.fs.FSDataInputStream;
+import org.apache.hadoop.fs.FSDataOutputStream;
+import org.apache.hadoop.fs.FileSystem;
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
@@ -26,11 +31,6 @@ import org.apache.paimon.fs.PositionOutputStream;
 import org.apache.paimon.fs.SeekableInputStream;
 import org.apache.paimon.hadoop.SerializableConfiguration;
 
-import org.apache.hadoop.fs.FSDataInputStream;
-import org.apache.hadoop.fs.FSDataOutputStream;
-import org.apache.hadoop.fs.FileSystem;
-import org.apache.paimon.annotation.VisibleForTesting;
-
 import java.io.IOException;
 
 /** Hadoop {@link FileIO}. */
diff --git a/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java b/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
index 164cb8035..c66ec95d1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
+++ b/paimon-common/src/main/java/org/apache/paimon/fs/local/LocalFileIO.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.fs.local;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
+
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
diff --git a/paimon-common/src/main/java/org/apache/paimon/io/cache/CacheManager.java b/paimon-common/src/main/java/org/apache/paimon/io/cache/CacheManager.java
index a18f531a0..b1af2fe1d 100644
--- a/paimon-common/src/main/java/org/apache/paimon/io/cache/CacheManager.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/cache/CacheManager.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.io.cache;
 
-import org.apache.paimon.memory.MemorySegment;
-import org.apache.paimon.options.MemorySize;
-
 import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
 import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
 import org.apache.flink.shaded.guava30.com.google.common.cache.RemovalNotification;
 
 import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.options.MemorySize;
 
 import java.io.IOException;
 import java.io.RandomAccessFile;
diff --git a/paimon-common/src/main/java/org/apache/paimon/io/cache/CachedRandomInputView.java b/paimon-common/src/main/java/org/apache/paimon/io/cache/CachedRandomInputView.java
index 6b291edbb..19f844b2a 100644
--- a/paimon-common/src/main/java/org/apache/paimon/io/cache/CachedRandomInputView.java
+++ b/paimon-common/src/main/java/org/apache/paimon/io/cache/CachedRandomInputView.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.io.cache;
 
+import org.apache.paimon.data.AbstractPagedInputView;
 import org.apache.paimon.io.SeekableDataInputView;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.utils.MathUtils;
 
-import org.apache.paimon.data.AbstractPagedInputView;
-
 import java.io.Closeable;
 import java.io.EOFException;
 import java.io.File;
diff --git a/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreReader.java b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreReader.java
index 0407d0450..ae0ef221b 100644
--- a/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreReader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreReader.java
@@ -27,7 +27,6 @@ import org.apache.paimon.io.cache.CachedRandomInputView;
 import org.apache.paimon.lookup.LookupStoreReader;
 import org.apache.paimon.utils.MurmurHashUtils;
 import org.apache.paimon.utils.VarLengthIntUtils;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreWriter.java b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreWriter.java
index ce946e841..4b154b51f 100644
--- a/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreWriter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/lookup/hash/HashLookupStoreWriter.java
@@ -25,7 +25,6 @@ package org.apache.paimon.lookup.hash;
 import org.apache.paimon.lookup.LookupStoreWriter;
 import org.apache.paimon.utils.MurmurHashUtils;
 import org.apache.paimon.utils.VarLengthIntUtils;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentUtils.java b/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentUtils.java
index 3913b15c0..47407d196 100644
--- a/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/memory/MemorySegmentUtils.java
@@ -18,9 +18,6 @@
 
 package org.apache.paimon.memory;
 
-import org.apache.paimon.io.DataOutputView;
-import org.apache.paimon.utils.MurmurHashUtils;
-
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryMap;
@@ -31,13 +28,15 @@ import org.apache.paimon.data.InternalMap;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.NestedRow;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.io.DataOutputView;
+import org.apache.paimon.utils.MurmurHashUtils;
 
 import java.io.IOException;
 
-import static org.apache.paimon.memory.MemorySegment.BYTE_ARRAY_BASE_OFFSET;
-import static org.apache.paimon.memory.MemorySegment.LITTLE_ENDIAN;
 import static org.apache.paimon.data.BinarySection.HIGHEST_FIRST_BIT;
 import static org.apache.paimon.data.BinarySection.HIGHEST_SECOND_TO_EIGHTH_BIT;
+import static org.apache.paimon.memory.MemorySegment.BYTE_ARRAY_BASE_OFFSET;
+import static org.apache.paimon.memory.MemorySegment.LITTLE_ENDIAN;
 
 /** Utils for {@link MemorySegment}. */
 public class MemorySegmentUtils {
diff --git a/paimon-common/src/main/java/org/apache/paimon/options/ConfigOption.java b/paimon-common/src/main/java/org/apache/paimon/options/ConfigOption.java
index 5741eae93..5d212c020 100644
--- a/paimon-common/src/main/java/org/apache/paimon/options/ConfigOption.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/ConfigOption.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.options;
 
-import org.apache.paimon.options.description.Description;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.options.description.Description;
 
 import java.util.Arrays;
 import java.util.Collections;
diff --git a/paimon-common/src/main/java/org/apache/paimon/options/ConfigOptions.java b/paimon-common/src/main/java/org/apache/paimon/options/ConfigOptions.java
index e1c4b0061..8c568d384 100644
--- a/paimon-common/src/main/java/org/apache/paimon/options/ConfigOptions.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/ConfigOptions.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.options;
 
-import org.apache.paimon.options.description.Description;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.options.description.Description;
 
 import java.time.Duration;
 import java.util.Arrays;
diff --git a/paimon-common/src/main/java/org/apache/paimon/options/description/Description.java b/paimon-common/src/main/java/org/apache/paimon/options/description/Description.java
index 1ed419501..1b56f357c 100644
--- a/paimon-common/src/main/java/org/apache/paimon/options/description/Description.java
+++ b/paimon-common/src/main/java/org/apache/paimon/options/description/Description.java
@@ -24,8 +24,8 @@ import java.util.ArrayList;
 import java.util.List;
 
 /**
- * Description for {@link org.apache.paimon.options.ConfigOption}. Allows providing
- * multiple rich formats.
+ * Description for {@link org.apache.paimon.options.ConfigOption}. Allows providing multiple rich
+ * formats.
  *
  * @since 0.4.0
  */
diff --git a/paimon-common/src/main/java/org/apache/paimon/plugin/ComponentClassLoader.java b/paimon-common/src/main/java/org/apache/paimon/plugin/ComponentClassLoader.java
index e1dd27c9e..46b73f809 100644
--- a/paimon-common/src/main/java/org/apache/paimon/plugin/ComponentClassLoader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/plugin/ComponentClassLoader.java
@@ -17,11 +17,10 @@
 
 package org.apache.paimon.plugin;
 
-import org.apache.paimon.utils.FunctionWithException;
-
 import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 
 import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.utils.FunctionWithException;
 
 import java.io.IOException;
 import java.net.URL;
diff --git a/paimon-common/src/main/java/org/apache/paimon/reader/RecordReader.java b/paimon-common/src/main/java/org/apache/paimon/reader/RecordReader.java
index 210230dbb..8ef2aeb72 100644
--- a/paimon-common/src/main/java/org/apache/paimon/reader/RecordReader.java
+++ b/paimon-common/src/main/java/org/apache/paimon/reader/RecordReader.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.reader;
 
-import org.apache.paimon.utils.CloseableIterator;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.utils.CloseableIterator;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/types/ArrayType.java b/paimon-common/src/main/java/org/apache/paimon/types/ArrayType.java
index bb26e7cc5..b4448b7f3 100644
--- a/paimon-common/src/main/java/org/apache/paimon/types/ArrayType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/ArrayType.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.types;
 
-import org.apache.paimon.utils.Preconditions;
-
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.utils.Preconditions;
 
 import java.io.IOException;
 import java.util.Objects;
diff --git a/paimon-common/src/main/java/org/apache/paimon/types/DataType.java b/paimon-common/src/main/java/org/apache/paimon/types/DataType.java
index 8dcdcbba8..89fe7fea1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/types/DataType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataType.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.types;
 
-import org.apache.paimon.utils.Preconditions;
-
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.utils.Preconditions;
 
 import javax.annotation.Nonnull;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/types/DataTypeJsonParser.java b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeJsonParser.java
index a7a3f01e6..56cf14df4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/types/DataTypeJsonParser.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/DataTypeJsonParser.java
@@ -30,8 +30,8 @@ import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
 /**
- * Parser for creating instances of {@link org.apache.paimon.types.DataType} from a
- * serialized string created with {@link org.apache.paimon.types.DataType#serializeJson}.
+ * Parser for creating instances of {@link org.apache.paimon.types.DataType} from a serialized
+ * string created with {@link org.apache.paimon.types.DataType#serializeJson}.
  */
 public final class DataTypeJsonParser {
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/types/MapType.java b/paimon-common/src/main/java/org/apache/paimon/types/MapType.java
index 8eebd9685..7a509f747 100644
--- a/paimon-common/src/main/java/org/apache/paimon/types/MapType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/MapType.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.types;
 
-import org.apache.paimon.utils.Preconditions;
-
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.utils.Preconditions;
 
 import java.io.IOException;
 import java.util.Objects;
diff --git a/paimon-common/src/main/java/org/apache/paimon/types/MultisetType.java b/paimon-common/src/main/java/org/apache/paimon/types/MultisetType.java
index fda3cacf2..ffe46076d 100644
--- a/paimon-common/src/main/java/org/apache/paimon/types/MultisetType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/MultisetType.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.types;
 
-import org.apache.paimon.utils.Preconditions;
-
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.utils.Preconditions;
 
 import java.io.IOException;
 import java.util.Objects;
diff --git a/paimon-common/src/main/java/org/apache/paimon/types/RowType.java b/paimon-common/src/main/java/org/apache/paimon/types/RowType.java
index b27a2aee5..74e358ce9 100644
--- a/paimon-common/src/main/java/org/apache/paimon/types/RowType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/types/RowType.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.types;
 
-import org.apache.paimon.utils.Preconditions;
-import org.apache.paimon.utils.StringUtils;
-
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.utils.Preconditions;
+import org.apache.paimon.utils.StringUtils;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/BinaryRowDataUtil.java b/paimon-common/src/main/java/org/apache/paimon/utils/BinaryRowDataUtil.java
index 96da9d786..f58cc8ff3 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/BinaryRowDataUtil.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/BinaryRowDataUtil.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.utils;
 
-import org.apache.paimon.memory.MemorySegment;
-
 import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.memory.MemorySegment;
 
 /**
  * Utilities for {@link BinaryRow}. Many of the methods in this class are used in code generation.
diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/HadoopUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/HadoopUtils.java
index 2dc13cc8b..9a7673296 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/HadoopUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/HadoopUtils.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.utils;
 
-import org.apache.paimon.options.Options;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hdfs.HdfsConfiguration;
+import org.apache.paimon.options.Options;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/KeyProjectedRow.java b/paimon-common/src/main/java/org/apache/paimon/utils/KeyProjectedRow.java
index 62742acc8..ea11105bb 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/KeyProjectedRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/KeyProjectedRow.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.utils;
 
-import org.apache.paimon.types.RowKind;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
 import org.apache.paimon.data.InternalArray;
 import org.apache.paimon.data.InternalMap;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.types.RowKind;
 
 import java.util.Arrays;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/ProjectedRow.java b/paimon-common/src/main/java/org/apache/paimon/utils/ProjectedRow.java
index 4239b4afb..96c91520a 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/ProjectedRow.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/ProjectedRow.java
@@ -18,15 +18,14 @@
 
 package org.apache.paimon.utils;
 
-import org.apache.paimon.types.DataType;
-import org.apache.paimon.types.RowKind;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
 import org.apache.paimon.data.InternalArray;
 import org.apache.paimon.data.InternalMap;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.RowKind;
 
 import java.util.Arrays;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/Projection.java b/paimon-common/src/main/java/org/apache/paimon/utils/Projection.java
index 553e949ff..d673a7724 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/Projection.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/Projection.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.utils;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.lang.reflect.Array;
 import java.util.ArrayList;
 import java.util.Arrays;
diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/RowDataToObjectArrayConverter.java b/paimon-common/src/main/java/org/apache/paimon/utils/RowDataToObjectArrayConverter.java
index a8438fe0b..7ef96eaec 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/RowDataToObjectArrayConverter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/RowDataToObjectArrayConverter.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.utils;
 
-import org.apache.paimon.types.RowType;
-
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.types.RowType;
 
 import java.util.stream.IntStream;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/RowDataUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/RowDataUtils.java
index 7c3ea4b3b..ac26c0429 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/RowDataUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/RowDataUtils.java
@@ -18,17 +18,6 @@
 
 package org.apache.paimon.utils;
 
-import org.apache.paimon.types.ArrayType;
-import org.apache.paimon.types.DataType;
-import org.apache.paimon.types.DataTypeRoot;
-import org.apache.paimon.types.DecimalType;
-import org.apache.paimon.types.IntType;
-import org.apache.paimon.types.LocalZonedTimestampType;
-import org.apache.paimon.types.MapType;
-import org.apache.paimon.types.MultisetType;
-import org.apache.paimon.types.RowType;
-import org.apache.paimon.types.TimestampType;
-
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryMap;
 import org.apache.paimon.data.BinaryRow;
@@ -42,6 +31,16 @@ import org.apache.paimon.data.InternalMap;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.NestedRow;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeRoot;
+import org.apache.paimon.types.DecimalType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.LocalZonedTimestampType;
+import org.apache.paimon.types.MapType;
+import org.apache.paimon.types.MultisetType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.TimestampType;
 
 import java.math.BigDecimal;
 import java.math.RoundingMode;
diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/SortUtil.java b/paimon-common/src/main/java/org/apache/paimon/utils/SortUtil.java
index 1359b1c2c..b726532a3 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/SortUtil.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/SortUtil.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.utils;
 
-import org.apache.paimon.memory.MemorySegment;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.nio.ByteOrder;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/StringUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/StringUtils.java
index 099cb0107..971b3a008 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/StringUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/StringUtils.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.utils;
 
-import org.apache.paimon.memory.MemorySegmentUtils;
-
 import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.memory.MemorySegmentUtils;
 
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -30,9 +29,9 @@ import java.util.Objects;
 import java.util.Random;
 import java.util.concurrent.ThreadLocalRandom;
 
+import static org.apache.paimon.data.BinaryString.fromBytes;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
 import static org.apache.paimon.utils.Preconditions.checkNotNull;
-import static org.apache.paimon.data.BinaryString.fromBytes;
 
 /**
  * Utils for {@link BinaryString} and utility class to convert objects into strings in vice-versa.
diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/TypeUtils.java b/paimon-common/src/main/java/org/apache/paimon/utils/TypeUtils.java
index c199734bf..888c7ebf3 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/TypeUtils.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/TypeUtils.java
@@ -18,6 +18,9 @@
 
 package org.apache.paimon.utils;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypeRoot;
@@ -26,10 +29,6 @@ import org.apache.paimon.types.LocalZonedTimestampType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.TimestampType;
 
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.Decimal;
-import org.apache.paimon.data.Timestamp;
-
 import java.math.BigDecimal;
 import java.time.DateTimeException;
 import java.util.Arrays;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouperTest.java b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouperTest.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouperTest.java
rename to paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouperTest.java
index ee28bee38..0d0541284 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouperTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/BlockStatementGrouperTest.java
@@ -15,17 +15,16 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
-
-import org.apache.flink.table.store.codegen.codesplit.BlockStatementGrouper.RewriteGroupedCode;
+package org.apache.paimon.codegen.codesplit;
 
+import org.apache.paimon.codegen.codesplit.BlockStatementGrouper.RewriteGroupedCode;
 import org.junit.jupiter.api.Test;
 
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.flink.table.store.codegen.codesplit.CodeSplitTestUtil.readResource;
-import static org.apache.flink.table.store.codegen.codesplit.CodeSplitTestUtil.trimLines;
+import static org.apache.paimon.codegen.codesplit.CodeSplitTestUtil.readResource;
+import static org.apache.paimon.codegen.codesplit.CodeSplitTestUtil.trimLines;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for {@link BlockStatementGrouper}. */
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriterTest.java b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriterTest.java
similarity index 97%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriterTest.java
rename to paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriterTest.java
index 3d3c88908..7a1de78a7 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriterTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/BlockStatementRewriterTest.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitterTest.java b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitterTest.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitterTest.java
rename to paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitterTest.java
index b88ea932f..190df2075 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitterTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/BlockStatementSplitterTest.java
@@ -15,14 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.junit.jupiter.api.Test;
 
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.flink.table.store.codegen.codesplit.CodeSplitTestUtil.trimLines;
+import static org.apache.paimon.codegen.codesplit.CodeSplitTestUtil.trimLines;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for {@link BlockStatementSplitter}. */
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java
similarity index 98%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java
rename to paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java
index 0a5a2fb0d..2887be6c4 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java
+++ b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/CodeSplitTestUtil.java
@@ -15,12 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.apache.paimon.utils.FileIOUtils;
 import org.apache.paimon.utils.Pair;
 import org.apache.paimon.utils.StringUtils;
-
 import org.codehaus.commons.compiler.CompileException;
 import org.codehaus.janino.SimpleCompiler;
 import org.junit.jupiter.api.Assertions;
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriterTest.java b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/DeclarationRewriterTest.java
similarity index 92%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriterTest.java
rename to paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/DeclarationRewriterTest.java
index 54fb4d839..32fe274cc 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/DeclarationRewriterTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/DeclarationRewriterTest.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.junit.jupiter.api.Test;
 
-/** Tests for {@link org.apache.flink.table.store.codegen.codesplit.DeclarationRewriter}. */
+/** Tests for {@link org.apache.paimon.codegen.codesplit.DeclarationRewriter}. */
 class DeclarationRewriterTest extends CodeRewriterTestBase<DeclarationRewriter> {
 
     public DeclarationRewriterTest() {
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/FunctionSplitterTest.java b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/FunctionSplitterTest.java
similarity index 90%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/FunctionSplitterTest.java
rename to paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/FunctionSplitterTest.java
index 086e1303f..e21cb6043 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/FunctionSplitterTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/FunctionSplitterTest.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.junit.jupiter.api.Test;
 
-/** Tests for {@link org.apache.flink.table.store.codegen.codesplit.FunctionSplitter}. */
+/** Tests for {@link org.apache.paimon.codegen.codesplit.FunctionSplitter}. */
 class FunctionSplitterTest extends CodeRewriterTestBase<FunctionSplitter> {
 
     public FunctionSplitterTest() {
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java
similarity index 95%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java
rename to paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java
index 793b8424e..731ec1d44 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/JavaCodeSplitterTest.java
@@ -15,19 +15,18 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.apache.paimon.utils.FileIOUtils;
-
 import org.junit.jupiter.api.Test;
 
 import java.io.File;
 
-import static org.apache.flink.table.store.codegen.codesplit.CodeSplitTestUtil.trimLines;
+import static org.apache.paimon.codegen.codesplit.CodeSplitTestUtil.trimLines;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
-/** Tests for {@link org.apache.flink.table.store.codegen.codesplit.JavaCodeSplitter}. */
+/** Tests for {@link org.apache.paimon.codegen.codesplit.JavaCodeSplitter}. */
 class JavaCodeSplitterTest {
 
     @Test
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaParserTest.java b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/JavaParserTest.java
similarity index 94%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaParserTest.java
rename to paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/JavaParserTest.java
index 90b16ad02..95bad9004 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/JavaParserTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/JavaParserTest.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.antlr.v4.runtime.CharStreams;
 import org.antlr.v4.runtime.CommonTokenStream;
@@ -23,7 +23,7 @@ import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link org.apache.flink.table.store.codegen.codesplit.JavaParser}. */
+/** Tests for {@link org.apache.paimon.codegen.codesplit.JavaParser}. */
 class JavaParserTest {
 
     @Test
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriterTest.java b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriterTest.java
similarity index 91%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriterTest.java
rename to paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriterTest.java
index 1777a2908..ba4f6091e 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriterTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/MemberFieldRewriterTest.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.junit.jupiter.api.Test;
 
-/** Tests for {@link org.apache.flink.table.store.codegen.codesplit.MemberFieldRewriter}. */
+/** Tests for {@link org.apache.paimon.codegen.codesplit.MemberFieldRewriter}. */
 class MemberFieldRewriterTest extends CodeRewriterTestBase<MemberFieldRewriter> {
 
     public MemberFieldRewriterTest() {
diff --git a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriterTest.java b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriterTest.java
similarity index 90%
rename from paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriterTest.java
rename to paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriterTest.java
index 884d082c9..0be87f5c1 100644
--- a/paimon-common/src/main/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriterTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/codegen/codesplit/ReturnValueRewriterTest.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store.codegen.codesplit;
+package org.apache.paimon.codegen.codesplit;
 
 import org.junit.jupiter.api.Test;
 
-/** Tests for {@link org.apache.flink.table.store.codegen.codesplit.ReturnValueRewriter}. */
+/** Tests for {@link org.apache.paimon.codegen.codesplit.ReturnValueRewriter}. */
 class ReturnValueRewriterTest extends CodeRewriterTestBase<ReturnValueRewriter> {
 
     public ReturnValueRewriterTest() {
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/BinaryRowTest.java b/paimon-common/src/test/java/org/apache/paimon/data/BinaryRowTest.java
index b9d2c8a2b..b32841c2d 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/BinaryRowTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/BinaryRowTest.java
@@ -18,6 +18,12 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
+import org.apache.paimon.data.serializer.InternalArraySerializer;
+import org.apache.paimon.data.serializer.InternalMapSerializer;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.data.serializer.InternalSerializers;
+import org.apache.paimon.data.serializer.Serializer;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
@@ -26,13 +32,6 @@ import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
 import org.apache.paimon.utils.InstantiationUtil;
-
-import org.apache.paimon.data.serializer.BinaryRowSerializer;
-import org.apache.paimon.data.serializer.InternalArraySerializer;
-import org.apache.paimon.data.serializer.InternalMapSerializer;
-import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.data.serializer.InternalSerializers;
-import org.apache.paimon.data.serializer.Serializer;
 import org.junit.jupiter.api.Test;
 
 import java.io.EOFException;
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/BinaryStringTest.java b/paimon-common/src/test/java/org/apache/paimon/data/BinaryStringTest.java
index 59068503f..b00e00d24 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/BinaryStringTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/BinaryStringTest.java
@@ -18,10 +18,9 @@
 package org.apache.paimon.data;
 
 import org.apache.paimon.memory.MemorySegment;
-import org.apache.paimon.utils.SortUtil;
-
 import org.apache.paimon.testutils.junit.parameterized.ParameterizedTestExtension;
 import org.apache.paimon.testutils.junit.parameterized.Parameters;
+import org.apache.paimon.utils.SortUtil;
 import org.junit.jupiter.api.TestTemplate;
 import org.junit.jupiter.api.extension.ExtendWith;
 
@@ -33,9 +32,9 @@ import java.util.List;
 import java.util.Random;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
-import static org.apache.paimon.utils.DecimalUtils.castFrom;
 import static org.apache.paimon.data.BinaryString.blankString;
 import static org.apache.paimon.data.BinaryString.fromBytes;
+import static org.apache.paimon.utils.DecimalUtils.castFrom;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /**
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/NestedRowTest.java b/paimon-common/src/test/java/org/apache/paimon/data/NestedRowTest.java
index 43f12e582..22e5140d3 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/NestedRowTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/NestedRowTest.java
@@ -17,10 +17,9 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.types.DataTypes;
-
-import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.junit.jupiter.api.Test;
 
 import static org.apache.paimon.data.DataFormatTestUtil.splitBytes;
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/RowDataTest.java b/paimon-common/src/test/java/org/apache/paimon/data/RowDataTest.java
index 242688f55..e489f950c 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/RowDataTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/RowDataTest.java
@@ -17,14 +17,13 @@
 
 package org.apache.paimon.data;
 
+import org.apache.paimon.data.serializer.InternalArraySerializer;
+import org.apache.paimon.data.serializer.InternalMapSerializer;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.serializer.InternalArraySerializer;
-import org.apache.paimon.data.serializer.InternalMapSerializer;
-import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalArraySerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalArraySerializerTest.java
index 2687924d7..fea4aa678 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalArraySerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalArraySerializerTest.java
@@ -18,9 +18,6 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.paimon.memory.MemorySegment;
-import org.apache.paimon.types.DataTypes;
-
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryArrayWriter;
 import org.apache.paimon.data.BinaryString;
@@ -28,6 +25,8 @@ import org.apache.paimon.data.GenericArray;
 import org.apache.paimon.data.InternalArray;
 import org.apache.paimon.data.columnar.ColumnarArray;
 import org.apache.paimon.data.columnar.heap.HeapBytesVector;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.types.DataTypes;
 
 import java.lang.reflect.Proxy;
 import java.nio.charset.StandardCharsets;
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalMapSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalMapSerializerTest.java
index e90a008a6..842032ba1 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalMapSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalMapSerializerTest.java
@@ -32,9 +32,9 @@ import java.util.HashMap;
 import java.util.Map;
 import java.util.Objects;
 
+import static org.apache.paimon.data.serializer.InternalMapSerializer.convertToJavaMap;
 import static org.apache.paimon.types.DataTypes.INT;
 import static org.apache.paimon.types.DataTypes.STRING;
-import static org.apache.paimon.data.serializer.InternalMapSerializer.convertToJavaMap;
 
 /** Test for {@link InternalMapSerializer}. */
 public class InternalMapSerializerTest extends SerializerTestBase<InternalMap> {
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalRowSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalRowSerializerTest.java
index 915c71212..8d4613745 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalRowSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/InternalRowSerializerTest.java
@@ -18,9 +18,6 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.paimon.types.DataType;
-import org.apache.paimon.types.DataTypes;
-
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryArrayWriter;
 import org.apache.paimon.data.BinaryMap;
@@ -28,6 +25,8 @@ import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypes;
 import org.junit.jupiter.api.Test;
 
 import java.util.Objects;
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/serializer/RowCompactedSerializerTest.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/RowCompactedSerializerTest.java
index 2b8c3e1d7..919ff4f9d 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/serializer/RowCompactedSerializerTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/RowCompactedSerializerTest.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.data.serializer;
 
-import org.apache.paimon.types.DataType;
-import org.apache.paimon.types.DataTypes;
-import org.apache.paimon.types.RowType;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypes;
+import org.apache.paimon.types.RowType;
 
 import static org.apache.paimon.data.BinaryString.fromString;
 import static org.apache.paimon.data.serializer.InternalRowSerializerTest.createArray;
diff --git a/paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestBase.java b/paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestBase.java
index 45f2c8216..c5df3ccfc 100644
--- a/paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestBase.java
+++ b/paimon-common/src/test/java/org/apache/paimon/data/serializer/SerializerTestBase.java
@@ -23,7 +23,6 @@ import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputSerializer;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.utils.InstantiationUtil;
-
 import org.junit.jupiter.api.Test;
 
 import javax.annotation.Nonnull;
diff --git a/paimon-common/src/test/java/org/apache/paimon/datagen/RandomGeneratorVisitor.java b/paimon-common/src/test/java/org/apache/paimon/datagen/RandomGeneratorVisitor.java
index ec81f9e3d..c2cc190f7 100644
--- a/paimon-common/src/test/java/org/apache/paimon/datagen/RandomGeneratorVisitor.java
+++ b/paimon-common/src/test/java/org/apache/paimon/datagen/RandomGeneratorVisitor.java
@@ -18,6 +18,11 @@
 
 package org.apache.paimon.datagen;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.GenericArray;
+import org.apache.paimon.data.GenericMap;
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.ConfigOptions;
 import org.apache.paimon.options.Options;
@@ -42,12 +47,6 @@ import org.apache.paimon.types.VarBinaryType;
 import org.apache.paimon.types.VarCharType;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.Decimal;
-import org.apache.paimon.data.GenericArray;
-import org.apache.paimon.data.GenericMap;
-import org.apache.paimon.data.Timestamp;
-
 import java.math.BigDecimal;
 import java.math.MathContext;
 import java.math.RoundingMode;
diff --git a/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java b/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
index 12603fdd4..c0ba0405a 100644
--- a/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
+++ b/paimon-common/src/test/java/org/apache/paimon/format/FileStatsExtractorTestBase.java
@@ -18,6 +18,14 @@
 
 package org.apache.paimon.format;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.GenericArray;
+import org.apache.paimon.data.GenericMap;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalArray;
+import org.apache.paimon.data.InternalMap;
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.PositionOutputStream;
@@ -35,15 +43,6 @@ import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.TimestampType;
 import org.apache.paimon.types.VarBinaryType;
 import org.apache.paimon.types.VarCharType;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.Decimal;
-import org.apache.paimon.data.GenericArray;
-import org.apache.paimon.data.GenericMap;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalArray;
-import org.apache.paimon.data.InternalMap;
-import org.apache.paimon.data.Timestamp;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-common/src/test/java/org/apache/paimon/fs/FileIOBehaviorTestBase.java b/paimon-common/src/test/java/org/apache/paimon/fs/FileIOBehaviorTestBase.java
index 3b6ae7ac3..96b949114 100644
--- a/paimon-common/src/test/java/org/apache/paimon/fs/FileIOBehaviorTestBase.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/FileIOBehaviorTestBase.java
@@ -19,7 +19,6 @@
 package org.apache.paimon.fs;
 
 import org.apache.paimon.utils.StringUtils;
-
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-common/src/test/java/org/apache/paimon/fs/FileIOFinder.java b/paimon-common/src/test/java/org/apache/paimon/fs/FileIOFinder.java
index 7ee779634..b4d13e3ac 100644
--- a/paimon-common/src/test/java/org/apache/paimon/fs/FileIOFinder.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/FileIOFinder.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.fs;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
+
 import org.apache.paimon.options.Options;
 
 import java.io.IOException;
diff --git a/paimon-common/src/test/java/org/apache/paimon/fs/HadoopConfigLoadingTest.java b/paimon-common/src/test/java/org/apache/paimon/fs/HadoopConfigLoadingTest.java
index 0a34adbea..319ac7306 100644
--- a/paimon-common/src/test/java/org/apache/paimon/fs/HadoopConfigLoadingTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/HadoopConfigLoadingTest.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.fs;
 
+import org.apache.hadoop.conf.Configuration;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.utils.CommonTestUtils;
 import org.apache.paimon.utils.HadoopUtils;
-
-import org.apache.hadoop.conf.Configuration;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-common/src/test/java/org/apache/paimon/fs/HadoopLocalFileIOBehaviorTest.java b/paimon-common/src/test/java/org/apache/paimon/fs/HadoopLocalFileIOBehaviorTest.java
index 57a9aba7f..5f18e4769 100644
--- a/paimon-common/src/test/java/org/apache/paimon/fs/HadoopLocalFileIOBehaviorTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/HadoopLocalFileIOBehaviorTest.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.fs;
 
-import org.apache.paimon.fs.hadoop.HadoopFileIO;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.RawLocalFileSystem;
 import org.apache.hadoop.util.VersionInfo;
+import org.apache.paimon.fs.hadoop.HadoopFileIO;
 import org.junit.jupiter.api.io.TempDir;
 
 import java.net.URI;
diff --git a/paimon-common/src/test/java/org/apache/paimon/fs/HdfsBehaviorTest.java b/paimon-common/src/test/java/org/apache/paimon/fs/HdfsBehaviorTest.java
index 1939d98a9..e7836ea4b 100644
--- a/paimon-common/src/test/java/org/apache/paimon/fs/HdfsBehaviorTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/HdfsBehaviorTest.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.fs;
 
-import org.apache.paimon.fs.hadoop.HadoopFileIO;
-import org.apache.paimon.utils.OperatingSystem;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hdfs.MiniDFSCluster;
+import org.apache.paimon.fs.hadoop.HadoopFileIO;
+import org.apache.paimon.utils.OperatingSystem;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-common/src/test/java/org/apache/paimon/fs/LocalFileIOBehaviorTest.java b/paimon-common/src/test/java/org/apache/paimon/fs/LocalFileIOBehaviorTest.java
index 2477bdcdb..fb6858ab1 100644
--- a/paimon-common/src/test/java/org/apache/paimon/fs/LocalFileIOBehaviorTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/fs/LocalFileIOBehaviorTest.java
@@ -19,7 +19,6 @@
 package org.apache.paimon.fs;
 
 import org.apache.paimon.fs.local.LocalFileIO;
-
 import org.junit.jupiter.api.io.TempDir;
 
 /** Test for {@link LocalFileIO}. */
diff --git a/paimon-common/src/test/java/org/apache/paimon/io/cache/CachedRandomInputViewTest.java b/paimon-common/src/test/java/org/apache/paimon/io/cache/CachedRandomInputViewTest.java
index acee86e77..56bf6c81a 100644
--- a/paimon-common/src/test/java/org/apache/paimon/io/cache/CachedRandomInputViewTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/io/cache/CachedRandomInputViewTest.java
@@ -20,7 +20,6 @@ package org.apache.paimon.io.cache;
 
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.options.MemorySize;
-
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-common/src/test/java/org/apache/paimon/lookup/hash/HashLookupStoreFactoryTest.java b/paimon-common/src/test/java/org/apache/paimon/lookup/hash/HashLookupStoreFactoryTest.java
index f6a3f1dbd..dbb156b5f 100644
--- a/paimon-common/src/test/java/org/apache/paimon/lookup/hash/HashLookupStoreFactoryTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/lookup/hash/HashLookupStoreFactoryTest.java
@@ -22,13 +22,12 @@
 
 package org.apache.paimon.lookup.hash;
 
+import org.apache.commons.math3.random.RandomDataGenerator;
 import org.apache.paimon.io.DataOutputSerializer;
 import org.apache.paimon.io.cache.CacheManager;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.utils.MathUtils;
 import org.apache.paimon.utils.VarLengthIntUtils;
-
-import org.apache.commons.math3.random.RandomDataGenerator;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-common/src/test/java/org/apache/paimon/types/DataTypeAssert.java b/paimon-common/src/test/java/org/apache/paimon/types/DataTypeAssert.java
index 9d3cd0515..ef79fa8a2 100644
--- a/paimon-common/src/test/java/org/apache/paimon/types/DataTypeAssert.java
+++ b/paimon-common/src/test/java/org/apache/paimon/types/DataTypeAssert.java
@@ -19,7 +19,6 @@
 package org.apache.paimon.types;
 
 import org.apache.paimon.utils.InstantiationUtil;
-
 import org.assertj.core.api.AbstractAssert;
 import org.assertj.core.api.Condition;
 
diff --git a/paimon-common/src/test/java/org/apache/paimon/utils/RowDataUtilsTest.java b/paimon-common/src/test/java/org/apache/paimon/utils/RowDataUtilsTest.java
index 8288c89ac..3329e9c5f 100644
--- a/paimon-common/src/test/java/org/apache/paimon/utils/RowDataUtilsTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/utils/RowDataUtilsTest.java
@@ -18,6 +18,11 @@
 
 package org.apache.paimon.utils;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.datagen.DataGenerator;
 import org.apache.paimon.datagen.RandomGeneratorVisitor;
 import org.apache.paimon.datagen.RowDataGenerator;
@@ -25,12 +30,6 @@ import org.apache.paimon.options.Options;
 import org.apache.paimon.types.DataTypeRoot;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.Decimal;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java b/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java
index e98e29277..0792f3e15 100644
--- a/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java
+++ b/paimon-core/src/main/java/org/apache/paimon/CoreOptions.java
@@ -18,7 +18,10 @@
 
 package org.apache.paimon;
 
+import org.apache.paimon.annotation.Documentation.ExcludeFromDocumentation;
+import org.apache.paimon.annotation.Documentation.Immutable;
 import org.apache.paimon.file.WriteMode;
+import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.MemorySize;
@@ -27,10 +30,6 @@ import org.apache.paimon.options.description.DescribedEnum;
 import org.apache.paimon.options.description.Description;
 import org.apache.paimon.options.description.InlineElement;
 
-import org.apache.paimon.annotation.Documentation.ExcludeFromDocumentation;
-import org.apache.paimon.annotation.Documentation.Immutable;
-import org.apache.paimon.format.FileFormat;
-
 import java.io.Serializable;
 import java.lang.reflect.Field;
 import java.time.Duration;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java b/paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
index 40cf363ab..d0b0b6a8a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
@@ -19,6 +19,8 @@
 package org.apache.paimon.file;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.manifest.ManifestFile;
 import org.apache.paimon.file.manifest.ManifestList;
 import org.apache.paimon.file.operation.FileStoreCommitImpl;
@@ -30,9 +32,6 @@ import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.InternalRow;
-
 import java.time.Duration;
 import java.util.Comparator;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java b/paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
index fa80f3a5d..05ef96e11 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
@@ -19,16 +19,15 @@
 package org.apache.paimon.file;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.operation.AppendOnlyFileStoreRead;
 import org.apache.paimon.file.operation.AppendOnlyFileStoreScan;
 import org.apache.paimon.file.operation.AppendOnlyFileStoreWrite;
 import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.format.FileFormatDiscover;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FileFormatDiscover;
-
 import java.util.Comparator;
 
 /** {@link FileStore} for reading and writing {@link InternalRow}. */
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java b/paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java
index b35273096..42a5350f3 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/KeyValue.java
@@ -18,6 +18,9 @@
 
 package org.apache.paimon.file;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowKind;
@@ -25,10 +28,6 @@ import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.TinyIntType;
 import org.apache.paimon.utils.RowDataUtils;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.serializer.InternalRowSerializer;
-
 import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -149,9 +148,7 @@ public class KeyValue {
                         new org.apache.paimon.types.BigIntType(false)));
         fields.add(
                 new DataField(
-                        maxKeyId + 2,
-                        VALUE_KIND,
-                        new org.apache.paimon.types.TinyIntType(false)));
+                        maxKeyId + 2, VALUE_KIND, new org.apache.paimon.types.TinyIntType(false)));
         for (DataField valueField : valueFields) {
             DataField newValueField =
                     new DataField(
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java b/paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
index b5022ee9f..e3d92dc88 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.file;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
 import org.apache.paimon.file.operation.KeyValueFileStoreRead;
 import org.apache.paimon.file.operation.KeyValueFileStoreScan;
@@ -26,12 +27,10 @@ import org.apache.paimon.file.operation.KeyValueFileStoreWrite;
 import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.utils.KeyComparatorSupplier;
+import org.apache.paimon.format.FileFormatDiscover;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FileFormatDiscover;
-
 import java.util.Comparator;
 import java.util.function.Supplier;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java
index 3fd0c067a..d7dc7f876 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/KeyValueSerializer.java
@@ -18,15 +18,14 @@
 
 package org.apache.paimon.file;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.JoinedRow;
 import org.apache.paimon.file.utils.ObjectSerializer;
 import org.apache.paimon.file.utils.OffsetRow;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.JoinedRow;
-
 /**
  * Serializer for {@link KeyValue}.
  *
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java b/paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java
index 2321f0327..239d12bff 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/Snapshot.java
@@ -18,6 +18,10 @@
 
 package org.apache.paimon.file;
 
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonCreator;
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonGetter;
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonProperty;
+
 import org.apache.paimon.file.manifest.ManifestEntry;
 import org.apache.paimon.file.manifest.ManifestFileMeta;
 import org.apache.paimon.file.manifest.ManifestList;
@@ -26,10 +30,6 @@ import org.apache.paimon.file.utils.JsonSerdeUtil;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 
-import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonCreator;
-import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonGetter;
-import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.annotation.JsonProperty;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java b/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java
index fbdf6a619..2ae045b28 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyCompactManager.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.append;
 
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.file.compact.CompactFutureManager;
 import org.apache.paimon.file.compact.CompactResult;
 import org.apache.paimon.file.compact.CompactTask;
@@ -26,8 +27,6 @@ import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Iterator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java
index b0695a760..c39d73015 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/append/AppendOnlyWriter.java
@@ -19,6 +19,7 @@
 
 package org.apache.paimon.file.append;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.compact.CompactManager;
 import org.apache.paimon.file.io.CompactIncrement;
 import org.apache.paimon.file.io.DataFileMeta;
@@ -27,15 +28,13 @@ import org.apache.paimon.file.io.NewFilesIncrement;
 import org.apache.paimon.file.io.RowDataRollingFileWriter;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.RecordWriter;
+import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.LongCounter;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FileFormat;
-
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java b/paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java
index c09ddf027..a98a5e932 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/casting/CastExecutors.java
@@ -18,6 +18,9 @@
 
 package org.apache.paimon.file.casting;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.types.BinaryType;
 import org.apache.paimon.types.CharType;
 import org.apache.paimon.types.DataType;
@@ -29,10 +32,6 @@ import org.apache.paimon.utils.DateTimeUtils;
 import org.apache.paimon.utils.DecimalUtils;
 import org.apache.paimon.utils.StringUtils;
 
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.Decimal;
-import org.apache.paimon.data.Timestamp;
-
 import javax.annotation.Nullable;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java b/paimon-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java
index 4802e1341..5b3f944c4 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/casting/CastedRow.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.file.casting;
 
-import org.apache.paimon.types.RowKind;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
 import org.apache.paimon.data.InternalArray;
 import org.apache.paimon.data.InternalMap;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.types.RowKind;
 
 import static org.apache.paimon.utils.Preconditions.checkNotNull;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java
index 2afb82fbf..87e647d37 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/catalog/AbstractCatalog.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.catalog;
 
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
@@ -27,8 +28,6 @@ import org.apache.paimon.table.Table;
 import org.apache.paimon.table.system.SystemTableLoader;
 import org.apache.paimon.utils.StringUtils;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-
 /** Common implementation of {@link Catalog}. */
 public abstract class AbstractCatalog implements Catalog {
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java
index a7fd0935a..109add99e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/catalog/Catalog.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.file.catalog;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.file.schema.Schema;
 import org.apache.paimon.file.schema.SchemaChange;
 import org.apache.paimon.table.Table;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.util.List;
 import java.util.Optional;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java
index c5679fee2..480ffe59e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/catalog/CatalogFactory.java
@@ -19,12 +19,12 @@
 package org.apache.paimon.file.catalog;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
+
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.io.IOException;
 import java.io.UncheckedIOException;
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java
index d37063e76..23cd76fff 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/catalog/FileSystemCatalogFactory.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.file.catalog;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
+
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.table.TableType;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java b/paimon-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java
index 8ed4924cc..059fc678f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/catalog/Identifier.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.catalog;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.utils.StringUtils;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.io.Serializable;
 import java.util.Objects;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java b/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java
index 6ecea1db3..809632547 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/compact/CompactTask.java
@@ -19,7 +19,6 @@
 package org.apache.paimon.file.compact;
 
 import org.apache.paimon.file.io.DataFileMeta;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java
index ea691814f..2ccf522d0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/disk/AbstractFileIOChannel.java
@@ -19,7 +19,6 @@
 package org.apache.paimon.file.disk;
 
 import org.apache.paimon.utils.Preconditions;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java
index 18271b0f5..54b6e23c0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileReader.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.disk;
 
-import org.apache.paimon.file.memory.Buffer;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.file.memory.Buffer;
 
 import java.io.IOException;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java
index 814b240f0..fe79a8fed 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/disk/BufferFileWriter.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.disk;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.file.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.io.IOException;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java
index 07d9ef816..b545b8ab1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputView.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.file.disk;
 
+import org.apache.paimon.data.AbstractPagedInputView;
 import org.apache.paimon.file.compression.BlockCompressionFactory;
 import org.apache.paimon.file.compression.BlockDecompressor;
 import org.apache.paimon.file.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 
-import org.apache.paimon.data.AbstractPagedInputView;
-
 import java.io.EOFException;
 import java.io.IOException;
 import java.util.Collections;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java
index 61763e7fc..47e012e4c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelReaderInputViewIterator.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.disk;
 
-import org.apache.paimon.file.utils.MutableObjectIterator;
-import org.apache.paimon.memory.MemorySegment;
-
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
+import org.apache.paimon.file.utils.MutableObjectIterator;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.io.EOFException;
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java
index 382a2081d..d85efa25b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/disk/ChannelWriterOutputView.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.file.disk;
 
+import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.file.compression.BlockCompressionFactory;
 import org.apache.paimon.file.compression.BlockCompressor;
 import org.apache.paimon.file.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
 
-import org.apache.paimon.data.AbstractPagedOutputView;
-
 import java.io.IOException;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java
index 00becd45a..b50c94ee7 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/disk/FileChannelManagerImpl.java
@@ -22,7 +22,6 @@ import org.apache.paimon.file.disk.FileIOChannel.Enumerator;
 import org.apache.paimon.file.disk.FileIOChannel.ID;
 import org.apache.paimon.utils.FileIOUtils;
 import org.apache.paimon.utils.IOUtils;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java
index 6886a146a..492d1535e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/disk/FileIOChannel.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.disk;
 
-import org.apache.paimon.utils.StringUtils;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.utils.StringUtils;
 
 import java.io.File;
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManager.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManager.java
index 7f487c9a2..19ee72d50 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManager.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.disk;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.file.disk.FileIOChannel.Enumerator;
 import org.apache.paimon.file.disk.FileIOChannel.ID;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.io.IOException;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java b/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java
index d4efa602c..ca366b9a8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/disk/IOManagerImpl.java
@@ -21,7 +21,6 @@ package org.apache.paimon.file.disk;
 import org.apache.paimon.file.disk.FileIOChannel.Enumerator;
 import org.apache.paimon.file.disk.FileIOChannel.ID;
 import org.apache.paimon.utils.Preconditions;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java
index 5a6ea6879..63e233ac1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/AbstractFileRecordIterator.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.file.io;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.casting.CastFieldGetter;
 import org.apache.paimon.file.casting.CastedRow;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.utils.ProjectedRow;
 
-import org.apache.paimon.data.InternalRow;
-
 import javax.annotation.Nullable;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java b/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
index 0937af438..1cfb53168 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
@@ -19,6 +19,8 @@
 package org.apache.paimon.file.io;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.types.ArrayType;
@@ -28,18 +30,15 @@ import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.Timestamp;
-
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.Objects;
 
+import static org.apache.paimon.data.BinaryRow.EMPTY_ROW;
 import static org.apache.paimon.file.utils.SerializationUtils.newBytesType;
 import static org.apache.paimon.file.utils.SerializationUtils.newStringType;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
-import static org.apache.paimon.data.BinaryRow.EMPTY_ROW;
 
 /** Metadata of a data file. */
 public class DataFileMeta {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java
index 6a8390f86..d9570c995 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/DataFileMetaSerializer.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.file.io;
 
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.file.utils.ObjectSerializer;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.file.utils.ObjectSerializer;
 
 import static org.apache.paimon.file.utils.SerializationUtils.deserializeBinaryRow;
 import static org.apache.paimon.file.utils.SerializationUtils.serializeBinaryRow;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java
index c575d4e73..1ff0c1575 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/DataFilePathFactory.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.io;
 
-import org.apache.paimon.fs.Path;
-
 import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.fs.Path;
 
 import javax.annotation.concurrent.ThreadSafe;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java b/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java
index f0e4a1adc..0ceef986f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileRecordReader.java
@@ -18,18 +18,17 @@
 
 package org.apache.paimon.file.io;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueSerializer;
 import org.apache.paimon.file.casting.CastFieldGetter;
 import org.apache.paimon.file.utils.FileUtils;
+import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FormatReaderFactory;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java
index d939363da..54b915f06 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueDataFileWriter.java
@@ -18,19 +18,18 @@
 
 package org.apache.paimon.file.io;
 
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.file.stats.FieldStatsArraySerializer;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.types.RowType;
-
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatWriterFactory;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.types.RowType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java
index 8cf8f1127..8c37073f1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileReaderFactory.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.io;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
@@ -25,15 +26,13 @@ import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.file.utils.BulkFormatMapping;
 import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.format.FileFormatDiscover;
+import org.apache.paimon.format.FormatKey;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Projection;
 
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.format.FileFormatDiscover;
-import org.apache.paimon.format.FormatKey;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java
index 043d120e1..b429e739e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/KeyValueFileWriterFactory.java
@@ -18,18 +18,17 @@
 
 package org.apache.paimon.file.io;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueSerializer;
 import org.apache.paimon.file.utils.FileStorePathFactory;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatWriterFactory;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.types.RowType;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java
index 78410feda..bdc2643b8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/RollingFileWriter.java
@@ -19,9 +19,8 @@
 
 package org.apache.paimon.file.io;
 
-import org.apache.paimon.utils.Preconditions;
-
 import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.utils.Preconditions;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java b/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java
index a0412ee41..7466db1d1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileRecordReader.java
@@ -18,15 +18,14 @@
 
 package org.apache.paimon.file.io;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.casting.CastFieldGetter;
 import org.apache.paimon.file.utils.FileUtils;
+import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FormatReaderFactory;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java
index def136ae6..3d4a40285 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataFileWriter.java
@@ -19,17 +19,16 @@
 
 package org.apache.paimon.file.io;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
+import org.apache.paimon.format.FileStatsExtractor;
+import org.apache.paimon.format.FormatWriterFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.LongCounter;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FileStatsExtractor;
-import org.apache.paimon.format.FormatWriterFactory;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java
index f5a97d72e..64ea95806 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/RowDataRollingFileWriter.java
@@ -19,13 +19,12 @@
 
 package org.apache.paimon.file.io;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.LongCounter;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FileFormat;
-
 /** {@link RollingFileWriter} for data files containing {@link InternalRow}. */
 public class RowDataRollingFileWriter extends RollingFileWriter<InternalRow, DataFileMeta> {
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java
index bf51fe3f3..43778d82a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/SingleFileWriter.java
@@ -19,14 +19,13 @@
 
 package org.apache.paimon.file.io;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.format.FormatWriter;
+import org.apache.paimon.format.FormatWriterFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.PositionOutputStream;
 import org.apache.paimon.utils.IOUtils;
-
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FormatWriter;
-import org.apache.paimon.format.FormatWriterFactory;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java
index f97f38d27..025d39240 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/io/StatsCollectingSingleFileWriter.java
@@ -19,16 +19,15 @@
 
 package org.apache.paimon.file.io;
 
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.types.RowType;
-import org.apache.paimon.utils.Preconditions;
-
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FieldStatsCollector;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatWriterFactory;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.utils.Preconditions;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java
index 52b0c0695..b540a8d89 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestCommittableSerializer.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.file.manifest;
 
+import org.apache.paimon.data.serializer.VersionedSerializer;
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageSerializer;
 
-import org.apache.paimon.data.serializer.VersionedSerializer;
-
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.util.HashMap;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java
index 7a9f49ceb..66abb51b8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntry.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.manifest;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.types.DataField;
@@ -26,8 +27,6 @@ import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.TinyIntType;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.data.BinaryRow;
-
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.LinkedHashMap;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java
index 525cbc114..c54a58a50 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestEntrySerializer.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.manifest;
 
-import org.apache.paimon.file.io.DataFileMetaSerializer;
-import org.apache.paimon.file.utils.VersionedObjectSerializer;
-
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.io.DataFileMetaSerializer;
+import org.apache.paimon.file.utils.VersionedObjectSerializer;
 
 import static org.apache.paimon.file.utils.SerializationUtils.deserializeBinaryRow;
 import static org.apache.paimon.file.utils.SerializationUtils.serializeBinaryRow;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java
index 364abbab6..32dd5d533 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFile.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.manifest;
 
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.file.io.RollingFileWriter;
 import org.apache.paimon.file.io.SingleFileWriter;
 import org.apache.paimon.file.schema.SchemaManager;
@@ -25,15 +26,13 @@ import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.FileUtils;
 import org.apache.paimon.file.utils.VersionedObjectSerializer;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.format.FieldStatsCollector;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.FormatWriterFactory;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.types.RowType;
 
 import java.io.IOException;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java
index 2c910a230..a69ebc18a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestFileMetaSerializer.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.file.manifest;
 
-import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.file.utils.VersionedObjectSerializer;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.stats.BinaryTableStats;
+import org.apache.paimon.file.utils.VersionedObjectSerializer;
 
 /** Serializer for {@link ManifestFileMeta}. */
 public class ManifestFileMetaSerializer extends VersionedObjectSerializer<ManifestFileMeta> {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java
index 69785b84a..3cb1ef7d8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/manifest/ManifestList.java
@@ -21,15 +21,14 @@ package org.apache.paimon.file.manifest;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.FileUtils;
 import org.apache.paimon.file.utils.VersionedObjectSerializer;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.fs.PositionOutputStream;
-import org.apache.paimon.types.RowType;
-
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.FormatWriter;
 import org.apache.paimon.format.FormatWriterFactory;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.fs.PositionOutputStream;
+import org.apache.paimon.types.RowType;
 
 import java.io.IOException;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/memory/Buffer.java b/paimon-core/src/main/java/org/apache/paimon/file/memory/Buffer.java
index 18ad815bf..7732e62cc 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/memory/Buffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/memory/Buffer.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.memory;
 
-import org.apache.paimon.memory.MemorySegment;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.nio.ByteBuffer;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java b/paimon-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java
index 70842491e..a90c40193 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/memory/MemorySegmentPool.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.file.memory;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.memory.MemorySegmentSource;
 import org.apache.paimon.options.MemorySize;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.util.List;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java
index 97b46ce09..5efb7015b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/Levels.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.mergetree;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.HashMap;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java
index e255d3cfc..bca45807b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/LookupLevels.java
@@ -18,6 +18,13 @@
 
 package org.apache.paimon.file.mergetree;
 
+import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
+import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
+import org.apache.flink.shaded.guava30.com.google.common.cache.RemovalNotification;
+
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.RowCompactedSerializer;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.io.DataOutputSerializer;
@@ -32,14 +39,6 @@ import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.FileIOUtils;
 import org.apache.paimon.utils.IOFunction;
 
-import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
-import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
-import org.apache.flink.shaded.guava30.com.google.common.cache.RemovalNotification;
-
-import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.serializer.RowCompactedSerializer;
-
 import javax.annotation.Nullable;
 
 import java.io.Closeable;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java
index c493fa41f..681d172e1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeReaders.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.mergetree;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.KeyValueFileReaderFactory;
@@ -28,8 +29,6 @@ import org.apache.paimon.file.mergetree.compact.ReducerMergeFunctionWrapper;
 import org.apache.paimon.file.mergetree.compact.SortMergeReader;
 import org.apache.paimon.reader.RecordReader;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Comparator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
index 425ea680c..7d8229be4 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
@@ -19,6 +19,8 @@
 package org.apache.paimon.file.mergetree;
 
 import org.apache.paimon.CoreOptions.ChangelogProducer;
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.compact.CompactManager;
 import org.apache.paimon.file.compact.CompactResult;
@@ -35,9 +37,6 @@ import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.InternalRow;
-
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
index cabef6a94..cb29d70ae 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortBufferWriteBuffer.java
@@ -21,6 +21,13 @@ package org.apache.paimon.file.mergetree;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.flink.table.store.codegen.RecordComparator;
+
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.data.serializer.InternalSerializers;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueSerializer;
 import org.apache.paimon.file.disk.IOManager;
@@ -36,13 +43,6 @@ import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.serializer.BinaryRowSerializer;
-import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.data.serializer.InternalSerializers;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java
index 5a7eda3a3..532539fed 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/SortedRun.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.mergetree;
 
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.utils.Preconditions;
-
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.utils.Preconditions;
 
 import java.util.Collections;
 import java.util.Comparator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java
index 5ede3e577..090b7e08c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/WriteBuffer.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.file.mergetree;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.mergetree.compact.MergeFunction;
 import org.apache.paimon.types.RowKind;
 
-import org.apache.paimon.data.InternalRow;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java
index beedf8bab..b680b0178 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ChangelogMergeTreeRewriter.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.compact.CompactResult;
 import org.apache.paimon.file.io.DataFileMeta;
@@ -29,8 +30,6 @@ import org.apache.paimon.file.mergetree.SortedRun;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReaderIterator;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Comparator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
index ca489f1e9..e7712f1d9 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeTreeCompactRewriter.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.KeyValueFileReaderFactory;
@@ -25,8 +26,6 @@ import org.apache.paimon.file.io.KeyValueFileWriterFactory;
 import org.apache.paimon.file.mergetree.SortedRun;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.io.IOException;
 import java.util.Comparator;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java
index 6815cc747..1cc28b0e0 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/IntervalPartition.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.SortedRun;
-
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.SortedRun;
 
 import java.util.ArrayList;
 import java.util.Comparator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
index a15a1a306..b6284986b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapper.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.util.function.Function;
 
 import static org.apache.paimon.utils.Preconditions.checkArgument;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
index 827d52589..3d89a6145 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/LookupMergeTreeCompactRewriter.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.KeyValueFileReaderFactory;
@@ -25,8 +26,6 @@ import org.apache.paimon.file.io.KeyValueFileWriterFactory;
 import org.apache.paimon.file.mergetree.LookupLevels;
 import org.apache.paimon.file.mergetree.SortedRun;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.io.IOException;
 import java.io.UncheckedIOException;
 import java.util.Comparator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java
index 85e70e626..b7bd4da5a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManager.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.compact.CompactFutureManager;
 import org.apache.paimon.file.compact.CompactResult;
 import org.apache.paimon.file.compact.CompactUnit;
@@ -25,9 +27,6 @@ import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.mergetree.LevelSortedRun;
 import org.apache.paimon.file.mergetree.Levels;
 import org.apache.paimon.utils.Preconditions;
-
-import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.InternalRow;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java
index a958aec76..05ebb7817 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactRewriter.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.compact.CompactResult;
 import org.apache.paimon.file.io.DataFileMeta;
@@ -29,8 +30,6 @@ import org.apache.paimon.file.mergetree.SortedRun;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.reader.RecordReaderIterator;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.util.Comparator;
 import java.util.List;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java
index 23fd912d8..4e07b0582 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactTask.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.compact.CompactResult;
 import org.apache.paimon.file.compact.CompactTask;
 import org.apache.paimon.file.compact.CompactUnit;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.mergetree.SortedRun;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java
index 564051723..0b4d5279f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/PartialUpdateMergeFunction.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.Projection;
 
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-
 import javax.annotation.Nullable;
 
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java
index 9eec0ebde..be2cfa7de 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/SortMergeReader.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.data.InternalRow;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java
index 063fa8467..25eb8a87b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/UniversalCompaction.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.file.compact.CompactUnit;
 import org.apache.paimon.file.mergetree.LevelSortedRun;
 import org.apache.paimon.file.mergetree.SortedRun;
-
-import org.apache.paimon.annotation.VisibleForTesting;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java
index b9091857e..e8d132dfd 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/ValueCountMergeFunction.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
-import org.apache.paimon.file.KeyValue;
-import org.apache.paimon.types.RowKind;
-
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.KeyValue;
+import org.apache.paimon.types.RowKind;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java
index 0da7878b2..319f48a7e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/AggregateMergeFunction.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.file.mergetree.compact.aggregate;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.mergetree.compact.MergeFunction;
 import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
@@ -26,9 +28,6 @@ import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.Projection;
 
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-
 import javax.annotation.Nullable;
 
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java
index 50613fe26..a1fad90a8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldListaggAgg.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.mergetree.compact.aggregate;
 
+import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.utils.StringUtils;
 
-import org.apache.paimon.data.BinaryString;
-
 /** listagg aggregate a field of a row. */
 public class FieldListaggAgg extends FieldAggregator {
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java
index 81dec1914..a54d7c9e9 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldSumAgg.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.mergetree.compact.aggregate;
 
+import org.apache.paimon.data.Decimal;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.utils.DecimalUtils;
 
-import org.apache.paimon.data.Decimal;
-
 /** sum aggregate a field of a row. */
 public class FieldSumAgg extends FieldAggregator {
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java
index be5721c29..c3e42044e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreScan.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.manifest.ManifestEntry;
 import org.apache.paimon.file.manifest.ManifestFile;
@@ -37,8 +38,6 @@ import org.apache.paimon.utils.Filter;
 import org.apache.paimon.utils.Preconditions;
 import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
-import org.apache.paimon.data.BinaryRow;
-
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java
index d193f6eae..6643d7337 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/AbstractFileStoreWrite.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.disk.IOManager;
 import org.apache.paimon.file.io.DataFileMeta;
@@ -29,9 +31,6 @@ import org.apache.paimon.file.utils.Restorable;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageImpl;
-
-import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.BinaryRow;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java
index 82a5ac76a..f865e493d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreRead.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.file.io.RowDataFileRecordReader;
@@ -29,16 +30,14 @@ import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.file.utils.BulkFormatMapping;
 import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.format.FileFormatDiscover;
+import org.apache.paimon.format.FormatKey;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Projection;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FileFormatDiscover;
-import org.apache.paimon.format.FormatKey;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
index 503a06cbd..1045053d1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
@@ -19,6 +19,8 @@
 package org.apache.paimon.file.operation;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.append.AppendOnlyCompactManager;
 import org.apache.paimon.file.append.AppendOnlyWriter;
 import org.apache.paimon.file.compact.CompactManager;
@@ -30,16 +32,13 @@ import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.reader.RecordReaderIterator;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.LongCounter;
 
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FileFormat;
-
 import javax.annotation.Nullable;
 
 import java.util.Collections;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java
index a2913bab2..6221a064d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreCommitImpl.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.manifest.FileKind;
@@ -38,9 +40,6 @@ import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.RowDataToObjectArrayConverter;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.InternalRow;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java
index ef8c89f02..038ddc5fc 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreExpireImpl.java
@@ -18,6 +18,9 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.flink.shaded.guava30.com.google.common.collect.Iterables;
+
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.manifest.ManifestEntry;
 import org.apache.paimon.file.manifest.ManifestFile;
@@ -27,10 +30,6 @@ import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
-
-import org.apache.flink.shaded.guava30.com.google.common.collect.Iterables;
-
-import org.apache.paimon.annotation.VisibleForTesting;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java
index f8cf5cc10..fec9ee8f9 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreScan.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.manifest.FileKind;
 import org.apache.paimon.file.manifest.ManifestEntry;
@@ -25,8 +26,6 @@ import org.apache.paimon.file.manifest.ManifestFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.utils.Filter;
 
-import org.apache.paimon.data.BinaryRow;
-
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java
index cdc28dfd5..28a281b31 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/FileStoreWrite.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.FileStore;
 import org.apache.paimon.file.disk.IOManager;
 import org.apache.paimon.file.io.DataFileMeta;
@@ -25,8 +26,6 @@ import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.SinkRecord;
 
-import org.apache.paimon.data.BinaryRow;
-
 import java.util.List;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java
index 93ba11f49..3ed5a28bb 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreRead.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.KeyValueFileReaderFactory;
@@ -34,15 +35,13 @@ import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.format.FileFormatDiscover;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.ProjectedRow;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FileFormatDiscover;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
@@ -57,10 +56,7 @@ import static org.apache.paimon.file.io.DataFilePathFactory.CHANGELOG_FILE_PREFI
 import static org.apache.paimon.file.predicate.PredicateBuilder.containsFields;
 import static org.apache.paimon.file.predicate.PredicateBuilder.splitAnd;
 
-/**
- * {@link FileStoreRead} implementation for {@link
- * org.apache.paimon.file.KeyValueFileStore}.
- */
+/** {@link FileStoreRead} implementation for {@link org.apache.paimon.file.KeyValueFileStore}. */
 public class KeyValueFileStoreRead implements FileStoreRead<KeyValue> {
 
     private final TableSchema tableSchema;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
index e9bc98378..7a8c58b95 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
@@ -20,6 +20,8 @@ package org.apache.paimon.file.operation;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.ChangelogProducer;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.compact.CompactManager;
 import org.apache.paimon.file.compact.NoopCompactManager;
@@ -43,13 +45,10 @@ import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.SnapshotManager;
+import org.apache.paimon.format.FileFormatDiscover;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.lookup.hash.HashLookupStoreFactory;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FileFormatDiscover;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/Lock.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/Lock.java
index 65c024a9c..e6ad69897 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/Lock.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/Lock.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.file.catalog.CatalogLock;
 import org.apache.paimon.file.catalog.Identifier;
 
-import org.apache.paimon.annotation.Experimental;
-
 import javax.annotation.Nullable;
 
 import java.io.Serializable;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
index 010d32b08..eebec155a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
+
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.memory.HeapMemorySegmentPool;
 import org.apache.paimon.file.memory.MemoryOwner;
@@ -26,8 +28,6 @@ import org.apache.paimon.file.utils.RecordWriter;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.io.cache.CacheManager;
 
-import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
-
 import java.util.Iterator;
 import java.util.Map;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java b/paimon-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java
index b0e63268b..3bfbb026e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/operation/PartitionExpire.java
@@ -18,15 +18,14 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.manifest.ManifestCommittable;
 import org.apache.paimon.file.manifest.ManifestEntry;
 import org.apache.paimon.file.partition.PartitionTimeExtractor;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.BinaryRow;
-
 import java.time.Duration;
 import java.time.LocalDateTime;
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java b/paimon-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
index b8d0dd2a7..57c4bd872 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/predicate/BucketSelector.java
@@ -18,15 +18,14 @@
 
 package org.apache.paimon.file.predicate;
 
-import org.apache.paimon.table.sink.BucketComputer;
-import org.apache.paimon.types.RowType;
-
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableSet;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.table.sink.BucketComputer;
+import org.apache.paimon.types.RowType;
 
 import javax.annotation.concurrent.ThreadSafe;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/Schema.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/Schema.java
index 05a62bd70..0c52e98e5 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/Schema.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/schema/Schema.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.file.schema;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.annotation.Experimental;
-
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java
index 036780afd..10192a3b6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaChange.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.schema;
 
-import org.apache.paimon.types.DataType;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.types.DataType;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java
index d02f3dd10..0953faab3 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaEvolutionUtil.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.schema;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.casting.CastExecutor;
 import org.apache.paimon.file.casting.CastExecutors;
@@ -35,8 +36,6 @@ import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.ProjectedRow;
 import org.apache.paimon.utils.RowDataUtils;
 
-import org.apache.paimon.data.InternalRow;
-
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
index 62d8ff3ba..617210e68 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.file.schema;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.file.casting.CastExecutors;
 import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.file.schema.SchemaChange.AddColumn;
@@ -41,8 +42,6 @@ import org.apache.paimon.types.ReassignFieldId;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
@@ -396,8 +395,7 @@ public class SchemaManager implements Serializable {
                 } else {
                     List<DataField> nestedFields =
                             new ArrayList<>(
-                                    ((org.apache.paimon.types.RowType) field.type())
-                                            .getFields());
+                                    ((org.apache.paimon.types.RowType) field.type()).getFields());
                     updateNestedColumn(nestedFields, updateFieldNames, index + 1, updateFunc);
                     newFields.set(
                             i,
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java
index e3fd9ef44..d2700ac88 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/schema/SchemaSerializer.java
@@ -18,15 +18,15 @@
 
 package org.apache.paimon.file.schema;
 
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode;
+
 import org.apache.paimon.file.utils.JsonDeserializer;
 import org.apache.paimon.file.utils.JsonSerializer;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataTypeJsonParser;
 import org.apache.paimon.utils.StringUtils;
 
-import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
-import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode;
-
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.HashMap;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
index 1f539982c..b810c2009 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/AbstractBinaryExternalMerger.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.sort;
 
+import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.file.compression.BlockCompressionFactory;
 import org.apache.paimon.file.disk.ChannelReaderInputView;
 import org.apache.paimon.file.disk.ChannelWithMeta;
@@ -26,8 +27,6 @@ import org.apache.paimon.file.disk.FileChannelUtil;
 import org.apache.paimon.file.disk.FileIOChannel;
 import org.apache.paimon.file.disk.IOManager;
 import org.apache.paimon.file.utils.MutableObjectIterator;
-
-import org.apache.paimon.data.AbstractPagedOutputView;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
index c5204f60a..f5493d048 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalMerger.java
@@ -19,16 +19,16 @@
 package org.apache.paimon.file.sort;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
+
+import org.apache.paimon.data.AbstractPagedOutputView;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
 import org.apache.paimon.file.compression.BlockCompressionFactory;
 import org.apache.paimon.file.disk.ChannelReaderInputView;
 import org.apache.paimon.file.disk.ChannelReaderInputViewIterator;
 import org.apache.paimon.file.disk.IOManager;
 import org.apache.paimon.file.utils.MutableObjectIterator;
 
-import org.apache.paimon.data.AbstractPagedOutputView;
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.serializer.BinaryRowSerializer;
-
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Comparator;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
index 06b12aede..e33daba33 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryExternalSortBuffer.java
@@ -19,6 +19,11 @@
 package org.apache.paimon.file.sort;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
+
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.BinaryRowSerializer;
 import org.apache.paimon.file.compression.BlockCompressionFactory;
 import org.apache.paimon.file.compression.Lz4BlockCompressionFactory;
 import org.apache.paimon.file.disk.ChannelWithMeta;
@@ -29,11 +34,6 @@ import org.apache.paimon.file.disk.IOManager;
 import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.apache.paimon.options.MemorySize;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.serializer.BinaryRowSerializer;
-
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
index 00866376e..862685e4f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryInMemorySortBuffer.java
@@ -20,15 +20,15 @@ package org.apache.paimon.file.sort;
 
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.paimon.file.memory.MemorySegmentPool;
-import org.apache.paimon.file.utils.MutableObjectIterator;
-import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.SimpleCollectingOutputView;
 import org.apache.paimon.data.serializer.AbstractRowDataSerializer;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
+import org.apache.paimon.file.memory.MemorySegmentPool;
+import org.apache.paimon.file.utils.MutableObjectIterator;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.io.EOFException;
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
index 0bb489841..963b14f57 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/BinaryIndexedSortable.java
@@ -20,14 +20,14 @@ package org.apache.paimon.file.sort;
 
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.paimon.file.memory.MemorySegmentPool;
-import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.AbstractPagedOutputView;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.RandomAccessInputView;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
+import org.apache.paimon.file.memory.MemorySegmentPool;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java b/paimon-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java
index 2a37f4142..87ea498c2 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/sort/SortBuffer.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.file.sort;
 
-import org.apache.paimon.file.utils.MutableObjectIterator;
-
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.utils.MutableObjectIterator;
 
 import java.io.IOException;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
index 520e387ea..3f7c4063c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/stats/FieldStatsArraySerializer.java
@@ -18,7 +18,11 @@
 
 package org.apache.paimon.file.stats;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.file.casting.CastExecutor;
+import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
@@ -26,11 +30,6 @@ import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.RowDataUtils;
 
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.format.FieldStats;
-
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
index 3585662de..42bbaac69 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/BulkFormatMapping.java
@@ -25,13 +25,12 @@ import org.apache.paimon.file.schema.IndexCastMapping;
 import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.file.schema.SchemaEvolutionUtil;
 import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.format.FileFormatDiscover;
+import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Projection;
 
-import org.apache.paimon.format.FileFormatDiscover;
-import org.apache.paimon.format.FormatReaderFactory;
-
 import javax.annotation.Nullable;
 
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
index 7de1faf98..dc767a893 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
@@ -19,15 +19,14 @@
 package org.apache.paimon.file.utils;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.annotation.VisibleForTesting;
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-import org.apache.paimon.data.BinaryRow;
-
 import javax.annotation.concurrent.ThreadSafe;
 
 import java.util.UUID;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java
index a8d3ff8b7..1e6a6c05f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/FileUtils.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.file.utils;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.reader.RecordReader;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FormatReaderFactory;
-
 import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
index bc00574dd..09c39fa62 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/JsonSerdeUtil.java
@@ -18,12 +18,6 @@
 
 package org.apache.paimon.file.utils;
 
-import org.apache.paimon.file.schema.SchemaSerializer;
-import org.apache.paimon.file.schema.TableSchema;
-import org.apache.paimon.types.DataField;
-import org.apache.paimon.types.DataType;
-import org.apache.paimon.types.DataTypeJsonParser;
-
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonGenerator;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonParser;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.core.JsonProcessingException;
@@ -35,6 +29,12 @@ import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.deser.std
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.module.SimpleModule;
 import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.std.StdSerializer;
 
+import org.apache.paimon.file.schema.SchemaSerializer;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+import org.apache.paimon.types.DataTypeJsonParser;
+
 import java.io.IOException;
 import java.io.UncheckedIOException;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
index 432b6149f..6bd1ee74e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/KeyComparatorSupplier.java
@@ -21,9 +21,9 @@ package org.apache.paimon.file.utils;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.GeneratedClass;
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.types.RowType;
 
 import java.util.Comparator;
 import java.util.function.Supplier;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java
index a38e2eb41..c31f77c3a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/ObjectSerializer.java
@@ -18,16 +18,15 @@
 
 package org.apache.paimon.file.utils;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.data.serializer.InternalSerializers;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataInputViewStreamWrapper;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.serializer.InternalRowSerializer;
-import org.apache.paimon.data.serializer.InternalSerializers;
-
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java
index 975b031c5..50085b7a2 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/OffsetRow.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.file.utils;
 
-import org.apache.paimon.types.RowKind;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.Decimal;
 import org.apache.paimon.data.InternalArray;
 import org.apache.paimon.data.InternalMap;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.types.RowKind;
 
 /** A {@link InternalRow} to wrap row with offset. */
 public class OffsetRow implements InternalRow {
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java
index 62c80c9b5..10aebfb52 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/RowDataPartitionComputer.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.file.utils;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.RowDataUtils;
 import org.apache.paimon.utils.StringUtils;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.util.Arrays;
 import java.util.LinkedHashMap;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java
index f0569e2e9..98c483337 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/SerializationUtils.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.file.utils;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.memory.MemorySegment;
 import org.apache.paimon.types.VarBinaryType;
 import org.apache.paimon.types.VarCharType;
 
-import org.apache.paimon.data.BinaryRow;
-
 import java.io.EOFException;
 import java.io.IOException;
 import java.nio.ByteBuffer;
diff --git a/paimon-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java b/paimon-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java
index b01f31a2c..377b05bbf 100644
--- a/paimon-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/file/utils/VersionedObjectSerializer.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.file.utils;
 
-import org.apache.paimon.types.DataField;
-import org.apache.paimon.types.IntType;
-import org.apache.paimon.types.RowType;
-
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.JoinedRow;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
index 5019c838e..6bb9b03a9 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.file.FileStore;
 import org.apache.paimon.file.operation.FileStoreScan;
 import org.apache.paimon.file.predicate.Predicate;
@@ -38,8 +39,6 @@ import org.apache.paimon.table.source.StreamDataTableScanImpl;
 import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
 import org.apache.paimon.table.source.snapshot.SnapshotSplitReaderImpl;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-
 import java.util.Map;
 import java.util.Objects;
 import java.util.Optional;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
index 309983835..b02738f0d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.AppendOnlyFileStore;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.operation.AppendOnlyFileStoreRead;
@@ -40,8 +41,6 @@ import org.apache.paimon.table.source.SplitGenerator;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.io.IOException;
 import java.util.function.BiConsumer;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
index 1482b947f..05b0ca3ba 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
@@ -19,6 +19,8 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueFileStore;
 import org.apache.paimon.file.WriteMode;
@@ -46,9 +48,6 @@ import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-
 import java.util.Collections;
 import java.util.List;
 import java.util.function.BiConsumer;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
index 65ac2302e..72f6edeeb 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
@@ -20,6 +20,7 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.ChangelogProducer;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueFileStore;
 import org.apache.paimon.file.WriteMode;
@@ -48,8 +49,6 @@ import org.apache.paimon.table.source.ValueContentRowDataRecordIterator;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.util.List;
 import java.util.function.BiConsumer;
 import java.util.stream.Collectors;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
index ccbe5c0d6..56db62f40 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTable.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.table;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
@@ -25,14 +26,12 @@ import org.apache.paimon.table.sink.TableCommitImpl;
 import org.apache.paimon.table.sink.TableWriteImpl;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.util.List;
 import java.util.Map;
 
 /**
- * An abstraction layer above {@link org.apache.paimon.file.FileStore} to provide reading
- * and writing of {@link InternalRow}.
+ * An abstraction layer above {@link org.apache.paimon.file.FileStore} to provide reading and
+ * writing of {@link InternalRow}.
  */
 public interface FileStoreTable extends DataTable, SupportsPartition {
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
index 85c65ad8b..93bcdc2d7 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
@@ -18,8 +18,9 @@
 
 package org.apache.paimon.table;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
+
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/Table.java b/paimon-core/src/main/java/org/apache/paimon/table/Table.java
index 3159d03e7..a798f6394 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/Table.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/Table.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.table;
 
+import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.table.sink.BatchWriteBuilder;
 import org.apache.paimon.table.sink.StreamWriteBuilder;
 import org.apache.paimon.table.source.ReadBuilder;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.annotation.Experimental;
-
 import java.io.Serializable;
 import java.util.Map;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/TableUtils.java b/paimon-core/src/main/java/org/apache/paimon/table/TableUtils.java
index 17222265d..2c189afd5 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/TableUtils.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/TableUtils.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.table;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateFilter;
@@ -31,8 +32,6 @@ import org.apache.paimon.table.source.Split;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.CloseableIterator;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.util.List;
 
 /** Utils for Table. TODO we can introduce LocalAction maybe? */
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
index aa78fcb88..1e358f410 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
@@ -18,15 +18,15 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
-import org.apache.paimon.file.schema.TableSchema;
-import org.apache.paimon.types.RowKind;
-import org.apache.paimon.types.RowType;
 
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.types.RowKind;
+import org.apache.paimon.types.RowType;
 
 import java.util.stream.IntStream;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
index ae864366c..f531f669a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageImpl.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.table.sink;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.io.CompactIncrement;
 import org.apache.paimon.file.io.NewFilesIncrement;
 import org.apache.paimon.io.DataInputViewStreamWrapper;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
 
-import org.apache.paimon.data.BinaryRow;
-
 import java.io.IOException;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
index d0ec98deb..0590e0574 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/CommitMessageSerializer.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.table.sink;
 
+import org.apache.paimon.data.serializer.VersionedSerializer;
 import org.apache.paimon.file.io.CompactIncrement;
 import org.apache.paimon.file.io.DataFileMetaSerializer;
 import org.apache.paimon.file.io.NewFilesIncrement;
@@ -26,8 +27,6 @@ import org.apache.paimon.io.DataInputView;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
 
-import org.apache.paimon.data.serializer.VersionedSerializer;
-
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
index e315e96b0..634a42e68 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/PartitionComputer.java
@@ -20,11 +20,11 @@ package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
-import org.apache.paimon.file.schema.TableSchema;
-import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.types.RowType;
 
 /** A {@link PartitionComputer} to compute partition by partition keys. */
 public class PartitionComputer {
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/SequenceGenerator.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/SequenceGenerator.java
index 07e8f98be..c492af8db 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/SequenceGenerator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/SequenceGenerator.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.table.sink;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.CharType;
 import org.apache.paimon.types.DataType;
@@ -35,8 +36,6 @@ import org.apache.paimon.types.TinyIntType;
 import org.apache.paimon.types.VarCharType;
 import org.apache.paimon.utils.RowDataUtils;
 
-import org.apache.paimon.data.InternalRow;
-
 /** Generate sequence number. */
 public class SequenceGenerator {
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecord.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecord.java
index 2b7021ee7..051a63eda 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecord.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecord.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.paimon.types.RowKind;
-
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.types.RowKind;
 
 import static org.apache.paimon.utils.Preconditions.checkArgument;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
index d4bd9d1b7..e4c0c4760 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/SinkRecordConverter.java
@@ -20,11 +20,11 @@ package org.apache.paimon.table.sink;
 
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
-import org.apache.paimon.file.schema.TableSchema;
-import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.types.RowType;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommit.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommit.java
index 8b60f1a17..7cf82242f 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommit.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableCommit.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.paimon.table.Table;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.table.Table;
 
 /**
  * Create and commit snapshots of a {@link Table}. Snapshots are produced from {@link
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
index 52a37b3a0..dedc5c7ad 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWrite.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.paimon.file.disk.IOManager;
-import org.apache.paimon.table.Table;
-
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.table.Table;
 
 /**
  * Write of {@link Table} to provide {@link InternalRow} writing.
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
index a0b249d6a..c95e925e5 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/TableWriteImpl.java
@@ -18,15 +18,14 @@
 
 package org.apache.paimon.table.sink;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.disk.IOManager;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.operation.AbstractFileStoreWrite;
 import org.apache.paimon.file.operation.FileStoreWrite;
 import org.apache.paimon.file.utils.Restorable;
 
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.InternalRow;
-
 import java.util.List;
 
 import static org.apache.paimon.utils.Preconditions.checkState;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/sink/WriteBuilder.java b/paimon-core/src/main/java/org/apache/paimon/table/sink/WriteBuilder.java
index d33a51d7f..944600cce 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/sink/WriteBuilder.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/sink/WriteBuilder.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.paimon.types.RowType;
-
 import org.apache.paimon.annotation.Experimental;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.types.RowType;
 
 import java.io.Serializable;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
index dc5dcb8cb..1f6701696 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.table.source;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.file.operation.FileStoreScan;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
@@ -34,8 +35,6 @@ import org.apache.paimon.table.source.snapshot.StaticFromTimestampStartingScanne
 import org.apache.paimon.utils.Filter;
 import org.apache.paimon.utils.Preconditions;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-
 /** An abstraction layer above {@link FileStoreScan} to provide input split generation. */
 public abstract class AbstractDataTableScan implements DataTableScan {
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java b/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
index 6a3803994..28b30c502 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/DataSplit.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.DataFileMetaSerializer;
 import org.apache.paimon.file.utils.SerializationUtils;
@@ -26,8 +27,6 @@ import org.apache.paimon.io.DataInputViewStreamWrapper;
 import org.apache.paimon.io.DataOutputView;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
 
-import org.apache.paimon.data.BinaryRow;
-
 import java.io.IOException;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
index ec4f683ad..50105827a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/DataTableScan.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.utils.Filter;
 
-import org.apache.paimon.annotation.VisibleForTesting;
-
 import javax.annotation.Nullable;
 
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java b/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
index 9505c6d8a..9c4f424fb 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/KeyValueTableRead.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.operation.KeyValueFileStoreRead;
 import org.apache.paimon.reader.RecordReader;
 
-import org.apache.paimon.data.InternalRow;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
index c0daa57fe..bace23d6b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/MergeTreeSplitGenerator.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.mergetree.SortedRun;
 import org.apache.paimon.file.mergetree.compact.IntervalPartition;
 import org.apache.paimon.utils.OrderedPacking;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
index 2799df317..5ba78f31d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/ReadBuilder.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.annotation.Experimental;
-import org.apache.paimon.data.InternalRow;
-
 import java.io.Serializable;
 import java.util.Arrays;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
index ce59d42f4..86c1b5c74 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/ResetRowKindRecordIterator.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.io.IOException;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
index e2d9f05c7..2d026c557 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
@@ -30,7 +30,6 @@ import org.apache.paimon.table.source.snapshot.FullStartingScanner;
 import org.apache.paimon.table.source.snapshot.InputChangelogFollowUpScanner;
 import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
 import org.apache.paimon.table.source.snapshot.StartingScanner;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
index 3540d86bd..338d753c8 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/StreamTableScan.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.paimon.file.utils.Restorable;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.file.utils.Restorable;
 
 /**
  * {@link TableScan} for streaming, supports {@link #checkpoint} and {@link #restore}.
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/TableRead.java b/paimon-core/src/main/java/org/apache/paimon/table/source/TableRead.java
index 45910d114..02b0ef479 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/TableRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/TableRead.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
 import org.apache.paimon.file.operation.FileStoreRead;
 import org.apache.paimon.reader.RecordReader;
 
-import org.apache.paimon.annotation.Experimental;
-import org.apache.paimon.data.InternalRow;
-
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/TableScan.java b/paimon-core/src/main/java/org/apache/paimon/table/source/TableScan.java
index a28a02750..5a39ce586 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/TableScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/TableScan.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.paimon.table.Table;
-
 import org.apache.paimon.annotation.Experimental;
+import org.apache.paimon.table.Table;
 
 import java.util.List;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java b/paimon-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
index d03f6d7fd..258653636 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/TableStreamingReader.java
@@ -18,6 +18,10 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
+import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
+
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateFilter;
@@ -26,11 +30,6 @@ import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.DataTableScan.DataFilePlan;
 import org.apache.paimon.utils.TypeUtils;
 
-import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
-import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
-
-import org.apache.paimon.data.InternalRow;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
index 1fb3b3dd3..fd5d23272 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/ValueContentRowDataRecordIterator.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.io.IOException;
 
 /** A {@link RecordReader.RecordIterator} mapping a {@link KeyValue} to its value. */
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java b/paimon-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
index afe96621d..551e5c70c 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/ValueCountRowDataRecordIterator.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.io.IOException;
 
 /**
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
index e81f6a719..c8c55da6d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
@@ -22,7 +22,6 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
index 7a8e8a52e..88ff90ab1 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
@@ -22,7 +22,6 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
index 09767fc3c..ac8099f54 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScanner.java
@@ -21,7 +21,6 @@ package org.apache.paimon.table.source.snapshot;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
index fb1119657..9a44458d3 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScanner.java
@@ -21,7 +21,6 @@ package org.apache.paimon.table.source.snapshot;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
index 83fe187e6..bdd77e208 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
@@ -21,7 +21,6 @@ package org.apache.paimon.table.source.snapshot;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
index cc8337d74..5c731df0a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
@@ -21,7 +21,6 @@ package org.apache.paimon.table.source.snapshot;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
index 6274f1b9b..4604c6972 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
@@ -22,7 +22,6 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
index 4feee719d..03f1ad596 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
@@ -22,7 +22,6 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
index e43fa3c05..71466c9b7 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
@@ -22,7 +22,6 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
index f601da1a2..07d94b2b9 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReader.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.operation.ScanKind;
@@ -26,8 +27,6 @@ import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.SplitGenerator;
 import org.apache.paimon.utils.Filter;
 
-import org.apache.paimon.data.BinaryRow;
-
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
index 45ab00f43..0f507c305 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
@@ -18,9 +18,11 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.RecordComparator;
+
+import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.manifest.FileKind;
@@ -34,8 +36,6 @@ import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.SplitGenerator;
 import org.apache.paimon.utils.Filter;
 
-import org.apache.paimon.data.BinaryRow;
-
 import java.util.ArrayList;
 import java.util.LinkedHashMap;
 import java.util.List;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
index 08e7b4f7a..8cbde4e33 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
@@ -22,7 +22,6 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
index 33ba6e03f..75e9f230b 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
@@ -18,7 +18,11 @@
 
 package org.apache.paimon.table.system;
 
+import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
+
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.LeafPredicate;
 import org.apache.paimon.file.predicate.Predicate;
@@ -48,11 +52,6 @@ import org.apache.paimon.types.VarCharType;
 import org.apache.paimon.utils.Filter;
 import org.apache.paimon.utils.ProjectedRow;
 
-import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.InternalRow;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
index b5dc50827..3eaba4748 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
@@ -19,6 +19,9 @@
 package org.apache.paimon.table.system;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.JoinedRow;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.DataFileMetaSerializer;
 import org.apache.paimon.file.predicate.Predicate;
@@ -43,10 +46,6 @@ import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarBinaryType;
 
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.JoinedRow;
-
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Collections;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
index 7b6a4a537..b86b36d50 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/FilesTable.java
@@ -18,6 +18,11 @@
 
 package org.apache.paimon.table.system;
 
+import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
+
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.LazyGenericRow;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.file.predicate.Predicate;
@@ -28,6 +33,7 @@ import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.file.stats.FieldStatsConverters;
 import org.apache.paimon.file.utils.IteratorRecordReader;
 import org.apache.paimon.file.utils.SerializationUtils;
+import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.ReadonlyTable;
@@ -46,13 +52,6 @@ import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.ProjectedRow;
 import org.apache.paimon.utils.RowDataToObjectArrayConverter;
 
-import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.LazyGenericRow;
-import org.apache.paimon.format.FieldStats;
-
 import javax.annotation.Nullable;
 
 import java.io.IOException;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
index 3364a2ba5..6db1c556d 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/OptionsTable.java
@@ -18,6 +18,11 @@
 
 package org.apache.paimon.table.system;
 
+import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
+
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.utils.IteratorRecordReader;
@@ -34,12 +39,6 @@ import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.ProjectedRow;
 
-import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-
 import java.io.IOException;
 import java.util.Arrays;
 import java.util.Collections;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
index 90d60f98c..c53c245bc 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/SchemasTable.java
@@ -18,6 +18,11 @@
 
 package org.apache.paimon.table.system;
 
+import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
+
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
@@ -39,12 +44,6 @@ import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.ProjectedRow;
 
-import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-
 import java.io.IOException;
 import java.util.Arrays;
 import java.util.Collections;
diff --git a/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java b/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
index 96da9a842..06bda9d11 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/system/SnapshotsTable.java
@@ -18,6 +18,12 @@
 
 package org.apache.paimon.table.system;
 
+import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
+
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.utils.IteratorRecordReader;
@@ -38,13 +44,6 @@ import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.TimestampType;
 import org.apache.paimon.utils.ProjectedRow;
 
-import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.Timestamp;
-
 import java.io.IOException;
 import java.time.Instant;
 import java.time.LocalDateTime;
diff --git a/paimon-core/src/test/java/org/apache/paimon/CoreOptionsTest.java b/paimon-core/src/test/java/org/apache/paimon/CoreOptionsTest.java
index aeae2dc38..f27a331c7 100644
--- a/paimon-core/src/test/java/org/apache/paimon/CoreOptionsTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/CoreOptionsTest.java
@@ -18,14 +18,12 @@
 
 package org.apache.paimon;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.paimon.options.Options;
-
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link CoreOptions}. */
+/** Tests for {@link org.apache.paimon.CoreOptions}. */
 public class CoreOptionsTest {
 
     @Test
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/FileFormatTest.java b/paimon-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
index 55ea58840..b611f4636 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
@@ -19,6 +19,11 @@
 package org.apache.paimon.file;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.format.FileFormat;
+import org.apache.paimon.format.FormatWriter;
+import org.apache.paimon.format.FormatWriterFactory;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.PositionOutputStream;
 import org.apache.paimon.fs.local.LocalFileIO;
@@ -26,12 +31,6 @@ import org.apache.paimon.options.Options;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FileFormat;
-import org.apache.paimon.format.FormatWriter;
-import org.apache.paimon.format.FormatWriterFactory;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java
index 83dd6fa86..231a2a31e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/KeyValueSerializerTest.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file;
 
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.file.utils.ObjectSerializer;
 import org.apache.paimon.file.utils.ObjectSerializerTestBase;
 
-import org.apache.paimon.data.serializer.InternalRowSerializer;
-
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Tests for {@link KeyValueSerializer}. */
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java b/paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java
index be9edd2f6..fcc37dd50 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/TestFileStore.java
@@ -19,6 +19,8 @@
 package org.apache.paimon.file;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.manifest.ManifestCommittable;
 import org.apache.paimon.file.manifest.ManifestEntry;
@@ -49,9 +51,6 @@ import org.apache.paimon.reader.RecordReaderIterator;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java b/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
index 8a97a5f09..7f71c0239 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/TestKeyValueGenerator.java
@@ -19,6 +19,13 @@
 package org.apache.paimon.file;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
+
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericArray;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.file.schema.KeyValueFieldsExtractor;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
@@ -33,13 +40,6 @@ import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
 
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.GenericArray;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.serializer.InternalRowSerializer;
-
 import javax.annotation.Nullable;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java
index 001d27d7f..10950fb73 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyCompactManagerTest.java
@@ -20,7 +20,6 @@ package org.apache.paimon.file.append;
 
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.fs.local.LocalFileIO;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java b/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
index a3d334b37..8f44e16b9 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
@@ -20,12 +20,18 @@
 package org.apache.paimon.file.append;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.ExecutorThreadFactory;
 import org.apache.paimon.file.utils.RecordWriter;
+import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
@@ -34,13 +40,6 @@ import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
 import org.apache.paimon.utils.Pair;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FieldStats;
-import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java b/paimon-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java
index 863db3c96..bf45f09ad 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/append/IterativeCompactTaskTest.java
@@ -21,7 +21,6 @@ package org.apache.paimon.file.append;
 import org.apache.paimon.file.compact.CompactResult;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.fs.local.LocalFileIO;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java b/paimon-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java
index 5e3b71093..8d38895d9 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/casting/CastExecutorTest.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.file.casting;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.BinaryType;
 import org.apache.paimon.types.CharType;
@@ -34,9 +36,6 @@ import org.apache.paimon.types.VarBinaryType;
 import org.apache.paimon.types.VarCharType;
 import org.apache.paimon.utils.DateTimeUtils;
 import org.apache.paimon.utils.DecimalUtils;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.Timestamp;
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java
index 294486127..79528229f 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/catalog/CatalogFactoryTest.java
@@ -19,13 +19,13 @@
 package org.apache.paimon.file.catalog;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
+
+import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.hdfs.HdfsConfiguration;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.TableType;
-
-import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.hdfs.HdfsConfiguration;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java b/paimon-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java
index bf4f0cd4a..4dc897017 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/disk/BufferFileWriterReaderTest.java
@@ -20,7 +20,6 @@ package org.apache.paimon.file.disk;
 
 import org.apache.paimon.file.memory.Buffer;
 import org.apache.paimon.memory.MemorySegment;
-
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java b/paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
index debcce2b7..26a78b6c7 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/format/FileFormatSuffixTest.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.file.format;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.file.append.AppendOnlyCompactManager;
 import org.apache.paimon.file.append.AppendOnlyWriter;
 import org.apache.paimon.file.io.DataFileMeta;
@@ -25,6 +27,7 @@ import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.file.io.KeyValueFileReadWriteTest;
 import org.apache.paimon.file.io.KeyValueFileWriterFactory;
 import org.apache.paimon.file.utils.CommitIncrement;
+import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
@@ -32,10 +35,6 @@ import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java b/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
index f930b2898..52aa9608a 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormat.java
@@ -20,13 +20,12 @@ package org.apache.paimon.file.format;
 
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.stats.TestFileStatsExtractor;
-import org.apache.paimon.options.Options;
-import org.apache.paimon.types.RowType;
-
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.FormatWriterFactory;
+import org.apache.paimon.options.Options;
+import org.apache.paimon.types.RowType;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java b/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java
index b0ce9356c..14787aef6 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/format/FileStatsExtractingAvroFormatFactory.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.file.format;
 
-import org.apache.paimon.options.Options;
-
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileFormatFactory;
+import org.apache.paimon.options.Options;
 
 /** Factory to create {@link FileStatsExtractingAvroFormat}. */
 public class FileStatsExtractingAvroFormatFactory implements FileFormatFactory {
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java b/paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
index 00cd9e697..0307a6a74 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/format/FlushingFileFormat.java
@@ -18,15 +18,14 @@
 
 package org.apache.paimon.file.format;
 
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.options.Options;
-import org.apache.paimon.types.RowType;
-
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FormatReaderFactory;
 import org.apache.paimon.format.FormatWriter;
 import org.apache.paimon.format.FormatWriterFactory;
+import org.apache.paimon.options.Options;
+import org.apache.paimon.types.RowType;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
index 46e3da90e..341cde49d 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
@@ -20,7 +20,6 @@ package org.apache.paimon.file.io;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.fs.Path;
-
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java b/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java
index abca59cb9..33ac51532 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestDataGenerator.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.io;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.TestKeyValueGenerator;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
-
-import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.format.FieldStatsCollector;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java b/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java
index b19b79f8e..c3813e4e8 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/io/DataFileTestUtils.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.io;
 
-import org.apache.paimon.file.stats.StatsTestUtils;
-
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.file.stats.StatsTestUtils;
 
 import java.util.Collections;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java b/paimon-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
index b7404f04a..c5ca8e828 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
@@ -19,6 +19,9 @@
 package org.apache.paimon.file.io;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueSerializerTest;
 import org.apache.paimon.file.TestKeyValueGenerator;
@@ -39,10 +42,6 @@ import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
 import org.apache.paimon.utils.CloseableIterator;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java b/paimon-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
index 6dbbfad1e..ed62fd084 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
@@ -19,6 +19,9 @@
 package org.apache.paimon.file.io;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
@@ -26,10 +29,6 @@ import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.LongCounter;
-
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java
index 0fbebf531..c3e03ec2d 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestCommittableSerializerTest.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.file.manifest;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.io.CompactIncrement;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.NewFilesIncrement;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageImpl;
-
-import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
index d271fd1e1..f8eac44fb 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
@@ -19,11 +19,15 @@
 package org.apache.paimon.file.manifest;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.stats.StatsTestUtils;
 import org.apache.paimon.file.utils.FailingFileIO;
 import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
@@ -31,11 +35,6 @@ import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.BinaryRowWriter;
-import org.apache.paimon.data.Timestamp;
-import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
index de32b5f42..7506af87f 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
@@ -23,13 +23,12 @@ import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.stats.StatsTestUtils;
 import org.apache.paimon.file.utils.FailingFileIO;
 import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
-
-import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
index 72bb0a526..c8e6f3af6 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
@@ -22,12 +22,11 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.TestKeyValueGenerator;
 import org.apache.paimon.file.utils.FailingFileIO;
 import org.apache.paimon.file.utils.FileStorePathFactory;
+import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.FileIOFinder;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
-
-import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java
index 5e19884f6..510462c97 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/manifest/ManifestTestDataGenerator.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.file.manifest;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.TestKeyValueGenerator;
 import org.apache.paimon.file.io.DataFileTestDataGenerator;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
-import org.apache.paimon.utils.Preconditions;
-
-import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.format.FieldStatsCollector;
+import org.apache.paimon.utils.Preconditions;
 
 import java.util.ArrayList;
 import java.util.HashMap;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java
index bc3e1392d..c306e5ef0 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LevelsTest.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.file.mergetree;
 
-import org.apache.paimon.file.io.DataFileMeta;
-
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
index 87723cba4..08aade8e7 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
@@ -18,6 +18,9 @@
 
 package org.apache.paimon.file.mergetree;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.format.FlushingFileFormat;
 import org.apache.paimon.file.io.DataFileMeta;
@@ -38,10 +41,6 @@ import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
index 2e461c54f..596d68e24 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
@@ -20,6 +20,9 @@ package org.apache.paimon.file.mergetree;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.ChangelogProducer;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.compact.CompactResult;
 import org.apache.paimon.file.format.FlushingFileFormat;
@@ -40,6 +43,7 @@ import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.file.utils.FileStorePathFactory;
 import org.apache.paimon.file.utils.RecordWriter;
+import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.fs.FileStatus;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
@@ -52,11 +56,6 @@ import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.format.FileFormat;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.BeforeEach;
@@ -152,8 +151,7 @@ public class MergeTreeTest {
                                         new DataField(
                                                 0,
                                                 "k",
-                                                new org.apache.paimon.types.IntType(
-                                                        false)));
+                                                new org.apache.paimon.types.IntType(false)));
                             }
 
                             @Override
@@ -162,8 +160,7 @@ public class MergeTreeTest {
                                         new DataField(
                                                 0,
                                                 "v",
-                                                new org.apache.paimon.types.IntType(
-                                                        false)));
+                                                new org.apache.paimon.types.IntType(false)));
                             }
                         });
         readerFactory = readerFactoryBuilder.build(BinaryRow.EMPTY_ROW, 0);
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
index 331f105ba..25fcd5346 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/SortBufferWriteBufferTestBase.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.file.mergetree;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
+
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.memory.HeapMemorySegmentPool;
 import org.apache.paimon.file.mergetree.compact.DeduplicateMergeFunction;
@@ -32,7 +33,6 @@ import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
-
 import org.junit.jupiter.api.Test;
 
 import java.io.EOFException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
index 32f7f7e34..ff1ac6cc8 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/CombiningRecordReaderTestBase.java
@@ -19,11 +19,11 @@
 package org.apache.paimon.file.mergetree.compact;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
+
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.file.utils.TestReusingRecordReader;
 import org.apache.paimon.reader.RecordReader;
-
 import org.junit.jupiter.api.RepeatedTest;
 
 import java.io.IOException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java
index ab13e7a3f..7b04e11d4 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ConcatRecordReaderTest.java
@@ -22,7 +22,6 @@ import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.file.utils.TestReusingRecordReader;
 import org.apache.paimon.reader.RecordReader;
-
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java
index 4ea582998..1097e8182 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ForceUpLevel0CompactionTest.java
@@ -21,7 +21,6 @@ package org.apache.paimon.file.mergetree.compact;
 import org.apache.paimon.file.compact.CompactUnit;
 import org.apache.paimon.file.mergetree.LevelSortedRun;
 import org.apache.paimon.file.mergetree.SortedRun;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
index 5df3a2e04..10353c976 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/FullChangelogMergeFunctionWrapperTestBase.java
@@ -20,7 +20,6 @@ package org.apache.paimon.file.mergetree.compact;
 
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
index 63ac26462..7630c58fa 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/IntervalPartitionTest.java
@@ -19,13 +19,13 @@
 package org.apache.paimon.file.mergetree.compact;
 
 import org.apache.flink.table.store.codegen.RecordComparator;
-import org.apache.paimon.file.io.DataFileMeta;
-import org.apache.paimon.file.mergetree.SortedRun;
-import org.apache.paimon.file.stats.StatsTestUtils;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.file.io.DataFileMeta;
+import org.apache.paimon.file.mergetree.SortedRun;
+import org.apache.paimon.file.stats.StatsTestUtils;
 import org.junit.jupiter.api.RepeatedTest;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
index aaaa712e5..1c73936b5 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/LookupChangelogMergeFunctionWrapperTest.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.InternalRow.FieldGetter;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.mergetree.compact.aggregate.AggregateMergeFunction;
 import org.apache.paimon.file.mergetree.compact.aggregate.FieldAggregator;
 import org.apache.paimon.file.mergetree.compact.aggregate.FieldSumAgg;
 import org.apache.paimon.types.DataTypes;
-
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.InternalRow.FieldGetter;
 import org.junit.jupiter.api.Test;
 
 import java.util.HashMap;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java
index 9db2968b6..6143a8ccc 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/MergeTreeCompactManagerTest.java
@@ -18,15 +18,14 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.compact.CompactResult;
 import org.apache.paimon.file.compact.CompactUnit;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.DataFileTestUtils;
 import org.apache.paimon.file.mergetree.Levels;
 import org.apache.paimon.file.mergetree.SortedRun;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
index df74334e2..14b1eb35e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/ReducerMergeFunctionWrapperTestBase.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.file.mergetree.compact;
 
+import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.types.RowKind;
-
-import org.apache.paimon.data.GenericRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.params.ParameterizedTest;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java
index 6b27f349a..aa7c5c2df 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/SortMergeReaderTestBase.java
@@ -22,7 +22,6 @@ import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.file.utils.TestReusingRecordReader;
 import org.apache.paimon.reader.RecordReader;
-
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java
index 48a7444fc..71429a9ec 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/UniversalCompactionTest.java
@@ -22,7 +22,6 @@ import org.apache.paimon.file.compact.CompactUnit;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.mergetree.LevelSortedRun;
 import org.apache.paimon.file.mergetree.SortedRun;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java
index 8349d01c2..397cf136e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/mergetree/compact/aggregate/FieldAggregatorTest.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.file.mergetree.compact.aggregate;
 
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.BooleanType;
 import org.apache.paimon.types.DecimalType;
@@ -27,9 +29,6 @@ import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.SmallIntType;
 import org.apache.paimon.types.TinyIntType;
 import org.apache.paimon.types.VarCharType;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.Decimal;
 import org.junit.jupiter.api.Test;
 
 import java.math.BigDecimal;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java
index a6f0605f4..8f73811d4 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/operation/CleanedFileStoreExpireTest.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.manifest.FileKind;
@@ -25,9 +27,6 @@ import org.apache.paimon.file.manifest.ManifestEntry;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.Timestamp;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
index 79c55dec4..7d98f211f 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.file.operation;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.TestFileStore;
@@ -34,8 +35,6 @@ import org.apache.paimon.file.utils.TraceableFileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.types.RowKind;
-
-import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
index 5931f49aa..f04781d1f 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.file.operation;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.TestFileStore;
@@ -30,8 +31,6 @@ import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
-
-import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java
index 469cc1ee0..4b176707b 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreReadTest.java
@@ -18,6 +18,9 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.TestFileStore;
 import org.apache.paimon.file.TestKeyValueGenerator;
@@ -41,10 +44,6 @@ import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
@@ -126,8 +125,7 @@ public class KeyValueFileStoreReadTest {
                                         new DataField(
                                                 0,
                                                 "count",
-                                                new org.apache.paimon.types
-                                                        .BigIntType()));
+                                                new org.apache.paimon.types.BigIntType()));
                             }
                         },
                         ValueCountMergeFunction.factory());
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java
index 0124a706c..b239e670f 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/operation/KeyValueFileStoreScanTest.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.TestFileStore;
@@ -33,8 +34,6 @@ import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.BinaryRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
index a3cbaaa7a..31efeb003 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
@@ -19,6 +19,8 @@
 package org.apache.paimon.file.operation;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.file.schema.Schema;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
@@ -29,9 +31,6 @@ import org.apache.paimon.table.FileStoreTableFactory;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.GenericRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java
index 20ff20eca..56ee23893 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/operation/TestCommitThread.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.file.operation;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.TestFileStore;
 import org.apache.paimon.file.TestKeyValueGenerator;
@@ -27,8 +28,6 @@ import org.apache.paimon.file.mergetree.MergeTreeWriter;
 import org.apache.paimon.file.utils.CommitIncrement;
 import org.apache.paimon.table.sink.CommitMessageImpl;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.BinaryRow;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java b/paimon-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java
index 1821f65e9..f21cf8567 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/operation/UncleanedFileStoreExpireTest.java
@@ -20,7 +20,6 @@ package org.apache.paimon.file.operation;
 
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.fs.Path;
-
 import org.junit.jupiter.api.Test;
 
 import java.nio.file.Files;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java b/paimon-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
index d96442b64..94a95b9cb 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/predicate/BucketSelectorTest.java
@@ -20,7 +20,6 @@ package org.apache.paimon.file.predicate;
 
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java b/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
index 0d1fd2df3..456053f9c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateBuilderTest.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.file.predicate;
 
+import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java b/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
index dae2c55e6..9666e6188 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/predicate/PredicateTest.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.file.predicate;
 
+import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java b/paimon-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java
index 1bdbb5733..cb3dea348 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/schema/DataTypeJsonParserTest.java
@@ -42,7 +42,6 @@ import org.apache.paimon.types.TimestampType;
 import org.apache.paimon.types.TinyIntType;
 import org.apache.paimon.types.VarBinaryType;
 import org.apache.paimon.types.VarCharType;
-
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.MethodSource;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java b/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java
index 5f2814b76..9ee33c127 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaEvolutionUtilTest.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.file.schema;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.predicate.Equal;
 import org.apache.paimon.file.predicate.IsNotNull;
 import org.apache.paimon.file.predicate.IsNull;
@@ -32,9 +34,6 @@ import org.apache.paimon.types.FloatType;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.utils.ProjectedRow;
 import org.apache.paimon.utils.Projection;
-
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
index ec8bd74bd..85761b5af 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
@@ -31,7 +31,6 @@ import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.MapType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
-
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
@@ -102,12 +101,9 @@ public class SchemaManagerTest {
 
         List<DataField> fields =
                 Arrays.asList(
-                        new DataField(
-                                0, "f0", new org.apache.paimon.types.IntType(false)),
-                        new DataField(
-                                1, "f1", new org.apache.paimon.types.BigIntType(false)),
-                        new DataField(
-                                2, "f2", new org.apache.paimon.types.VarCharType()));
+                        new DataField(0, "f0", new org.apache.paimon.types.IntType(false)),
+                        new DataField(1, "f1", new org.apache.paimon.types.BigIntType(false)),
+                        new DataField(2, "f2", new org.apache.paimon.types.VarCharType()));
 
         assertThat(latest.isPresent()).isTrue();
         assertThat(tableSchema).isEqualTo(latest.get());
@@ -234,12 +230,9 @@ public class SchemaManagerTest {
 
         List<DataField> fields =
                 Arrays.asList(
-                        new DataField(
-                                0, "f0", new org.apache.paimon.types.DoubleType(false)),
-                        new DataField(
-                                1, "f1", new org.apache.paimon.types.BigIntType(false)),
-                        new DataField(
-                                2, "f2", new org.apache.paimon.types.VarCharType()));
+                        new DataField(0, "f0", new org.apache.paimon.types.DoubleType(false)),
+                        new DataField(1, "f1", new org.apache.paimon.types.BigIntType(false)),
+                        new DataField(2, "f2", new org.apache.paimon.types.VarCharType()));
 
         assertThat(latest.isPresent()).isTrue();
         assertThat(tableSchema).isEqualTo(latest.get());
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java b/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java
index 427818f53..4baee264a 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaSerializationTest.java
@@ -24,7 +24,6 @@ import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.MapType;
 import org.apache.paimon.types.MultisetType;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java b/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java
index 7ebf3f020..83053ad6c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/schema/TableSchemaTest.java
@@ -21,7 +21,6 @@ package org.apache.paimon.file.schema;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
-
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java b/paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
index 7465e0af5..6b835807a 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/sort/BinaryExternalSortBufferTest.java
@@ -18,16 +18,15 @@
 
 package org.apache.paimon.file.sort;
 
-import org.apache.paimon.file.disk.IOManager;
-import org.apache.paimon.file.memory.HeapMemorySegmentPool;
-import org.apache.paimon.file.memory.MemorySegmentPool;
-import org.apache.paimon.file.utils.MutableObjectIterator;
-
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.serializer.AbstractRowDataSerializer;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
+import org.apache.paimon.file.disk.IOManager;
+import org.apache.paimon.file.memory.HeapMemorySegmentPool;
+import org.apache.paimon.file.memory.MemorySegmentPool;
+import org.apache.paimon.file.utils.MutableObjectIterator;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java b/paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
index 3d5dbb92f..5852fcb00 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/sort/IntNormalizedKeyComputer.java
@@ -19,10 +19,10 @@
 package org.apache.paimon.file.sort;
 
 import org.apache.flink.table.store.codegen.NormalizedKeyComputer;
-import org.apache.paimon.memory.MemorySegment;
-import org.apache.paimon.utils.SortUtil;
 
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.memory.MemorySegment;
+import org.apache.paimon.utils.SortUtil;
 
 /** Example for int {@link NormalizedKeyComputer}. */
 public class IntNormalizedKeyComputer implements NormalizedKeyComputer {
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java b/paimon-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java
index b1d62a882..37cd59d7e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/stats/BinaryTableStatsTest.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.file.stats;
 
-import org.apache.paimon.types.IntType;
-import org.apache.paimon.types.RowType;
-
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
index ee3cb80b2..f9311b198 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsArraySerializerTest.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.file.stats;
 
+import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.file.casting.CastExecutor;
 import org.apache.paimon.file.schema.SchemaEvolutionUtil;
 import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.format.FieldStats;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java b/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java
index c456180df..50349ba37 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/stats/FieldStatsCollectorTest.java
@@ -18,16 +18,15 @@
 
 package org.apache.paimon.file.stats;
 
-import org.apache.paimon.types.ArrayType;
-import org.apache.paimon.types.IntType;
-import org.apache.paimon.types.RowType;
-import org.apache.paimon.types.VarCharType;
-
 import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericArray;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FieldStatsCollector;
+import org.apache.paimon.types.ArrayType;
+import org.apache.paimon.types.IntType;
+import org.apache.paimon.types.RowType;
+import org.apache.paimon.types.VarCharType;
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java b/paimon-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java
index 4c6df60db..b12eade03 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/stats/StatsTestUtils.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.file.stats;
 
+import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 
-import org.apache.paimon.format.FieldStats;
-
 import java.util.ArrayList;
 import java.util.List;
 import java.util.function.Function;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java b/paimon-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java
index d4ea42442..129bac309 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/stats/TestFileStatsExtractor.java
@@ -18,18 +18,17 @@
 
 package org.apache.paimon.file.stats;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.utils.FileUtils;
 import org.apache.paimon.file.utils.ObjectSerializer;
-import org.apache.paimon.fs.FileIO;
-import org.apache.paimon.fs.Path;
-import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.format.FieldStats;
 import org.apache.paimon.format.FieldStatsCollector;
 import org.apache.paimon.format.FileFormat;
 import org.apache.paimon.format.FileStatsExtractor;
 import org.apache.paimon.format.FormatReaderFactory;
+import org.apache.paimon.fs.FileIO;
+import org.apache.paimon.fs.Path;
+import org.apache.paimon.types.RowType;
 
 import java.io.IOException;
 import java.util.List;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
index ad147b6ea..9f5cf2938 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
@@ -19,16 +19,15 @@
 package org.apache.paimon.file.utils;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.types.VarCharType;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.BinaryRowWriter;
-import org.apache.paimon.data.BinaryString;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java
index bf3ee2f29..208605da9 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/utils/ObjectSerializerTestBase.java
@@ -20,7 +20,6 @@ package org.apache.paimon.file.utils;
 
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataOutputSerializer;
-
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java
index c21daf7b9..1e286487e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/utils/OffsetRowTest.java
@@ -17,8 +17,6 @@
 
 package org.apache.paimon.file.utils;
 
-import org.apache.paimon.types.RowKind;
-
 import org.apache.paimon.data.BinaryArray;
 import org.apache.paimon.data.BinaryArrayWriter;
 import org.apache.paimon.data.BinaryMap;
@@ -30,6 +28,7 @@ import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.JoinedRow;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.types.RowKind;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java
index f93f2c491..0ef5ce88f 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/utils/ReusingKeyValue.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.file.utils;
 
-import org.apache.paimon.file.KeyValue;
-
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.file.KeyValue;
 
 /**
  * Util class which reuses a {@link KeyValue} to test if other components handle reuse correctly.
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java
index 88bd51123..1fbba27f9 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/utils/SnapshotManagerTest.java
@@ -20,7 +20,6 @@ package org.apache.paimon.file.utils;
 
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
-
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java b/paimon-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java
index 46aabffdf..df2f26b49 100644
--- a/paimon-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java
+++ b/paimon-core/src/test/java/org/apache/paimon/file/utils/TraceableFileIO.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.file.utils;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
+
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.FileIOLoader;
 import org.apache.paimon.fs.FileStatus;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
index 3eb9687c3..6cab341fd 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
@@ -19,6 +19,9 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
@@ -34,10 +37,6 @@ import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataSplit;
 import org.apache.paimon.table.source.Split;
 import org.apache.paimon.table.source.TableRead;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.serializer.InternalRowSerializer;
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
index 3761e68e4..1f2883297 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
@@ -22,7 +22,6 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
-
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Map;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
index 541ff18e2..9b1fc9503 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
@@ -24,7 +24,6 @@ import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
-
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Map;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
index 6dc8de043..6ffb965ac 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
@@ -24,7 +24,6 @@ import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
-
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Map;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
index c64de5cdc..d3b3fff64 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
@@ -22,7 +22,6 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
-
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Collections;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
index a21d1e285..72bb1650c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
@@ -24,7 +24,6 @@ import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
-
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Collections;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
index aead380ec..55bdfbbb5 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
@@ -22,7 +22,6 @@ import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
-
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Collections;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
index db929ab93..7ae26175a 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
@@ -24,7 +24,6 @@ import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
-
 import org.junit.jupiter.api.BeforeEach;
 
 import java.util.Collections;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
index 400c81567..2266a7913 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
@@ -36,7 +36,6 @@ import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.Split;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
index 2c391bbfb..185e4d011 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
@@ -19,14 +19,13 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.table.source.Split;
-
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
index b5e229fbc..b826ff327 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
@@ -27,7 +27,6 @@ import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.table.source.Split;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.RowType;
-
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
index 73737358b..80bccb847 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
@@ -27,7 +27,6 @@ import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.table.source.DataSplit;
-
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
index e691d734d..f3a6ffbb8 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
@@ -20,6 +20,9 @@ package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.CoreOptions.ChangelogProducer;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
@@ -52,10 +55,6 @@ import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.CompatibilityTestUtils;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
index 9a6344bb1..8bafc2210 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
@@ -26,10 +27,8 @@ import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.table.source.DataSplit;
-
-import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
index 0dc98be76..811d600ca 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
@@ -19,13 +19,12 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.paimon.table.source.Split;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.utils.RowDataUtils;
-
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
index 26de521ea..7b400dfc8 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
@@ -19,15 +19,14 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.table.source.DataSplit;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.Decimal;
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
index 637d0f6d1..f78445825 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/FileDataFilterTestBase.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.table;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Equal;
 import org.apache.paimon.file.predicate.IsNull;
@@ -29,8 +30,6 @@ import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
index 637dab952..4352a34f8 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/FileMetaFilterTestBase.java
@@ -22,9 +22,8 @@ import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.paimon.file.stats.BinaryTableStats;
-import org.apache.paimon.table.source.DataSplit;
-
 import org.apache.paimon.format.FieldStats;
+import org.apache.paimon.table.source.DataSplit;
 import org.junit.jupiter.api.Test;
 
 import java.util.HashSet;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
index 42db70fc8..c47bc99b2 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
@@ -18,6 +18,13 @@
 
 package org.apache.paimon.table;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.GenericMap;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.JoinedRow;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
@@ -44,14 +51,6 @@ import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.BinaryRowWriter;
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.GenericMap;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.JoinedRow;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
index 968e1166f..9d46183c9 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
@@ -19,6 +19,11 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.data.Decimal;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.Timestamp;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
 import org.apache.paimon.file.schema.Schema;
@@ -51,12 +56,6 @@ import org.apache.paimon.types.TimestampType;
 import org.apache.paimon.types.VarBinaryType;
 import org.apache.paimon.types.VarCharType;
 import org.apache.paimon.utils.StringUtils;
-
-import org.apache.paimon.data.BinaryString;
-import org.apache.paimon.data.Decimal;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.Timestamp;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
index b8c73354f..50eef3c6c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTest.java
@@ -18,6 +18,9 @@
 
 package org.apache.paimon.table;
 
+import org.apache.paimon.data.DataFormatTestUtil;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.paimon.file.schema.Schema;
@@ -34,10 +37,6 @@ import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.FloatType;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.DataFormatTestUtil;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java b/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
index 5ff6a8f0a..a28be963d 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.table;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.schema.Schema;
 import org.apache.paimon.file.schema.SchemaManager;
@@ -31,8 +32,6 @@ import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.Split;
 import org.apache.paimon.table.source.TableRead;
-
-import org.apache.paimon.data.GenericRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
index 8ff4402ee..b808e19de 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/sink/CommitMessageSerializerTest.java
@@ -20,7 +20,6 @@ package org.apache.paimon.table.sink;
 
 import org.apache.paimon.file.io.CompactIncrement;
 import org.apache.paimon.file.io.NewFilesIncrement;
-
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java b/paimon-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
index f3c83c4c7..52c995283 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
@@ -18,13 +18,12 @@
 
 package org.apache.paimon.table.sink;
 
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.IntType;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java b/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
index c4b35972a..81b6f0312 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
@@ -19,6 +19,8 @@
 package org.apache.paimon.table.sink;
 
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.operation.AbstractFileStoreWrite;
 import org.apache.paimon.file.schema.Schema;
 import org.apache.paimon.file.schema.SchemaManager;
@@ -36,9 +38,6 @@ import org.apache.paimon.table.source.TableScan;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
index 23f1e0923..4461cdcc6 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/BatchDataTableScanTest.java
@@ -23,7 +23,6 @@ import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.snapshot.ScannerTestBase;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
index 50b1baaf7..dc3f14608 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/RowDataRecordIteratorTestBase.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.table.source;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.file.utils.TestReusingRecordReader;
 import org.apache.paimon.reader.RecordReader;
 import org.apache.paimon.types.RowKind;
 
-import org.apache.paimon.data.InternalRow;
-
 import java.io.IOException;
 import java.util.List;
 import java.util.function.BiConsumer;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
index 6431ec4c0..4ca1f2d90 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/SplitGeneratorTest.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.paimon.file.io.DataFileMeta;
-
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.io.DataFileMeta;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/SplitTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
index d1948ba67..3f4b1473e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/SplitTest.java
@@ -22,7 +22,6 @@ import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.DataFileTestDataGenerator;
 import org.apache.paimon.io.DataInputDeserializer;
 import org.apache.paimon.io.DataOutputViewStreamWrapper;
-
 import org.junit.jupiter.api.Test;
 
 import java.io.ByteArrayOutputStream;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
index b7cebe3b5..165de3064 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
@@ -24,7 +24,6 @@ import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.snapshot.ScannerTestBase;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
index 3d790f9c7..18270c25c 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/ValueContentRowDataRecordIteratorTest.java
@@ -20,7 +20,6 @@ package org.apache.paimon.table.source;
 
 import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
index 7af4c1f1b..091ce76c2 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/ValueCountRowDataRecordIteratorTest.java
@@ -21,7 +21,6 @@ package org.apache.paimon.table.source;
 import org.apache.paimon.file.utils.ReusingTestData;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.utils.ProjectedRow;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
index c8252b641..cdca5fc09 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/BoundedWatermarkFollowUpScannerTest.java
@@ -22,7 +22,6 @@ import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.manifest.ManifestCommittable;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.sink.TableCommitImpl;
-
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
index 2d2286ac2..34fcc24b7 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactedStartingScannerTest.java
@@ -23,7 +23,6 @@ import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
index 53c804168..7156dbc09 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
@@ -28,7 +28,6 @@ import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
index 729618a57..190cffd3e 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorFollowUpScannerTest.java
@@ -18,6 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.io.DataFileMetaSerializer;
 import org.apache.paimon.file.utils.SnapshotManager;
@@ -27,8 +28,6 @@ import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.table.system.BucketsTable;
 import org.apache.paimon.types.RowKind;
-
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.Test;
 
 import java.io.IOException;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
index 393f22aa0..670cc1aea 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousCompactorStartingScannerTest.java
@@ -23,7 +23,6 @@ import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
index 8f0765c44..92ea088cc 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScannerTest.java
@@ -23,7 +23,6 @@ import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
index ab32ecd6d..cc8427ff3 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScannerTest.java
@@ -23,7 +23,6 @@ import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.Test;
 
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
index 344f7640b..cb8542a27 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScannerTest.java
@@ -25,7 +25,6 @@ import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
index a43f670c9..9f7136977 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/FullStartingScannerTest.java
@@ -23,7 +23,6 @@ import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
index 91da04bf8..944f8a3f8 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
@@ -28,7 +28,6 @@ import org.apache.paimon.table.sink.StreamTableWrite;
 import org.apache.paimon.table.source.DataTableScan;
 import org.apache.paimon.table.source.TableRead;
 import org.apache.paimon.types.RowKind;
-
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
diff --git a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
index b39682ae3..23c4b7ed2 100644
--- a/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
+++ b/paimon-core/src/test/java/org/apache/paimon/table/source/snapshot/ScannerTestBase.java
@@ -18,6 +18,10 @@
 
 package org.apache.paimon.table.source.snapshot;
 
+import org.apache.paimon.data.BinaryRow;
+import org.apache.paimon.data.BinaryRowWriter;
+import org.apache.paimon.data.GenericRow;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
 import org.apache.paimon.file.schema.Schema;
 import org.apache.paimon.file.schema.SchemaManager;
@@ -37,11 +41,6 @@ import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypes;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
-
-import org.apache.paimon.data.BinaryRow;
-import org.apache.paimon.data.BinaryRowWriter;
-import org.apache.paimon.data.GenericRow;
-import org.apache.paimon.data.InternalRow;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
index 4b376955b..6c0f6dffd 100644
--- a/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
+++ b/paimon-docs/src/main/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGenerator.java
@@ -18,6 +18,10 @@
 
 package org.apache.paimon.docs.configuration;
 
+import org.apache.paimon.annotation.ConfigGroup;
+import org.apache.paimon.annotation.ConfigGroups;
+import org.apache.paimon.annotation.Documentation;
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.description.DescribedEnum;
 import org.apache.paimon.options.description.Description;
@@ -28,11 +32,6 @@ import org.apache.paimon.options.description.TextElement;
 import org.apache.paimon.utils.Pair;
 import org.apache.paimon.utils.ThrowingConsumer;
 import org.apache.paimon.utils.TimeUtils;
-
-import org.apache.paimon.annotation.ConfigGroup;
-import org.apache.paimon.annotation.ConfigGroups;
-import org.apache.paimon.annotation.Documentation;
-import org.apache.paimon.annotation.VisibleForTesting;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -61,8 +60,8 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
-import static org.apache.paimon.options.description.TextElement.text;
 import static org.apache.paimon.docs.util.Utils.escapeCharacters;
+import static org.apache.paimon.options.description.TextElement.text;
 
 /** Class used for generating code based documentation of configuration parameters. */
 public class ConfigOptionsDocGenerator {
@@ -71,8 +70,7 @@ public class ConfigOptionsDocGenerator {
 
     static final OptionsClassLocation[] LOCATIONS =
             new OptionsClassLocation[] {
-                new OptionsClassLocation(
-                        "flink-table-store-common", "org.apache.paimon.options"),
+                new OptionsClassLocation("flink-table-store-common", "org.apache.paimon.options"),
                 new OptionsClassLocation("flink-table-store-core", "org.apache.flink.table.store"),
                 new OptionsClassLocation(
                         "flink-table-store-flink/flink-table-store-flink-common",
diff --git a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
index ca115dce3..2b6a98238 100644
--- a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocGeneratorTest.java
@@ -18,6 +18,10 @@
 
 package org.apache.paimon.docs.configuration;
 
+import org.apache.paimon.annotation.ConfigGroup;
+import org.apache.paimon.annotation.ConfigGroups;
+import org.apache.paimon.annotation.Documentation;
+import org.apache.paimon.docs.configuration.data.TestCommonOptions;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.ConfigOptions;
 import org.apache.paimon.options.MemorySize;
@@ -26,11 +30,6 @@ import org.apache.paimon.options.description.Formatter;
 import org.apache.paimon.options.description.HtmlFormatter;
 import org.apache.paimon.options.description.InlineElement;
 import org.apache.paimon.utils.Pair;
-
-import org.apache.paimon.annotation.ConfigGroup;
-import org.apache.paimon.annotation.ConfigGroups;
-import org.apache.paimon.annotation.Documentation;
-import org.apache.paimon.docs.configuration.data.TestCommonOptions;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 
diff --git a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
index 937dcfce1..0135878c7 100644
--- a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/ConfigOptionsDocsCompletenessITCase.java
@@ -18,10 +18,9 @@
 
 package org.apache.paimon.docs.configuration;
 
+import org.apache.paimon.annotation.Documentation;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.utils.Pair;
-
-import org.apache.paimon.annotation.Documentation;
 import org.jsoup.Jsoup;
 import org.jsoup.nodes.Document;
 import org.junit.jupiter.api.Test;
diff --git a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
index 5b18ea18a..c6e74c43c 100644
--- a/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
+++ b/paimon-docs/src/test/java/org/apache/paimon/docs/configuration/data/TestCommonOptions.java
@@ -18,11 +18,10 @@
 
 package org.apache.paimon.docs.configuration.data;
 
+import org.apache.paimon.annotation.Documentation;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.ConfigOptions;
 
-import org.apache.paimon.annotation.Documentation;
-
 /** Collection of test {@link ConfigOptions ConfigOptions}. */
 @SuppressWarnings("unused") // this class is only accessed reflectively
 public class TestCommonOptions {
diff --git a/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
index 0c5595fe5..d81003286 100644
--- a/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
+++ b/paimon-filesystems/paimon-oss-impl/src/main/java/org/apache/paimon/oss/OSSFileIO.java
@@ -20,11 +20,11 @@ package org.apache.paimon.oss;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.fs.FileIO;
-import org.apache.paimon.options.Options;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.aliyun.oss.AliyunOSSFileSystem;
+import org.apache.paimon.options.Options;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java b/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
index 18aa18fd4..47f5ffe81 100644
--- a/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
+++ b/paimon-filesystems/paimon-oss/src/main/java/org/apache/paimon/oss/OSSLoader.java
@@ -23,6 +23,7 @@ import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.FileIOLoader;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.PluginFileIO;
+
 import org.apache.paimon.plugin.PluginLoader;
 
 /** A {@link PluginLoader} to load oss. */
diff --git a/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
index b9b6a6b0b..89c9b4e23 100644
--- a/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
+++ b/paimon-filesystems/paimon-s3-impl/src/main/java/org/apache/paimon/s3/S3FileIO.java
@@ -20,11 +20,11 @@ package org.apache.paimon.s3;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.fs.FileIO;
-import org.apache.paimon.options.Options;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.s3a.S3AFileSystem;
+import org.apache.paimon.options.Options;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java b/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
index 86cf1a3fb..f65030d7c 100644
--- a/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
+++ b/paimon-filesystems/paimon-s3/src/main/java/org/apache/paimon/s3/S3Loader.java
@@ -23,6 +23,7 @@ import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.FileIOLoader;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.PluginFileIO;
+
 import org.apache.paimon.plugin.PluginLoader;
 
 /** A {@link PluginLoader} to load oss. */
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
index 84b65f3f1..5f3b79393 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.CoreOptions;
 import org.junit.Test;
 
 import java.util.Collections;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index 0e7107efd..2f72d6882 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -30,8 +30,6 @@ import org.apache.flink.table.catalog.exceptions.TableNotExistException;
 import org.apache.flink.table.delegation.Parser;
 import org.apache.flink.table.operations.Operation;
 import org.apache.flink.table.operations.ddl.CreateCatalogOperation;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.test.util.AbstractTestBase;
@@ -40,6 +38,8 @@ import org.apache.flink.util.CloseableIterator;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.junit.Before;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index 7b459e169..557e2aecc 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -18,14 +18,14 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.BlockingIterator;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.types.Row;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.junit.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
index 296416616..4771be850 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.connector.action.DeleteAction;
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.junit.Test;
 
 import java.util.Collections;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
index 950d90752..105e7ee6d 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.junit.Test;
 
 import java.util.Arrays;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
index 84b65f3f1..5f3b79393 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.paimon.CoreOptions;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.CoreOptions;
 import org.junit.Test;
 
 import java.util.Collections;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
index 0e7107efd..2f72d6882 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/CatalogITCaseBase.java
@@ -30,8 +30,6 @@ import org.apache.flink.table.catalog.exceptions.TableNotExistException;
 import org.apache.flink.table.delegation.Parser;
 import org.apache.flink.table.operations.Operation;
 import org.apache.flink.table.operations.ddl.CreateCatalogOperation;
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.flink.table.store.fs.Path;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.test.util.AbstractTestBase;
@@ -40,6 +38,8 @@ import org.apache.flink.util.CloseableIterator;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.junit.Before;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
index 7b459e169..557e2aecc 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/ContinuousFileStoreITCase.java
@@ -18,14 +18,14 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.paimon.file.Snapshot;
-import org.apache.paimon.file.utils.BlockingIterator;
-import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.flink.table.store.fs.local.LocalFileIO;
 import org.apache.flink.types.Row;
 
 import org.apache.flink.shaded.guava30.com.google.common.collect.ImmutableList;
 
+import org.apache.paimon.file.Snapshot;
+import org.apache.paimon.file.utils.BlockingIterator;
+import org.apache.paimon.file.utils.SnapshotManager;
 import org.junit.Test;
 
 import java.util.ArrayList;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
index 296416616..4771be850 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/FlinkActionITCase.java
@@ -18,10 +18,10 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.connector.action.DeleteAction;
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.junit.Test;
 
 import java.util.Collections;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
index 950d90752..105e7ee6d 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/LookupJoinITCase.java
@@ -18,9 +18,9 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.paimon.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
+import org.apache.paimon.file.utils.BlockingIterator;
 import org.junit.Test;
 
 import java.util.Arrays;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
index 15210d807..fa002f750 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
@@ -28,22 +28,22 @@ import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.factories.DynamicTableSinkFactory;
 import org.apache.flink.table.factories.DynamicTableSourceFactory;
-import org.apache.paimon.CoreOptions.LogChangelogMode;
-import org.apache.paimon.CoreOptions.LogConsistency;
 import org.apache.flink.table.store.catalog.CatalogContext;
-import org.apache.paimon.file.schema.Schema;
-import org.apache.paimon.file.schema.TableSchema;
-import org.apache.paimon.options.Options;
-import org.apache.paimon.table.FileStoreTable;
-import org.apache.paimon.table.FileStoreTableFactory;
-import org.apache.paimon.utils.Preconditions;
 import org.apache.flink.table.types.logical.RowType;
 
+import org.apache.paimon.CoreOptions.LogChangelogMode;
+import org.apache.paimon.CoreOptions.LogConsistency;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.connector.log.LogStoreTableFactory;
 import org.apache.paimon.connector.sink.TableStoreSink;
 import org.apache.paimon.connector.source.SystemTableSource;
 import org.apache.paimon.connector.source.TableStoreSource;
+import org.apache.paimon.file.schema.Schema;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.options.Options;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.FileStoreTableFactory;
+import org.apache.paimon.utils.Preconditions;
 
 import java.util.Collections;
 import java.util.HashSet;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
index 0b5ac14b8..8526607bb 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/BinaryRowTypeSerializer.java
@@ -23,10 +23,10 @@ import org.apache.flink.api.common.typeutils.TypeSerializerSchemaCompatibility;
 import org.apache.flink.api.common.typeutils.TypeSerializerSnapshot;
 import org.apache.flink.core.memory.DataInputView;
 import org.apache.flink.core.memory.DataOutputView;
-import org.apache.paimon.memory.MemorySegment;
 
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.serializer.BinaryRowSerializer;
+import org.apache.paimon.memory.MemorySegment;
 
 import java.io.IOException;
 import java.util.Objects;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataCatalogTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataCatalogTable.java
index 521cfae21..a48541cb2 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataCatalogTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataCatalogTable.java
@@ -22,6 +22,7 @@ import org.apache.flink.table.api.TableSchema;
 import org.apache.flink.table.catalog.CatalogBaseTable;
 import org.apache.flink.table.catalog.CatalogTable;
 import org.apache.flink.table.catalog.CatalogTableImpl;
+
 import org.apache.paimon.table.FileStoreTable;
 
 import java.util.ArrayList;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataTypeToLogicalType.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataTypeToLogicalType.java
index e22c15784..09ded1e49 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataTypeToLogicalType.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/DataTypeToLogicalType.java
@@ -18,6 +18,8 @@
 
 package org.apache.paimon.connector;
 
+import org.apache.flink.table.types.logical.LogicalType;
+
 import org.apache.paimon.types.ArrayType;
 import org.apache.paimon.types.BigIntType;
 import org.apache.paimon.types.BinaryType;
@@ -41,7 +43,6 @@ import org.apache.paimon.types.TimestampType;
 import org.apache.paimon.types.TinyIntType;
 import org.apache.paimon.types.VarBinaryType;
 import org.apache.paimon.types.VarCharType;
-import org.apache.flink.table.types.logical.LogicalType;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
index 3c9291962..e5bd512b9 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
@@ -42,15 +42,15 @@ import org.apache.flink.table.catalog.stats.CatalogTableStatistics;
 import org.apache.flink.table.descriptors.DescriptorProperties;
 import org.apache.flink.table.expressions.Expression;
 import org.apache.flink.table.factories.Factory;
+import org.apache.flink.table.types.logical.RowType;
+
+import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.file.catalog.Catalog;
 import org.apache.paimon.file.catalog.Identifier;
 import org.apache.paimon.file.schema.Schema;
 import org.apache.paimon.file.schema.SchemaChange;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.Table;
-import org.apache.flink.table.types.logical.RowType;
-
-import org.apache.paimon.annotation.VisibleForTesting;
 
 import java.util.ArrayList;
 import java.util.Collections;
@@ -62,8 +62,8 @@ import java.util.Optional;
 
 import static org.apache.flink.table.descriptors.Schema.SCHEMA;
 import static org.apache.flink.table.factories.FactoryUtil.CONNECTOR;
-import static org.apache.paimon.CoreOptions.PATH;
 import static org.apache.flink.table.types.utils.TypeConversions.fromLogicalToDataType;
+import static org.apache.paimon.CoreOptions.PATH;
 import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
 import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
index 5fa05cf9d..5c62de6fb 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalogFactory.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.connector;
 
 import org.apache.flink.table.store.catalog.CatalogContext;
+
 import org.apache.paimon.file.catalog.Catalog;
 import org.apache.paimon.file.catalog.CatalogFactory;
 import org.apache.paimon.options.ConfigOption;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java
index 30bd65dbe..1b291bb94 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkRowWrapper.java
@@ -21,7 +21,6 @@ package org.apache.paimon.connector;
 import org.apache.flink.table.data.DecimalData;
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.StringData;
-import org.apache.paimon.types.RowKind;
 import org.apache.flink.table.types.logical.LogicalType;
 
 import org.apache.paimon.data.BinaryString;
@@ -30,6 +29,7 @@ import org.apache.paimon.data.InternalArray;
 import org.apache.paimon.data.InternalMap;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.types.RowKind;
 
 import static org.apache.paimon.connector.FlinkRowData.toFlinkRowKind;
 import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
index 7ad2d1967..462578c29 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkUtils.java
@@ -20,6 +20,7 @@ package org.apache.paimon.connector;
 
 import org.apache.flink.configuration.ReadableConfig;
 import org.apache.flink.table.store.catalog.CatalogContext;
+
 import org.apache.paimon.options.Options;
 
 import java.util.Map;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeConversion.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeConversion.java
index 9f4df9aca..7ad27f7ae 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeConversion.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeConversion.java
@@ -18,10 +18,11 @@
 
 package org.apache.paimon.connector;
 
+import org.apache.flink.table.types.logical.LogicalType;
+
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.RowType;
-import org.apache.flink.table.types.logical.LogicalType;
 
 import java.util.List;
 import java.util.concurrent.atomic.AtomicInteger;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeToDataType.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeToDataType.java
index fa38851a4..5069ecb9c 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeToDataType.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/LogicalTypeToDataType.java
@@ -18,8 +18,6 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.paimon.types.DataField;
-import org.apache.paimon.types.DataType;
 import org.apache.flink.table.types.logical.ArrayType;
 import org.apache.flink.table.types.logical.BigIntType;
 import org.apache.flink.table.types.logical.BinaryType;
@@ -43,6 +41,9 @@ import org.apache.flink.table.types.logical.VarBinaryType;
 import org.apache.flink.table.types.logical.VarCharType;
 import org.apache.flink.table.types.logical.utils.LogicalTypeDefaultVisitor;
 
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
+
 import java.util.ArrayList;
 import java.util.List;
 import java.util.concurrent.atomic.AtomicInteger;
@@ -58,8 +59,7 @@ public class LogicalTypeToDataType extends LogicalTypeDefaultVisitor<DataType> {
 
     @Override
     public DataType visit(CharType charType) {
-        return new org.apache.paimon.types.CharType(
-                charType.isNullable(), charType.getLength());
+        return new org.apache.paimon.types.CharType(charType.isNullable(), charType.getLength());
     }
 
     @Override
@@ -128,8 +128,7 @@ public class LogicalTypeToDataType extends LogicalTypeDefaultVisitor<DataType> {
 
     @Override
     public DataType visit(TimeType timeType) {
-        return new org.apache.paimon.types.TimeType(
-                timeType.isNullable(), timeType.getPrecision());
+        return new org.apache.paimon.types.TimeType(timeType.isNullable(), timeType.getPrecision());
     }
 
     @Override
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
index 8f35454b5..1d4eed200 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/PredicateConverter.java
@@ -28,15 +28,15 @@ import org.apache.flink.table.expressions.TypeLiteralExpression;
 import org.apache.flink.table.expressions.ValueLiteralExpression;
 import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
 import org.apache.flink.table.functions.FunctionDefinition;
-import org.apache.paimon.file.predicate.Predicate;
-import org.apache.paimon.file.predicate.PredicateBuilder;
-import org.apache.paimon.utils.TypeUtils;
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.logical.LogicalType;
 import org.apache.flink.table.types.logical.LogicalTypeFamily;
 import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.paimon.data.BinaryString;
+import org.apache.paimon.file.predicate.Predicate;
+import org.apache.paimon.file.predicate.PredicateBuilder;
+import org.apache.paimon.utils.TypeUtils;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
index fc10dbc2d..f66d4a556 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/RocksDBOptions.java
@@ -18,12 +18,11 @@
 
 package org.apache.paimon.connector;
 
+import org.apache.paimon.annotation.Documentation;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.MemorySize;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.options.description.Description;
-
-import org.apache.paimon.annotation.Documentation;
 import org.rocksdb.BlockBasedTableConfig;
 import org.rocksdb.BloomFilter;
 import org.rocksdb.ColumnFamilyOptions;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/SystemCatalogTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/SystemCatalogTable.java
index b66c57275..fda6533fa 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/SystemCatalogTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/SystemCatalogTable.java
@@ -20,9 +20,10 @@ package org.apache.paimon.connector;
 
 import org.apache.flink.table.api.Schema;
 import org.apache.flink.table.catalog.CatalogTable;
-import org.apache.paimon.table.Table;
 import org.apache.flink.table.types.utils.TypeConversions;
 
+import org.apache.paimon.table.Table;
+
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
index d81706c4f..fd4ac4fd4 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
@@ -23,14 +23,14 @@ import org.apache.flink.table.connector.sink.DynamicTableSink;
 import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.factories.FactoryUtil;
-import org.apache.paimon.CoreOptions;
-import org.apache.paimon.file.catalog.CatalogLock;
-import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.FileIO;
 import org.apache.flink.table.store.fs.Path;
-import org.apache.paimon.options.Options;
 
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.sink.TableStoreSink;
+import org.apache.paimon.file.catalog.CatalogLock;
+import org.apache.paimon.file.schema.SchemaManager;
+import org.apache.paimon.options.Options;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
index 757c0ea53..a43a764a7 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/Action.java
@@ -20,6 +20,7 @@ package org.apache.paimon.connector.action;
 
 import org.apache.flink.api.java.tuple.Tuple3;
 import org.apache.flink.api.java.utils.MultipleParameterTool;
+
 import org.apache.paimon.file.catalog.CatalogUtils;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
index c8c60328c..ca6fb5b41 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/ActionBase.java
@@ -25,6 +25,12 @@ import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.bridge.java.StreamTableEnvironment;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.catalog.CatalogContext;
+import org.apache.flink.table.types.logical.LogicalType;
+
+import org.apache.paimon.connector.FlinkCatalog;
+import org.apache.paimon.connector.LogicalTypeConversion;
+import org.apache.paimon.connector.sink.FlinkSinkBuilder;
+import org.apache.paimon.connector.utils.TableEnvironmentUtils;
 import org.apache.paimon.file.catalog.Catalog;
 import org.apache.paimon.file.catalog.CatalogFactory;
 import org.apache.paimon.file.catalog.Identifier;
@@ -35,12 +41,6 @@ import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.Table;
 import org.apache.paimon.types.DataType;
 import org.apache.paimon.types.DataTypeCasts;
-import org.apache.flink.table.types.logical.LogicalType;
-
-import org.apache.paimon.connector.FlinkCatalog;
-import org.apache.paimon.connector.LogicalTypeConversion;
-import org.apache.paimon.connector.sink.FlinkSinkBuilder;
-import org.apache.paimon.connector.utils.TableEnvironmentUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
index 86dd7f30d..169c9447a 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
@@ -26,13 +26,13 @@ import org.apache.flink.configuration.ReadableConfig;
 import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
-import org.apache.paimon.CoreOptions;
-import org.apache.paimon.options.Options;
-import org.apache.paimon.table.FileStoreTable;
 
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.sink.CompactorSinkBuilder;
 import org.apache.paimon.connector.source.CompactorSourceBuilder;
 import org.apache.paimon.connector.utils.StreamExecutionEnvironmentUtils;
+import org.apache.paimon.options.Options;
+import org.apache.paimon.table.FileStoreTable;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DropPartitionAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DropPartitionAction.java
index 08584498d..578bbbb95 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DropPartitionAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/DropPartitionAction.java
@@ -20,8 +20,8 @@ package org.apache.paimon.connector.action;
 
 import org.apache.flink.api.java.tuple.Tuple3;
 import org.apache.flink.api.java.utils.MultipleParameterTool;
-import org.apache.paimon.table.sink.BatchTableCommit;
 
+import org.apache.paimon.table.sink.BatchTableCommit;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/MergeIntoAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/MergeIntoAction.java
index 98b5b5b24..669aff130 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/MergeIntoAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/MergeIntoAction.java
@@ -26,13 +26,13 @@ import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.data.conversion.DataStructureConverter;
 import org.apache.flink.table.data.conversion.DataStructureConverters;
-import org.apache.paimon.table.FileStoreTable;
-import org.apache.paimon.types.DataField;
-import org.apache.paimon.types.DataType;
 import org.apache.flink.table.types.utils.TypeConversions;
 import org.apache.flink.types.RowKind;
 
 import org.apache.paimon.connector.LogicalTypeConversion;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.types.DataField;
+import org.apache.paimon.types.DataType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java
index 9571771d7..02fe3c1cd 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java
@@ -22,12 +22,12 @@ import org.apache.flink.api.common.serialization.SerializationSchema;
 import org.apache.flink.connector.kafka.sink.KafkaRecordSerializationSchema;
 import org.apache.flink.streaming.connectors.kafka.KafkaSerializationSchema;
 import org.apache.flink.table.data.RowData;
-import org.apache.paimon.CoreOptions.LogChangelogMode;
-import org.apache.paimon.table.sink.SinkRecord;
-import org.apache.paimon.types.RowKind;
 
 import org.apache.kafka.clients.producer.ProducerRecord;
+import org.apache.paimon.CoreOptions.LogChangelogMode;
 import org.apache.paimon.connector.FlinkRowData;
+import org.apache.paimon.table.sink.SinkRecord;
+import org.apache.paimon.types.RowKind;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
index bfd922219..b08d48b01 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
@@ -21,9 +21,9 @@ package org.apache.paimon.connector.kafka;
 import org.apache.flink.api.common.serialization.SerializationSchema;
 import org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer.Semantic;
 import org.apache.flink.table.data.RowData;
+
 import org.apache.paimon.CoreOptions.LogChangelogMode;
 import org.apache.paimon.CoreOptions.LogConsistency;
-
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.connector.log.LogSinkProvider;
 import org.apache.paimon.connector.sink.LogSinkFunction;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
index d76d5c463..00701cd38 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
@@ -23,11 +23,11 @@ import org.apache.flink.connector.kafka.source.KafkaSource;
 import org.apache.flink.connector.kafka.source.enumerator.initializer.OffsetsInitializer;
 import org.apache.flink.connector.kafka.source.reader.deserializer.KafkaRecordDeserializationSchema;
 import org.apache.flink.table.data.RowData;
-import org.apache.paimon.CoreOptions.LogConsistency;
-import org.apache.paimon.CoreOptions.StartupMode;
 import org.apache.flink.table.types.DataType;
 
 import org.apache.kafka.common.TopicPartition;
+import org.apache.paimon.CoreOptions.LogConsistency;
+import org.apache.paimon.CoreOptions.StartupMode;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.connector.log.LogSourceProvider;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
index 4dca24a2f..1e7c8787b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
@@ -29,12 +29,12 @@ import org.apache.flink.table.connector.sink.DynamicTableSink;
 import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.factories.FactoryUtil;
-import org.apache.paimon.CoreOptions;
-import org.apache.paimon.options.Options;
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.utils.DataTypeUtils;
 
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.log.LogStoreTableFactory;
+import org.apache.paimon.options.Options;
 
 import javax.annotation.Nullable;
 
@@ -45,11 +45,11 @@ import java.util.Properties;
 import java.util.Set;
 
 import static org.apache.flink.table.factories.FactoryUtil.createTableFactoryHelper;
+import static org.apache.kafka.clients.consumer.ConsumerConfig.ISOLATION_LEVEL_CONFIG;
 import static org.apache.paimon.CoreOptions.LOG_CHANGELOG_MODE;
 import static org.apache.paimon.CoreOptions.LOG_CONSISTENCY;
 import static org.apache.paimon.CoreOptions.LogConsistency;
 import static org.apache.paimon.CoreOptions.SCAN_TIMESTAMP_MILLIS;
-import static org.apache.kafka.clients.consumer.ConsumerConfig.ISOLATION_LEVEL_CONFIG;
 import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
 
 /** The Kafka {@link LogStoreTableFactory} implementation. */
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaSinkFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaSinkFunction.java
index 93b13a329..74b07a9c1 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaSinkFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaSinkFunction.java
@@ -22,11 +22,11 @@ import org.apache.flink.configuration.Configuration;
 import org.apache.flink.streaming.connectors.kafka.FlinkKafkaException;
 import org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer;
 import org.apache.flink.streaming.connectors.kafka.KafkaSerializationSchema;
-import org.apache.paimon.table.sink.SinkRecord;
 
 import org.apache.kafka.clients.producer.Callback;
 import org.apache.kafka.clients.producer.ProducerRecord;
 import org.apache.paimon.connector.sink.LogSinkFunction;
+import org.apache.paimon.table.sink.SinkRecord;
 
 import java.util.Properties;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
index 5a64280f2..24754f24b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
@@ -22,7 +22,13 @@ import org.apache.flink.streaming.api.operators.StreamingRuntimeContext;
 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.shaded.guava30.com.google.common.primitives.Ints;
+
 import org.apache.paimon.CoreOptions;
+import org.apache.paimon.connector.FlinkRowData;
+import org.apache.paimon.connector.FlinkRowWrapper;
+import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateFilter;
 import org.apache.paimon.file.schema.TableSchema;
@@ -33,12 +39,6 @@ import org.apache.paimon.table.source.TableStreamingReader;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.FileIOUtils;
 import org.apache.paimon.utils.TypeUtils;
-
-import org.apache.flink.shaded.guava30.com.google.common.primitives.Ints;
-
-import org.apache.paimon.connector.FlinkRowData;
-import org.apache.paimon.connector.FlinkRowWrapper;
-import org.apache.paimon.data.InternalRow;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -60,9 +60,9 @@ import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
+import static org.apache.paimon.connector.RocksDBOptions.LOOKUP_CACHE_ROWS;
 import static org.apache.paimon.file.predicate.PredicateBuilder.transformFieldMapping;
 import static org.apache.paimon.utils.Preconditions.checkArgument;
-import static org.apache.paimon.connector.RocksDBOptions.LOOKUP_CACHE_ROWS;
 
 /** A lookup {@link TableFunction} for file store. */
 public class FileStoreLookupFunction implements Serializable, Closeable {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java
index 165096e9a..738577765 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/LookupTable.java
@@ -18,9 +18,8 @@
 
 package org.apache.paimon.connector.lookup;
 
-import org.apache.paimon.types.RowType;
-
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.types.RowType;
 
 import java.io.IOException;
 import java.util.HashSet;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java
index 2b5650e4a..840584294 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/PrimaryKeyLookupTable.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.connector.lookup;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalSerializers;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.KeyProjectedRow;
 import org.apache.paimon.utils.TypeUtils;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.serializer.InternalSerializers;
-
 import java.io.IOException;
 import java.util.Collections;
 import java.util.Iterator;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
index 879deebbe..1df90cc92 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/RocksDBState.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.connector.lookup;
 
-import org.apache.paimon.io.DataInputDeserializer;
-import org.apache.paimon.io.DataOutputSerializer;
-
 import org.apache.flink.shaded.guava30.com.google.common.cache.Cache;
 import org.apache.flink.shaded.guava30.com.google.common.cache.CacheBuilder;
 
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.serializer.Serializer;
+import org.apache.paimon.io.DataInputDeserializer;
+import org.apache.paimon.io.DataOutputSerializer;
 import org.rocksdb.ColumnFamilyHandle;
 import org.rocksdb.RocksDB;
 import org.rocksdb.WriteOptions;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java
index e347f25ef..b97b55ead 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/SecondaryIndexLookupTable.java
@@ -18,14 +18,13 @@
 
 package org.apache.paimon.connector.lookup;
 
+import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.data.serializer.InternalSerializers;
 import org.apache.paimon.types.RowKind;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.KeyProjectedRow;
 import org.apache.paimon.utils.TypeUtils;
 
-import org.apache.paimon.data.InternalRow;
-import org.apache.paimon.data.serializer.InternalSerializers;
-
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Iterator;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
index 2ff51ba16..e7727f7cf 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/BucketStreamPartitioner.java
@@ -23,12 +23,12 @@ import org.apache.flink.runtime.plugable.SerializationDelegate;
 import org.apache.flink.streaming.runtime.partitioner.StreamPartitioner;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
-import org.apache.paimon.file.schema.TableSchema;
-import org.apache.paimon.table.sink.BucketComputer;
-import org.apache.paimon.table.sink.PartitionComputer;
 
 import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.file.schema.TableSchema;
+import org.apache.paimon.table.sink.BucketComputer;
+import org.apache.paimon.table.sink.PartitionComputer;
 
 import java.util.Objects;
 import java.util.function.Function;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableSerializer.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableSerializer.java
index 1303839f2..3dc21ff09 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableSerializer.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableSerializer.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.connector.sink;
 
 import org.apache.flink.core.io.SimpleVersionedSerializer;
+
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.CommitMessageSerializer;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableTypeInfo.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableTypeInfo.java
index 28a27cad4..74c4ff83a 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableTypeInfo.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CommittableTypeInfo.java
@@ -22,6 +22,7 @@ import org.apache.flink.api.common.ExecutionConfig;
 import org.apache.flink.api.common.typeinfo.TypeInformation;
 import org.apache.flink.api.common.typeutils.TypeSerializer;
 import org.apache.flink.core.io.SimpleVersionedSerializerTypeSerializerProxy;
+
 import org.apache.paimon.table.sink.CommitMessageSerializer;
 
 /** Type information of {@link Committable}. */
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
index 4ae2d6383..d57803257 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSink.java
@@ -21,9 +21,10 @@ package org.apache.paimon.connector.sink;
 import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.paimon.table.FileStoreTable;
 import org.apache.flink.util.function.SerializableFunction;
 
+import org.apache.paimon.table.FileStoreTable;
+
 /** {@link FlinkSink} for dedicated compact jobs. */
 public class CompactorSink extends FlinkSink {
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
index d4a94edf0..5d26f38e0 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/CompactorSinkBuilder.java
@@ -24,6 +24,7 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.streaming.api.transformations.PartitionTransformation;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.file.operation.Lock;
+
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.system.BucketsTable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
index e8445fabd..3de3de8c0 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FileStoreSink.java
@@ -22,10 +22,10 @@ import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.file.manifest.ManifestCommittableSerializer;
 import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.paimon.table.FileStoreTable;
 import org.apache.flink.util.function.SerializableFunction;
 
 import org.apache.paimon.connector.VersionedSerializerWrapper;
+import org.apache.paimon.table.FileStoreTable;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
index d82cccf2d..2e39d76e3 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSink.java
@@ -31,12 +31,12 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.streaming.api.functions.sink.DiscardingSink;
 import org.apache.flink.streaming.api.operators.OneInputStreamOperator;
 import org.apache.flink.table.data.RowData;
-import org.apache.paimon.options.Options;
-import org.apache.paimon.table.FileStoreTable;
-import org.apache.paimon.utils.Preconditions;
 import org.apache.flink.util.function.SerializableFunction;
 
 import org.apache.paimon.connector.utils.StreamExecutionEnvironmentUtils;
+import org.apache.paimon.options.Options;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.utils.Preconditions;
 
 import java.io.Serializable;
 import java.util.UUID;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
index 11608b7a0..9b4fd3b5a 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FlinkSinkBuilder.java
@@ -25,9 +25,9 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.streaming.api.transformations.PartitionTransformation;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.file.operation.Lock;
-import org.apache.paimon.table.FileStoreTable;
 
 import org.apache.paimon.connector.FlinkConnectorOptions;
+import org.apache.paimon.table.FileStoreTable;
 
 import javax.annotation.Nullable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
index 4877f1294..9c72e60fe 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
@@ -29,15 +29,15 @@ import org.apache.flink.api.java.typeutils.runtime.TupleSerializer;
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
-import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
-import org.apache.paimon.table.FileStoreTable;
-import org.apache.paimon.table.sink.SinkRecord;
 
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.connector.BinaryRowTypeSerializer;
 import org.apache.paimon.data.BinaryRow;
 import org.apache.paimon.data.InternalRow;
+import org.apache.paimon.table.FileStoreTable;
+import org.apache.paimon.table.sink.SinkRecord;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogSinkFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogSinkFunction.java
index f9d3498b9..39c386868 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogSinkFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LogSinkFunction.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.connector.sink;
 
 import org.apache.flink.streaming.api.functions.sink.SinkFunction;
+
 import org.apache.paimon.table.sink.SinkRecord;
 
 /** Log {@link SinkFunction} with {@link WriteCallback}. */
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java
index 390697623..1455d79cf 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java
@@ -20,6 +20,7 @@ package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
+
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.table.FileStoreTable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
index 97d1f1629..8088c471f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/OffsetRowDataHashStreamPartitioner.java
@@ -24,10 +24,10 @@ import org.apache.flink.streaming.runtime.partitioner.StreamPartitioner;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.store.file.utils.OffsetRow;
-import org.apache.paimon.types.RowType;
 
 import org.apache.paimon.connector.FlinkRowWrapper;
 import org.apache.paimon.data.serializer.InternalRowSerializer;
+import org.apache.paimon.types.RowType;
 
 /**
  * {@link StreamPartitioner} to partition {@link RowData} according to its hash value from an {@link
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StateUtils.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StateUtils.java
index 316b935aa..e0b656de8 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StateUtils.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StateUtils.java
@@ -20,6 +20,7 @@ package org.apache.paimon.connector.sink;
 import org.apache.flink.api.common.state.ListState;
 import org.apache.flink.api.common.state.ListStateDescriptor;
 import org.apache.flink.runtime.state.StateInitializationContext;
+
 import org.apache.paimon.utils.Preconditions;
 
 import javax.annotation.Nullable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
index a02bb9359..e91a07174 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCommitter.java
@@ -19,6 +19,7 @@
 package org.apache.paimon.connector.sink;
 
 import org.apache.flink.table.store.file.manifest.ManifestCommittable;
+
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.TableCommit;
 import org.apache.paimon.table.sink.TableCommitImpl;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
index ab85c6f13..b66580db0 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
@@ -21,16 +21,16 @@ package org.apache.paimon.connector.sink;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
... 3268 lines suppressed ...


[incubator-paimon] 31/32: [core] Rename paimon: TableStore to Paimon 2

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 7fdfc4539417ec7b97bcda97de92a52b457001c7
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Sat Mar 18 10:18:27 2023 +0800

    [core] Rename paimon: TableStore to Paimon 2
---
 .../java/org/apache/paimon/utils/JsonSerdeUtil.java   |  4 ++--
 ...rovider.java => PaimonDataStreamScanProvider.java} |  4 ++--
 ...rovider.java => PaimonDataStreamSinkProvider.java} |  5 ++---
 ...oreFactory.java => AbstractFlinkTableFactory.java} | 10 +++++-----
 .../java/org/apache/paimon/flink/FlinkCatalog.java    |  2 +-
 ...reConnectorFactory.java => FlinkTableFactory.java} | 10 +++++-----
 ...rovider.java => PaimonDataStreamScanProvider.java} |  4 ++--
 ...rovider.java => PaimonDataStreamSinkProvider.java} |  5 ++---
 .../org/apache/paimon/flink/action/ActionBase.java    |  2 +-
 .../apache/paimon/flink/action/MergeIntoAction.java   |  3 +--
 .../sink/{TableStoreSink.java => FlinkTableSink.java} | 14 +++++++-------
 .../{TableStoreSource.java => DataTableSource.java}   | 16 ++++++++--------
 .../apache/paimon/flink/source/SystemTableSource.java |  2 +-
 .../services/org.apache.flink.table.factories.Factory |  2 +-
 ...ryTest.java => AbstractFlinkTableFactoryTest.java} |  6 +++---
 .../org/apache/paimon/flink/ChangelogModeTest.java    | 10 +++++-----
 .../org/apache/paimon/flink/CreateTableITCase.java    |  2 +-
 .../java/org/apache/paimon/flink/DropTableITCase.java |  2 +-
 .../{TableStoreTestBase.java => FlinkTestBase.java}   |  2 +-
 .../org/apache/paimon/flink/ReadWriteTableITCase.java | 12 ++++++------
 .../main/java/org/apache/paimon/hive/HiveCatalog.java |  6 +++---
 .../java/org/apache/paimon/hive/PaimonMetaHook.java   |  8 ++++----
 .../main/java/org/apache/paimon/hive/PaimonSerDe.java |  2 +-
 .../org/apache/paimon/hive/PaimonStorageHandler.java  |  8 ++++----
 ...leStoreInputFormat.java => PaimonInputFormat.java} | 10 +++++-----
 ...ableStoreInputSplit.java => PaimonInputSplit.java} |  8 ++++----
 ...StoreOutputFormat.java => PaimonOutputFormat.java} |  2 +-
 ...StoreRecordReader.java => PaimonRecordReader.java} |  6 +++---
 .../objectinspector/PaimonRowDataObjectInspector.java | 14 +++++++-------
 .../paimon/hive/PaimonStorageHandlerITCase.java       |  6 ++----
 ...eInputSplitTest.java => PaimonInputSplitTest.java} | 10 +++++-----
 ...ordReaderTest.java => PaimonRecordReaderTest.java} | 19 +++++++++----------
 32 files changed, 105 insertions(+), 111 deletions(-)

diff --git a/paimon-core/src/main/java/org/apache/paimon/utils/JsonSerdeUtil.java b/paimon-core/src/main/java/org/apache/paimon/utils/JsonSerdeUtil.java
index 4a61dde66..dab9d1692 100644
--- a/paimon-core/src/main/java/org/apache/paimon/utils/JsonSerdeUtil.java
+++ b/paimon-core/src/main/java/org/apache/paimon/utils/JsonSerdeUtil.java
@@ -49,7 +49,7 @@ public class JsonSerdeUtil {
 
     static {
         OBJECT_MAPPER_INSTANCE = new ObjectMapper();
-        OBJECT_MAPPER_INSTANCE.registerModule(createTableStoreJacksonModule());
+        OBJECT_MAPPER_INSTANCE.registerModule(createPaimonJacksonModule());
     }
 
     public static <T> T fromJson(String json, Class<T> clazz) {
@@ -76,7 +76,7 @@ public class JsonSerdeUtil {
         }
     }
 
-    private static Module createTableStoreJacksonModule() {
+    private static Module createPaimonJacksonModule() {
         SimpleModule module = new SimpleModule("Paimon");
         registerJsonObjects(
                 module, TableSchema.class, SchemaSerializer.INSTANCE, SchemaSerializer.INSTANCE);
diff --git a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/PaimonDataStreamScanProvider.java
similarity index 93%
rename from paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/PaimonDataStreamScanProvider.java
index a742f7f02..b7bea8e17 100644
--- a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/PaimonDataStreamScanProvider.java
@@ -26,12 +26,12 @@ import org.apache.flink.table.data.RowData;
 import java.util.function.Function;
 
 /** Paimon {@link DataStreamScanProvider}. */
-public class TableStoreDataStreamScanProvider implements DataStreamScanProvider {
+public class PaimonDataStreamScanProvider implements DataStreamScanProvider {
 
     private final boolean isBounded;
     private final Function<StreamExecutionEnvironment, DataStream<RowData>> producer;
 
-    public TableStoreDataStreamScanProvider(
+    public PaimonDataStreamScanProvider(
             boolean isBounded, Function<StreamExecutionEnvironment, DataStream<RowData>> producer) {
         this.isBounded = isBounded;
         this.producer = producer;
diff --git a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/PaimonDataStreamSinkProvider.java
similarity index 87%
rename from paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
rename to paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/PaimonDataStreamSinkProvider.java
index 6d72489be..34aa8991d 100644
--- a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/PaimonDataStreamSinkProvider.java
@@ -26,12 +26,11 @@ import org.apache.flink.table.data.RowData;
 import java.util.function.Function;
 
 /** Paimon {@link DataStreamSinkProvider}. */
-public class TableStoreDataStreamSinkProvider implements DataStreamSinkProvider {
+public class PaimonDataStreamSinkProvider implements DataStreamSinkProvider {
 
     private final Function<DataStream<RowData>, DataStreamSink<?>> producer;
 
-    public TableStoreDataStreamSinkProvider(
-            Function<DataStream<RowData>, DataStreamSink<?>> producer) {
+    public PaimonDataStreamSinkProvider(Function<DataStream<RowData>, DataStreamSink<?>> producer) {
         this.producer = producer;
     }
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractTableStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractFlinkTableFactory.java
similarity index 97%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractTableStoreFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractFlinkTableFactory.java
index 1624de1a3..763f77ff5 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractTableStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractFlinkTableFactory.java
@@ -35,9 +35,9 @@ import org.apache.paimon.CoreOptions.LogConsistency;
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.catalog.CatalogContext;
 import org.apache.paimon.flink.log.LogStoreTableFactory;
-import org.apache.paimon.flink.sink.TableStoreSink;
+import org.apache.paimon.flink.sink.FlinkTableSink;
+import org.apache.paimon.flink.source.DataTableSource;
 import org.apache.paimon.flink.source.SystemTableSource;
-import org.apache.paimon.flink.source.TableStoreSource;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.schema.Schema;
 import org.apache.paimon.schema.TableSchema;
@@ -60,7 +60,7 @@ import static org.apache.paimon.flink.LogicalTypeConversion.toLogicalType;
 import static org.apache.paimon.flink.log.LogStoreTableFactory.discoverLogStoreFactory;
 
 /** Abstract paimon factory to create table source and table sink. */
-public abstract class AbstractTableStoreFactory
+public abstract class AbstractFlinkTableFactory
         implements DynamicTableSourceFactory, DynamicTableSinkFactory {
 
     @Override
@@ -72,7 +72,7 @@ public abstract class AbstractTableStoreFactory
         if (origin instanceof SystemCatalogTable) {
             return new SystemTableSource(((SystemCatalogTable) origin).table(), isStreamingMode);
         } else {
-            return new TableStoreSource(
+            return new DataTableSource(
                     context.getObjectIdentifier(),
                     buildFileStoreTable(context),
                     isStreamingMode,
@@ -83,7 +83,7 @@ public abstract class AbstractTableStoreFactory
 
     @Override
     public DynamicTableSink createDynamicTableSink(Context context) {
-        return new TableStoreSink(
+        return new FlinkTableSink(
                 context.getObjectIdentifier(),
                 buildFileStoreTable(context),
                 context,
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
index f73317c55..1d42d3c24 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
@@ -88,7 +88,7 @@ public class FlinkCatalog extends AbstractCatalog {
 
     @Override
     public Optional<Factory> getFactory() {
-        return Optional.of(new TableStoreConnectorFactory(catalog.lockFactory().orElse(null)));
+        return Optional.of(new FlinkTableFactory(catalog.lockFactory().orElse(null)));
     }
 
     @Override
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreConnectorFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkTableFactory.java
similarity index 92%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreConnectorFactory.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkTableFactory.java
index 3d70000f0..d2387e0cc 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreConnectorFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkTableFactory.java
@@ -26,7 +26,7 @@ import org.apache.flink.table.factories.FactoryUtil;
 
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.catalog.CatalogLock;
-import org.apache.paimon.flink.sink.TableStoreSink;
+import org.apache.paimon.flink.sink.FlinkTableSink;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.Options;
@@ -38,15 +38,15 @@ import static org.apache.paimon.CoreOptions.AUTO_CREATE;
 import static org.apache.paimon.flink.FlinkCatalogFactory.IDENTIFIER;
 
 /** A paimon {@link DynamicTableFactory} to create source and sink. */
-public class TableStoreConnectorFactory extends AbstractTableStoreFactory {
+public class FlinkTableFactory extends AbstractFlinkTableFactory {
 
     @Nullable private final CatalogLock.Factory lockFactory;
 
-    public TableStoreConnectorFactory() {
+    public FlinkTableFactory() {
         this(null);
     }
 
-    public TableStoreConnectorFactory(@Nullable CatalogLock.Factory lockFactory) {
+    public FlinkTableFactory(@Nullable CatalogLock.Factory lockFactory) {
         this.lockFactory = lockFactory;
     }
 
@@ -84,7 +84,7 @@ public class TableStoreConnectorFactory extends AbstractTableStoreFactory {
                     context.isTemporary());
         }
         createTableIfNeeded(context);
-        TableStoreSink sink = (TableStoreSink) super.createDynamicTableSink(context);
+        FlinkTableSink sink = (FlinkTableSink) super.createDynamicTableSink(context);
         sink.setLockFactory(lockFactory);
         return sink;
     }
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/PaimonDataStreamScanProvider.java
similarity index 93%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/PaimonDataStreamScanProvider.java
index 7ab932352..af9df5b93 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/PaimonDataStreamScanProvider.java
@@ -27,12 +27,12 @@ import org.apache.flink.table.data.RowData;
 import java.util.function.Function;
 
 /** Paimon {@link DataStreamScanProvider}. */
-public class TableStoreDataStreamScanProvider implements DataStreamScanProvider {
+public class PaimonDataStreamScanProvider implements DataStreamScanProvider {
 
     private final boolean isBounded;
     private final Function<StreamExecutionEnvironment, DataStream<RowData>> producer;
 
-    public TableStoreDataStreamScanProvider(
+    public PaimonDataStreamScanProvider(
             boolean isBounded, Function<StreamExecutionEnvironment, DataStream<RowData>> producer) {
         this.isBounded = isBounded;
         this.producer = producer;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/PaimonDataStreamSinkProvider.java
similarity index 88%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/PaimonDataStreamSinkProvider.java
index fa4c6da7b..05eaacf5a 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/PaimonDataStreamSinkProvider.java
@@ -27,12 +27,11 @@ import org.apache.flink.table.data.RowData;
 import java.util.function.Function;
 
 /** Paimon {@link DataStreamSinkProvider}. */
-public class TableStoreDataStreamSinkProvider implements DataStreamSinkProvider {
+public class PaimonDataStreamSinkProvider implements DataStreamSinkProvider {
 
     private final Function<DataStream<RowData>, DataStreamSink<?>> producer;
 
-    public TableStoreDataStreamSinkProvider(
-            Function<DataStream<RowData>, DataStreamSink<?>> producer) {
+    public PaimonDataStreamSinkProvider(Function<DataStream<RowData>, DataStreamSink<?>> producer) {
         this.producer = producer;
     }
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/ActionBase.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/ActionBase.java
index 7d5e935f9..8ea16956e 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/ActionBase.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/ActionBase.java
@@ -105,7 +105,7 @@ public abstract class ActionBase implements Action {
      * Extract {@link LogicalType}s from Flink {@link org.apache.flink.table.types.DataType}s and
      * convert to Paimon {@link DataType}s.
      */
-    protected List<DataType> toTableStoreDataTypes(
+    protected List<DataType> toPaimonTypes(
             List<org.apache.flink.table.types.DataType> flinkDataTypes) {
         return flinkDataTypes.stream()
                 .map(org.apache.flink.table.types.DataType::getLogicalType)
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/MergeIntoAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/MergeIntoAction.java
index 7870702b0..9fee82607 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/MergeIntoAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/MergeIntoAction.java
@@ -667,8 +667,7 @@ public class MergeIntoAction extends ActionBase {
     }
 
     private void checkSchema(String action, Table source) {
-        List<DataType> actualTypes =
-                toTableStoreDataTypes(source.getResolvedSchema().getColumnDataTypes());
+        List<DataType> actualTypes = toPaimonTypes(source.getResolvedSchema().getColumnDataTypes());
         List<DataType> expectedTypes = this.table.rowType().getFieldTypes();
         if (!compatibleCheck(actualTypes, expectedTypes)) {
             throw new IllegalStateException(
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/TableStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkTableSink.java
similarity index 95%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/TableStoreSink.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkTableSink.java
index 9dcbe349b..1b4838c41 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/TableStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkTableSink.java
@@ -33,7 +33,7 @@ import org.apache.paimon.CoreOptions.MergeEngine;
 import org.apache.paimon.catalog.CatalogLock;
 import org.apache.paimon.flink.FlinkCatalog;
 import org.apache.paimon.flink.FlinkConnectorOptions;
-import org.apache.paimon.flink.TableStoreDataStreamSinkProvider;
+import org.apache.paimon.flink.PaimonDataStreamSinkProvider;
 import org.apache.paimon.flink.log.LogSinkProvider;
 import org.apache.paimon.flink.log.LogStoreTableFactory;
 import org.apache.paimon.operation.Lock;
@@ -53,7 +53,7 @@ import static org.apache.paimon.CoreOptions.LOG_CHANGELOG_MODE;
 import static org.apache.paimon.CoreOptions.MERGE_ENGINE;
 
 /** Table sink to create sink. */
-public class TableStoreSink implements DynamicTableSink, SupportsOverwrite, SupportsPartitioning {
+public class FlinkTableSink implements DynamicTableSink, SupportsOverwrite, SupportsPartitioning {
 
     private final ObjectIdentifier tableIdentifier;
     private final FileStoreTable table;
@@ -64,7 +64,7 @@ public class TableStoreSink implements DynamicTableSink, SupportsOverwrite, Supp
     private boolean overwrite = false;
     @Nullable private CatalogLock.Factory lockFactory;
 
-    public TableStoreSink(
+    public FlinkTableSink(
             ObjectIdentifier tableIdentifier,
             FileStoreTable table,
             DynamicTableFactory.Context context,
@@ -128,7 +128,7 @@ public class TableStoreSink implements DynamicTableSink, SupportsOverwrite, Supp
         // Do not sink to log store when overwrite mode
         final LogSinkFunction logSinkFunction =
                 overwrite ? null : (logSinkProvider == null ? null : logSinkProvider.createSink());
-        return new TableStoreDataStreamSinkProvider(
+        return new PaimonDataStreamSinkProvider(
                 (dataStream) ->
                         new FlinkSinkBuilder(table)
                                 .withInput(
@@ -148,8 +148,8 @@ public class TableStoreSink implements DynamicTableSink, SupportsOverwrite, Supp
 
     @Override
     public DynamicTableSink copy() {
-        TableStoreSink copied =
-                new TableStoreSink(tableIdentifier, table, context, logStoreTableFactory);
+        FlinkTableSink copied =
+                new FlinkTableSink(tableIdentifier, table, context, logStoreTableFactory);
         copied.staticPartitions = new HashMap<>(staticPartitions);
         copied.overwrite = overwrite;
         copied.lockFactory = lockFactory;
@@ -158,7 +158,7 @@ public class TableStoreSink implements DynamicTableSink, SupportsOverwrite, Supp
 
     @Override
     public String asSummaryString() {
-        return "TableStoreSink";
+        return "PaimonSink";
     }
 
     @Override
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/TableStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/DataTableSource.java
similarity index 95%
rename from paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/TableStoreSource.java
rename to paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/DataTableSource.java
index 1e7b0a6f9..390942e36 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/TableStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/DataTableSource.java
@@ -31,7 +31,7 @@ import org.apache.paimon.CoreOptions.ChangelogProducer;
 import org.apache.paimon.CoreOptions.LogChangelogMode;
 import org.apache.paimon.CoreOptions.LogConsistency;
 import org.apache.paimon.flink.FlinkConnectorOptions;
-import org.apache.paimon.flink.TableStoreDataStreamScanProvider;
+import org.apache.paimon.flink.PaimonDataStreamScanProvider;
 import org.apache.paimon.flink.log.LogSourceProvider;
 import org.apache.paimon.flink.log.LogStoreTableFactory;
 import org.apache.paimon.flink.lookup.FileStoreLookupFunction;
@@ -60,7 +60,7 @@ import static org.apache.paimon.CoreOptions.LOG_SCAN_REMOVE_NORMALIZE;
  * org.apache.flink.connector.base.source.hybrid.HybridSource} of {@link StaticFileStoreSource} and
  * kafka log source created by {@link LogSourceProvider}.
  */
-public class TableStoreSource extends FlinkTableSource
+public class DataTableSource extends FlinkTableSource
         implements LookupTableSource, SupportsWatermarkPushDown {
 
     private final ObjectIdentifier tableIdentifier;
@@ -71,7 +71,7 @@ public class TableStoreSource extends FlinkTableSource
 
     @Nullable private WatermarkStrategy<RowData> watermarkStrategy;
 
-    public TableStoreSource(
+    public DataTableSource(
             ObjectIdentifier tableIdentifier,
             FileStoreTable table,
             boolean streaming,
@@ -89,7 +89,7 @@ public class TableStoreSource extends FlinkTableSource
                 null);
     }
 
-    private TableStoreSource(
+    private DataTableSource(
             ObjectIdentifier tableIdentifier,
             FileStoreTable table,
             boolean streaming,
@@ -135,7 +135,7 @@ public class TableStoreSource extends FlinkTableSource
             }
 
             // optimization: transaction consistency and all changelog mode avoid the generation of
-            // normalized nodes. See TableStoreSink.getChangelogMode validation.
+            // normalized nodes. See FlinkTableSink.getChangelogMode validation.
             return options.get(LOG_CONSISTENCY) == LogConsistency.TRANSACTIONAL
                             && options.get(LOG_CHANGELOG_MODE) == LogChangelogMode.ALL
                     ? ChangelogMode.all()
@@ -168,13 +168,13 @@ public class TableStoreSource extends FlinkTableSource
                                         .get(FlinkConnectorOptions.SCAN_PARALLELISM))
                         .withWatermarkStrategy(watermarkStrategy);
 
-        return new TableStoreDataStreamScanProvider(
+        return new PaimonDataStreamScanProvider(
                 !streaming, env -> sourceBuilder.withEnv(env).build());
     }
 
     @Override
     public DynamicTableSource copy() {
-        return new TableStoreSource(
+        return new DataTableSource(
                 tableIdentifier,
                 table,
                 streaming,
@@ -188,7 +188,7 @@ public class TableStoreSource extends FlinkTableSource
 
     @Override
     public String asSummaryString() {
-        return "TableStore-DataSource";
+        return "Paimon-DataSource";
     }
 
     @Override
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SystemTableSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SystemTableSource.java
index 94e2d968d..dda054fed 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SystemTableSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/source/SystemTableSource.java
@@ -86,6 +86,6 @@ public class SystemTableSource extends FlinkTableSource {
 
     @Override
     public String asSummaryString() {
-        return "TableStore-SystemTable-Source";
+        return "Paimon-SystemTable-Source";
     }
 }
diff --git a/paimon-flink/paimon-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory b/paimon-flink/paimon-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
index 0502da679..b4522f01a 100644
--- a/paimon-flink/paimon-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
+++ b/paimon-flink/paimon-flink-common/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
@@ -13,6 +13,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-org.apache.paimon.flink.TableStoreConnectorFactory
+org.apache.paimon.flink.FlinkTableFactory
 org.apache.paimon.flink.FlinkCatalogFactory
 org.apache.paimon.flink.kafka.KafkaLogStoreFactory
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AbstractTableStoreFactoryTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AbstractFlinkTableFactoryTest.java
similarity index 93%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AbstractTableStoreFactoryTest.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AbstractFlinkTableFactoryTest.java
index d88fd5b59..332c1bb9b 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AbstractTableStoreFactoryTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/AbstractFlinkTableFactoryTest.java
@@ -29,8 +29,8 @@ import java.util.Arrays;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Test for {@link AbstractTableStoreFactory}. */
-public class AbstractTableStoreFactoryTest {
+/** Test for {@link AbstractFlinkTableFactory}. */
+public class AbstractFlinkTableFactoryTest {
 
     @Test
     public void testSchemaEquals() {
@@ -55,6 +55,6 @@ public class AbstractTableStoreFactoryTest {
     }
 
     private void innerTest(RowType r1, RowType r2, boolean expectEquals) {
-        assertThat(AbstractTableStoreFactory.schemaEquals(r1, r2)).isEqualTo(expectEquals);
+        assertThat(AbstractFlinkTableFactory.schemaEquals(r1, r2)).isEqualTo(expectEquals);
     }
 }
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogModeTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogModeTest.java
index 3b8e255df..8f35a145f 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogModeTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogModeTest.java
@@ -24,8 +24,8 @@ import org.apache.flink.table.connector.ChangelogMode;
 import org.apache.paimon.CoreOptions;
 import org.apache.paimon.flink.kafka.KafkaLogStoreFactory;
 import org.apache.paimon.flink.log.LogStoreTableFactory;
-import org.apache.paimon.flink.sink.TableStoreSink;
-import org.apache.paimon.flink.source.TableStoreSource;
+import org.apache.paimon.flink.sink.FlinkTableSink;
+import org.apache.paimon.flink.source.DataTableSource;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
@@ -80,11 +80,11 @@ public class ChangelogModeTest {
                                 ""));
         FileStoreTable table = FileStoreTableFactory.create(LocalFileIO.create(), path);
 
-        TableStoreSource source =
-                new TableStoreSource(identifier, table, true, null, logStoreTableFactory);
+        DataTableSource source =
+                new DataTableSource(identifier, table, true, null, logStoreTableFactory);
         assertThat(source.getChangelogMode()).isEqualTo(expectSource);
 
-        TableStoreSink sink = new TableStoreSink(identifier, table, null, null);
+        FlinkTableSink sink = new FlinkTableSink(identifier, table, null, null);
         assertThat(sink.getChangelogMode(ChangelogMode.all())).isEqualTo(expectSink);
     }
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CreateTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CreateTableITCase.java
index 909905bb4..2050d20c3 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CreateTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/CreateTableITCase.java
@@ -37,7 +37,7 @@ import static org.assertj.core.api.AssertionsForClassTypes.assertThatThrownBy;
 import static org.junit.jupiter.params.provider.Arguments.arguments;
 
 /** IT cases for testing create managed table ddl. */
-public class CreateTableITCase extends TableStoreTestBase {
+public class CreateTableITCase extends FlinkTestBase {
 
     @Override
     public void prepareEnv(
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/DropTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/DropTableITCase.java
index 550d25a1b..44fbbe2d2 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/DropTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/DropTableITCase.java
@@ -36,7 +36,7 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
 import static org.junit.jupiter.params.provider.Arguments.arguments;
 
 /** IT cases for testing drop managed table ddl. */
-public class DropTableITCase extends TableStoreTestBase {
+public class DropTableITCase extends FlinkTestBase {
 
     @Override
     public void prepareEnv(
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/TableStoreTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FlinkTestBase.java
similarity index 99%
rename from paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/TableStoreTestBase.java
rename to paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FlinkTestBase.java
index 14426266e..0769dcfd9 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/TableStoreTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FlinkTestBase.java
@@ -50,7 +50,7 @@ import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
 /** End-to-end test base for paimon. */
-public abstract class TableStoreTestBase extends AbstractTestBase {
+public abstract class FlinkTestBase extends AbstractTestBase {
 
     public static final String CURRENT_CATALOG = "catalog";
     public static final String CURRENT_DATABASE = "default";
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ReadWriteTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ReadWriteTableITCase.java
index 1d823b378..df70ec588 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ReadWriteTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ReadWriteTableITCase.java
@@ -39,7 +39,7 @@ import org.apache.flink.table.types.logical.VarCharType;
 import org.apache.flink.types.Row;
 
 import org.apache.paimon.CoreOptions;
-import org.apache.paimon.flink.sink.TableStoreSink;
+import org.apache.paimon.flink.sink.FlinkTableSink;
 import org.apache.paimon.flink.util.AbstractTestBase;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
@@ -57,10 +57,10 @@ import java.util.Map;
 import java.util.UUID;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.paimon.flink.AbstractTableStoreFactory.buildFileStoreTable;
+import static org.apache.paimon.flink.AbstractFlinkTableFactory.buildFileStoreTable;
 import static org.apache.paimon.flink.FlinkConnectorOptions.SCAN_PARALLELISM;
 import static org.apache.paimon.flink.FlinkConnectorOptions.SINK_PARALLELISM;
-import static org.apache.paimon.flink.TableStoreTestBase.createResolvedTable;
+import static org.apache.paimon.flink.FlinkTestBase.createResolvedTable;
 import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.bEnv;
 import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.bExeEnv;
 import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.buildQuery;
@@ -1154,9 +1154,9 @@ public class ReadWriteTableITCase extends AbstractTestBase {
                 .createTable(FlinkCatalog.fromCatalogTable(context.getCatalogTable()));
 
         DynamicTableSink tableSink =
-                new TableStoreSink(
+                new FlinkTableSink(
                         context.getObjectIdentifier(), buildFileStoreTable(context), context, null);
-        assertThat(tableSink).isInstanceOf(TableStoreSink.class);
+        assertThat(tableSink).isInstanceOf(FlinkTableSink.class);
 
         // 2. get sink provider
         DynamicTableSink.SinkRuntimeProvider provider =
@@ -1169,7 +1169,7 @@ public class ReadWriteTableITCase extends AbstractTestBase {
                 bExeEnv.fromCollection(Collections.singletonList(GenericRowData.of()));
         DataStreamSink<?> sink = sinkProvider.consumeDataStream(null, mockSource);
         Transformation<?> transformation = sink.getTransformation();
-        // until a PartitionTransformation, see TableStore.SinkBuilder.build()
+        // until a PartitionTransformation, see FlinkSinkBuilder.build()
         while (!(transformation instanceof PartitionTransformation)) {
             assertThat(transformation.getParallelism()).isIn(1, expectedParallelism);
             transformation = transformation.getInputs().get(0);
diff --git a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
index 9ff6c3d39..286d9908d 100644
--- a/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
+++ b/paimon-hive/paimon-hive-catalog/src/main/java/org/apache/paimon/hive/HiveCatalog.java
@@ -72,9 +72,9 @@ public class HiveCatalog extends AbstractCatalog {
     // we don't include paimon-hive-connector as dependencies because it depends on
     // hive-exec
     private static final String INPUT_FORMAT_CLASS_NAME =
-            "org.apache.paimon.hive.mapred.TableStoreInputFormat";
+            "org.apache.paimon.hive.mapred.PaimonInputFormat";
     private static final String OUTPUT_FORMAT_CLASS_NAME =
-            "org.apache.paimon.hive.mapred.TableStoreOutputFormat";
+            "org.apache.paimon.hive.mapred.PaimonOutputFormat";
     private static final String SERDE_CLASS_NAME = "org.apache.paimon.hive.PaimonSerDe";
     private static final String STORAGE_HANDLER_CLASS_NAME =
             "org.apache.paimon.hive.PaimonStorageHandler";
@@ -162,7 +162,7 @@ public class HiveCatalog extends AbstractCatalog {
                     .filter(
                             tableName -> {
                                 Identifier identifier = new Identifier(databaseName, tableName);
-                                // the environment here may not be able to access non-TableStore
+                                // the environment here may not be able to access non-paimon
                                 // tables.
                                 // so we just check the schema file first
                                 return schemaFileExists(identifier)
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonMetaHook.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonMetaHook.java
index e27292382..1b8c8baa2 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonMetaHook.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonMetaHook.java
@@ -21,8 +21,8 @@ package org.apache.paimon.hive;
 import org.apache.hadoop.hive.metastore.HiveMetaHook;
 import org.apache.hadoop.hive.metastore.api.MetaException;
 import org.apache.hadoop.hive.metastore.api.Table;
-import org.apache.paimon.hive.mapred.TableStoreInputFormat;
-import org.apache.paimon.hive.mapred.TableStoreOutputFormat;
+import org.apache.paimon.hive.mapred.PaimonInputFormat;
+import org.apache.paimon.hive.mapred.PaimonOutputFormat;
 import org.apache.paimon.utils.Preconditions;
 
 /**
@@ -39,8 +39,8 @@ public class PaimonMetaHook implements HiveMetaHook {
                         + "with PARTITIONED BY clause. If you want to query from a partitioned table, "
                         + "please add partition columns into the ordinary table columns.");
 
-        table.getSd().setInputFormat(TableStoreInputFormat.class.getCanonicalName());
-        table.getSd().setOutputFormat(TableStoreOutputFormat.class.getCanonicalName());
+        table.getSd().setInputFormat(PaimonInputFormat.class.getCanonicalName());
+        table.getSd().setOutputFormat(PaimonOutputFormat.class.getCanonicalName());
     }
 
     @Override
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonSerDe.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonSerDe.java
index 2e4297352..5e2d45745 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonSerDe.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonSerDe.java
@@ -56,7 +56,7 @@ public class PaimonSerDe extends AbstractSerDe {
     @Override
     public Writable serialize(Object o, ObjectInspector objectInspector) throws SerDeException {
         throw new UnsupportedOperationException(
-                "TableStoreSerDe currently only supports deserialization.");
+                "PaimonSerDe currently only supports deserialization.");
     }
 
     @Override
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonStorageHandler.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonStorageHandler.java
index 37cf0cf4e..1ee77bc6e 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonStorageHandler.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/PaimonStorageHandler.java
@@ -32,8 +32,8 @@ import org.apache.hadoop.hive.serde2.Deserializer;
 import org.apache.hadoop.mapred.InputFormat;
 import org.apache.hadoop.mapred.JobConf;
 import org.apache.hadoop.mapred.OutputFormat;
-import org.apache.paimon.hive.mapred.TableStoreInputFormat;
-import org.apache.paimon.hive.mapred.TableStoreOutputFormat;
+import org.apache.paimon.hive.mapred.PaimonInputFormat;
+import org.apache.paimon.hive.mapred.PaimonOutputFormat;
 
 import java.util.Map;
 import java.util.Properties;
@@ -45,12 +45,12 @@ public class PaimonStorageHandler implements HiveStoragePredicateHandler, HiveSt
 
     @Override
     public Class<? extends InputFormat> getInputFormatClass() {
-        return TableStoreInputFormat.class;
+        return PaimonInputFormat.class;
     }
 
     @Override
     public Class<? extends OutputFormat> getOutputFormatClass() {
-        return TableStoreOutputFormat.class;
+        return PaimonOutputFormat.class;
     }
 
     @Override
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonInputFormat.java
similarity index 92%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonInputFormat.java
index 1712edfd4..50d2a8452 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonInputFormat.java
@@ -47,7 +47,7 @@ import java.util.Optional;
  * {@link InputFormat} for paimon. It divides all files into {@link InputSplit}s (one split per
  * bucket) and creates {@link RecordReader} for each split.
  */
-public class TableStoreInputFormat implements InputFormat<Void, RowDataContainer> {
+public class PaimonInputFormat implements InputFormat<Void, RowDataContainer> {
 
     @Override
     public InputSplit[] getSplits(JobConf jobConf, int numSplits) {
@@ -55,18 +55,18 @@ public class TableStoreInputFormat implements InputFormat<Void, RowDataContainer
         DataTableScan scan = table.newScan();
         createPredicate(table.schema(), jobConf).ifPresent(scan::withFilter);
         return scan.plan().splits.stream()
-                .map(split -> new TableStoreInputSplit(table.location().toString(), split))
-                .toArray(TableStoreInputSplit[]::new);
+                .map(split -> new PaimonInputSplit(table.location().toString(), split))
+                .toArray(PaimonInputSplit[]::new);
     }
 
     @Override
     public RecordReader<Void, RowDataContainer> getRecordReader(
             InputSplit inputSplit, JobConf jobConf, Reporter reporter) throws IOException {
         FileStoreTable table = createFileStoreTable(jobConf);
-        TableStoreInputSplit split = (TableStoreInputSplit) inputSplit;
+        PaimonInputSplit split = (PaimonInputSplit) inputSplit;
         ReadBuilder readBuilder = table.newReadBuilder();
         createPredicate(table.schema(), jobConf).ifPresent(readBuilder::withFilter);
-        return new TableStoreRecordReader(
+        return new PaimonRecordReader(
                 readBuilder,
                 split,
                 table.schema().fieldNames(),
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonInputSplit.java
similarity index 93%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonInputSplit.java
index a7fe4e6ef..99871d1e6 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputSplit.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonInputSplit.java
@@ -33,7 +33,7 @@ import java.util.Objects;
 /**
  * {@link FileSplit} for paimon. It contains all files to read from a certain partition and bucket.
  */
-public class TableStoreInputSplit extends FileSplit {
+public class PaimonInputSplit extends FileSplit {
 
     private static final String[] ANYWHERE = new String[] {"*"};
 
@@ -41,9 +41,9 @@ public class TableStoreInputSplit extends FileSplit {
     private DataSplit split;
 
     // public no-argument constructor for deserialization
-    public TableStoreInputSplit() {}
+    public PaimonInputSplit() {}
 
-    public TableStoreInputSplit(String path, DataSplit split) {
+    public PaimonInputSplit(String path, DataSplit split) {
         this.path = path;
         this.split = split;
     }
@@ -103,7 +103,7 @@ public class TableStoreInputSplit extends FileSplit {
         if (o == null || getClass() != o.getClass()) {
             return false;
         }
-        TableStoreInputSplit that = (TableStoreInputSplit) o;
+        PaimonInputSplit that = (PaimonInputSplit) o;
         return Objects.equals(path, that.path) && Objects.equals(split, that.split);
     }
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreOutputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonOutputFormat.java
similarity index 94%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreOutputFormat.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonOutputFormat.java
index b1119993d..5e33bc5df 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreOutputFormat.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonOutputFormat.java
@@ -28,7 +28,7 @@ import org.apache.paimon.data.InternalRow;
 import java.io.IOException;
 
 /** {@link OutputFormat} for table split. Currently useless. */
-public class TableStoreOutputFormat implements OutputFormat<InternalRow, InternalRow> {
+public class PaimonOutputFormat implements OutputFormat<InternalRow, InternalRow> {
 
     @Override
     public RecordWriter<InternalRow, InternalRow> getRecordWriter(
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonRecordReader.java
similarity index 95%
rename from paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
rename to paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonRecordReader.java
index 5485b620a..812f946d2 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreRecordReader.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/PaimonRecordReader.java
@@ -39,7 +39,7 @@ import java.util.List;
  * columnNames} this reader will still produce records of the original schema. However, columns not
  * in {@code selectedColumns} will be null.
  */
-public class TableStoreRecordReader implements RecordReader<Void, RowDataContainer> {
+public class PaimonRecordReader implements RecordReader<Void, RowDataContainer> {
 
     private final RecordReaderIterator<InternalRow> iterator;
     private final long splitLength;
@@ -48,9 +48,9 @@ public class TableStoreRecordReader implements RecordReader<Void, RowDataContain
 
     private float progress;
 
-    public TableStoreRecordReader(
+    public PaimonRecordReader(
             ReadBuilder readBuilder,
-            TableStoreInputSplit split,
+            PaimonInputSplit split,
             List<String> columnNames,
             List<String> selectedColumns)
             throws IOException {
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonRowDataObjectInspector.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonRowDataObjectInspector.java
index e9dc491ad..6d61daf80 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonRowDataObjectInspector.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/objectinspector/PaimonRowDataObjectInspector.java
@@ -35,8 +35,8 @@ import java.util.stream.Collectors;
 /** {@link StructObjectInspector} for {@link InternalRow}. */
 public class PaimonRowDataObjectInspector extends StructObjectInspector {
 
-    private final List<TableStoreStructField> structFields;
-    private final Map<String, TableStoreStructField> structFieldMap;
+    private final List<PaimonStructField> structFields;
+    private final Map<String, PaimonStructField> structFieldMap;
     private final String typeName;
 
     public PaimonRowDataObjectInspector(
@@ -48,8 +48,8 @@ public class PaimonRowDataObjectInspector extends StructObjectInspector {
         for (int i = 0; i < fieldNames.size(); i++) {
             String name = fieldNames.get(i);
             DataType logicalType = fieldTypes.get(i);
-            TableStoreStructField structField =
-                    new TableStoreStructField(
+            PaimonStructField structField =
+                    new PaimonStructField(
                             name,
                             PaimonObjectInspectorFactory.create(logicalType),
                             i,
@@ -84,7 +84,7 @@ public class PaimonRowDataObjectInspector extends StructObjectInspector {
     @Override
     public Object getStructFieldData(Object o, StructField structField) {
         InternalRow rowData = (InternalRow) o;
-        return ((TableStoreStructField) structField).fieldGetter.getFieldOrNull(rowData);
+        return ((PaimonStructField) structField).fieldGetter.getFieldOrNull(rowData);
     }
 
     @Override
@@ -105,7 +105,7 @@ public class PaimonRowDataObjectInspector extends StructObjectInspector {
         return Category.STRUCT;
     }
 
-    private static class TableStoreStructField implements StructField {
+    private static class PaimonStructField implements StructField {
 
         private final String name;
         private final ObjectInspector objectInspector;
@@ -113,7 +113,7 @@ public class PaimonRowDataObjectInspector extends StructObjectInspector {
         private final InternalRow.FieldGetter fieldGetter;
         private final String comment;
 
-        private TableStoreStructField(
+        private PaimonStructField(
                 String name,
                 ObjectInspector objectInspector,
                 int idx,
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/PaimonStorageHandlerITCase.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/PaimonStorageHandlerITCase.java
index 0278d0736..1430d5555 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/PaimonStorageHandlerITCase.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/PaimonStorageHandlerITCase.java
@@ -33,6 +33,7 @@ import org.apache.paimon.data.BinaryString;
 import org.apache.paimon.data.GenericRow;
 import org.apache.paimon.data.InternalRow;
 import org.apache.paimon.data.Timestamp;
+import org.apache.paimon.hive.mapred.PaimonInputFormat;
 import org.apache.paimon.hive.objectinspector.PaimonObjectInspectorFactory;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
@@ -61,10 +62,7 @@ import java.util.Map;
 import java.util.UUID;
 import java.util.concurrent.ThreadLocalRandom;
 
-/**
- * IT cases for {@link PaimonStorageHandler} and {@link
- * org.apache.paimon.hive.mapred.TableStoreInputFormat}.
- */
+/** IT cases for {@link PaimonStorageHandler} and {@link PaimonInputFormat}. */
 @RunWith(FlinkEmbeddedHiveRunner.class)
 public class PaimonStorageHandlerITCase {
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/PaimonInputSplitTest.java
similarity index 92%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/PaimonInputSplitTest.java
index e9a79b274..2c8574edb 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreInputSplitTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/PaimonInputSplitTest.java
@@ -35,8 +35,8 @@ import java.util.stream.Collectors;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link TableStoreInputSplit}. */
-public class TableStoreInputSplitTest {
+/** Tests for {@link PaimonInputSplit}. */
+public class PaimonInputSplitTest {
 
     @TempDir java.nio.file.Path tempDir;
 
@@ -50,8 +50,8 @@ public class TableStoreInputSplitTest {
         }
 
         BinaryRow wantedPartition = generated.get(0).partition;
-        TableStoreInputSplit split =
-                new TableStoreInputSplit(
+        PaimonInputSplit split =
+                new PaimonInputSplit(
                         tempDir.toString(),
                         new DataSplit(
                                 ThreadLocalRandom.current().nextLong(100),
@@ -70,7 +70,7 @@ public class TableStoreInputSplitTest {
 
         ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
         DataInputStream input = new DataInputStream(bais);
-        TableStoreInputSplit actual = new TableStoreInputSplit();
+        PaimonInputSplit actual = new PaimonInputSplit();
         actual.readFields(input);
         assertThat(actual).isEqualTo(split);
     }
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/PaimonRecordReaderTest.java
similarity index 92%
rename from paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java
rename to paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/PaimonRecordReaderTest.java
index 2053d670e..b23796647 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/PaimonRecordReaderTest.java
@@ -49,8 +49,8 @@ import java.util.UUID;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-/** Tests for {@link TableStoreRecordReader}. */
-public class TableStoreRecordReaderTest {
+/** Tests for {@link PaimonRecordReader}. */
+public class PaimonRecordReaderTest {
 
     @TempDir java.nio.file.Path tempDir;
     private String commitUser;
@@ -83,7 +83,7 @@ public class TableStoreRecordReaderTest {
         write.write(GenericRow.ofKind(RowKind.DELETE, 2L, BinaryString.fromString("Hello")));
         commit.commit(0, write.prepareCommit(true, 0));
 
-        TableStoreRecordReader reader = read(table, BinaryRow.EMPTY_ROW, 0);
+        PaimonRecordReader reader = read(table, BinaryRow.EMPTY_ROW, 0);
         RowDataContainer container = reader.createValue();
         Set<String> actual = new HashSet<>();
         while (reader.next(null, container)) {
@@ -122,7 +122,7 @@ public class TableStoreRecordReaderTest {
         write.write(GenericRow.of(1, BinaryString.fromString("Hi")));
         commit.commit(0, write.prepareCommit(true, 0));
 
-        TableStoreRecordReader reader = read(table, BinaryRow.EMPTY_ROW, 0);
+        PaimonRecordReader reader = read(table, BinaryRow.EMPTY_ROW, 0);
         RowDataContainer container = reader.createValue();
         Map<String, Integer> actual = new HashMap<>();
         while (reader.next(null, container)) {
@@ -160,8 +160,7 @@ public class TableStoreRecordReaderTest {
         write.write(GenericRow.of(1, 10L, BinaryString.fromString("Hi")));
         commit.commit(0, write.prepareCommit(true, 0));
 
-        TableStoreRecordReader reader =
-                read(table, BinaryRow.EMPTY_ROW, 0, Arrays.asList("c", "a"));
+        PaimonRecordReader reader = read(table, BinaryRow.EMPTY_ROW, 0, Arrays.asList("c", "a"));
         RowDataContainer container = reader.createValue();
         Map<String, Integer> actual = new HashMap<>();
         while (reader.next(null, container)) {
@@ -176,19 +175,19 @@ public class TableStoreRecordReaderTest {
         assertThat(actual).isEqualTo(expected);
     }
 
-    private TableStoreRecordReader read(FileStoreTable table, BinaryRow partition, int bucket)
+    private PaimonRecordReader read(FileStoreTable table, BinaryRow partition, int bucket)
             throws Exception {
         return read(table, partition, bucket, table.schema().fieldNames());
     }
 
-    private TableStoreRecordReader read(
+    private PaimonRecordReader read(
             FileStoreTable table, BinaryRow partition, int bucket, List<String> selectedColumns)
             throws Exception {
         for (DataSplit split : table.newScan().plan().splits) {
             if (split.partition().equals(partition) && split.bucket() == bucket) {
-                return new TableStoreRecordReader(
+                return new PaimonRecordReader(
                         table.newReadBuilder(),
-                        new TableStoreInputSplit(tempDir.toString(), split),
+                        new PaimonInputSplit(tempDir.toString(), split),
                         table.schema().fieldNames(),
                         selectedColumns);
             }


[incubator-paimon] 15/32: [core] Rename paimon CoreOptions

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit c3bc8a7baa39fb6a8c273c57bee6f1162f0e5f3e
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Fri Mar 17 14:19:24 2023 +0800

    [core] Rename paimon CoreOptions
---
 .../apache/{flink/table/store => paimon}/CoreOptions.java  |  2 +-
 .../java/org/apache/paimon/file/AbstractFileStore.java     |  2 +-
 .../java/org/apache/paimon/file/AppendOnlyFileStore.java   |  2 +-
 .../src/main/java/org/apache/paimon/file/FileStore.java    |  2 +-
 .../java/org/apache/paimon/file/KeyValueFileStore.java     |  2 +-
 .../org/apache/paimon/file/compact/NoopCompactManager.java |  2 +-
 .../main/java/org/apache/paimon/file/io/DataFileMeta.java  |  2 +-
 .../org/apache/paimon/file/mergetree/MergeTreeWriter.java  |  2 +-
 .../paimon/file/operation/AppendOnlyFileStoreWrite.java    |  2 +-
 .../paimon/file/operation/KeyValueFileStoreWrite.java      |  4 ++--
 .../apache/paimon/file/operation/MemoryFileStoreWrite.java |  4 ++--
 .../java/org/apache/paimon/file/schema/SchemaManager.java  |  2 +-
 .../org/apache/paimon/file/schema/SchemaValidation.java    | 12 ++++++------
 .../java/org/apache/paimon/file/schema/TableSchema.java    |  2 +-
 .../org/apache/paimon/file/utils/FileStorePathFactory.java |  2 +-
 .../java/org/apache/paimon/format/FileFormatDiscover.java  |  2 +-
 .../org/apache/paimon/table/AbstractFileStoreTable.java    |  4 ++--
 .../org/apache/paimon/table/AppendOnlyFileStoreTable.java  |  2 +-
 .../paimon/table/ChangelogValueCountFileStoreTable.java    |  2 +-
 .../paimon/table/ChangelogWithKeyFileStoreTable.java       |  4 ++--
 .../src/main/java/org/apache/paimon/table/DataTable.java   |  2 +-
 .../org/apache/paimon/table/FileStoreTableFactory.java     |  4 ++--
 .../java/org/apache/paimon/table/sink/BucketComputer.java  |  2 +-
 .../apache/paimon/table/source/AbstractDataTableScan.java  |  2 +-
 .../apache/paimon/table/source/BatchDataTableScanImpl.java |  2 +-
 .../apache/paimon/table/source/StreamDataTableScan.java    |  2 +-
 .../paimon/table/source/StreamDataTableScanImpl.java       |  2 +-
 .../table/source/snapshot/CompactedStartingScanner.java    |  2 +-
 .../snapshot/CompactionChangelogFollowUpScanner.java       |  2 +-
 .../snapshot/ContinuousFromSnapshotStartingScanner.java    |  2 +-
 .../snapshot/ContinuousFromTimestampStartingScanner.java   |  2 +-
 .../source/snapshot/ContinuousLatestStartingScanner.java   |  2 +-
 .../paimon/table/source/snapshot/DeltaFollowUpScanner.java |  2 +-
 .../paimon/table/source/snapshot/FullStartingScanner.java  |  2 +-
 .../source/snapshot/InputChangelogFollowUpScanner.java     |  2 +-
 .../table/source/snapshot/SnapshotSplitReaderImpl.java     |  2 +-
 .../source/snapshot/StaticFromSnapshotStartingScanner.java |  2 +-
 .../snapshot/StaticFromTimestampStartingScanner.java       |  2 +-
 .../java/org/apache/paimon/table/system/AuditLogTable.java |  2 +-
 .../java/org/apache/paimon/table/system/BucketsTable.java  |  2 +-
 .../{flink/table/store => paimon}/CoreOptionsTest.java     |  3 ++-
 .../test/java/org/apache/paimon/file/FileFormatTest.java   |  2 +-
 .../test/java/org/apache/paimon/file/TestFileStore.java    |  2 +-
 .../apache/paimon/file/append/AppendOnlyWriterTest.java    |  2 +-
 .../org/apache/paimon/file/io/DataFilePathFactoryTest.java |  2 +-
 .../apache/paimon/file/io/KeyValueFileReadWriteTest.java   |  2 +-
 .../org/apache/paimon/file/io/RollingFileWriterTest.java   |  2 +-
 .../apache/paimon/file/manifest/ManifestFileMetaTest.java  |  2 +-
 .../org/apache/paimon/file/manifest/ManifestFileTest.java  |  2 +-
 .../org/apache/paimon/file/manifest/ManifestListTest.java  |  2 +-
 .../org/apache/paimon/file/mergetree/LookupLevelsTest.java |  2 +-
 .../org/apache/paimon/file/mergetree/MergeTreeTest.java    |  4 ++--
 .../apache/paimon/file/operation/FileStoreCommitTest.java  |  2 +-
 .../paimon/file/operation/FileStoreExpireTestBase.java     |  2 +-
 .../apache/paimon/file/operation/PartitionExpireTest.java  |  6 +++---
 .../org/apache/paimon/file/schema/SchemaManagerTest.java   |  2 +-
 .../java/org/apache/paimon/file/schema/SchemaUtils.java    |  2 +-
 .../apache/paimon/file/utils/FileStorePathFactoryTest.java |  2 +-
 .../apache/paimon/table/AppendOnlyFileStoreTableTest.java  |  2 +-
 .../table/AppendOnlyTableColumnTypeFileDataTest.java       |  2 +-
 .../table/AppendOnlyTableColumnTypeFileMetaTest.java       |  2 +-
 .../paimon/table/AppendOnlyTableFileMetaFilterTest.java    |  2 +-
 .../table/ChangelogValueCountColumnTypeFileDataTest.java   |  2 +-
 .../table/ChangelogValueCountColumnTypeFileMetaTest.java   |  2 +-
 .../paimon/table/ChangelogValueCountFileDataTableTest.java |  2 +-
 .../table/ChangelogValueCountFileMetaFilterTest.java       |  2 +-
 .../table/ChangelogValueCountFileStoreTableTest.java       |  2 +-
 .../table/ChangelogWithKeyColumnTypeFileDataTest.java      |  2 +-
 .../paimon/table/ChangelogWithKeyFileDataTableTest.java    |  2 +-
 .../paimon/table/ChangelogWithKeyFileMetaFilterTest.java   |  2 +-
 .../paimon/table/ChangelogWithKeyFileStoreTableTest.java   |  4 ++--
 .../table/ChangelogWithKeyTableColumnTypeFileMetaTest.java |  2 +-
 .../apache/paimon/table/ColumnTypeFileDataTestBase.java    |  2 +-
 .../apache/paimon/table/ColumnTypeFileMetaTestBase.java    |  2 +-
 .../org/apache/paimon/table/FileStoreTableTestBase.java    | 14 +++++++-------
 .../apache/paimon/table/SchemaEvolutionTableTestBase.java  |  2 +-
 .../org/apache/paimon/table/WritePreemptMemoryTest.java    |  2 +-
 .../apache/paimon/table/sink/SinkRecordConverterTest.java  |  4 ++--
 .../java/org/apache/paimon/table/sink/TableWriteTest.java  |  2 +-
 .../paimon/table/source/StreamDataTableScanTest.java       |  2 +-
 .../snapshot/CompactionChangelogFollowUpScannerTest.java   |  2 +-
 .../source/snapshot/InputChangelogFollowUpScannerTest.java |  2 +-
 .../java/org/apache/paimon/benchmark/TableBenchmark.java   |  2 +-
 .../org/apache/paimon/benchmark/TableWriterBenchmark.java  |  2 +-
 .../org/apache/paimon/connector/BatchFileStoreITCase.java  |  2 +-
 .../org/apache/paimon/connector/BatchFileStoreITCase.java  |  2 +-
 .../apache/paimon/connector/AbstractTableStoreFactory.java |  8 ++++----
 .../java/org/apache/paimon/connector/FlinkCatalog.java     |  2 +-
 .../org/apache/paimon/connector/FlinkConnectorOptions.java |  2 +-
 .../paimon/connector/TableStoreConnectorFactory.java       |  4 ++--
 .../org/apache/paimon/connector/action/CompactAction.java  |  2 +-
 .../connector/kafka/KafkaLogSerializationSchema.java       |  2 +-
 .../paimon/connector/kafka/KafkaLogSinkProvider.java       |  4 ++--
 .../paimon/connector/kafka/KafkaLogSourceProvider.java     |  4 ++--
 .../paimon/connector/kafka/KafkaLogStoreFactory.java       | 10 +++++-----
 .../apache/paimon/connector/log/LogStoreTableFactory.java  |  4 ++--
 .../paimon/connector/lookup/FileStoreLookupFunction.java   |  2 +-
 .../paimon/connector/sink/FullChangelogStoreSinkWrite.java |  2 +-
 .../connector/sink/LookupChangelogStoreSinkWrite.java      |  2 +-
 .../apache/paimon/connector/sink/StoreCompactOperator.java |  2 +-
 .../org/apache/paimon/connector/sink/TableStoreSink.java   | 12 ++++++------
 .../apache/paimon/connector/source/FlinkSourceBuilder.java |  4 ++--
 .../apache/paimon/connector/source/TableStoreSource.java   | 14 +++++++-------
 .../org/apache/paimon/connector/BatchFileStoreITCase.java  |  2 +-
 .../org/apache/paimon/connector/ChangelogModeTest.java     |  2 +-
 .../java/org/apache/paimon/connector/FileStoreITCase.java  |  8 ++++----
 .../org/apache/paimon/connector/ForceCompactionITCase.java |  2 +-
 .../org/apache/paimon/connector/ReadWriteTableITCase.java  |  2 +-
 .../org/apache/paimon/connector/RescaleBucketITCase.java   |  2 +-
 .../StreamingReadWriteTableWithKafkaLogITCase.java         |  6 +++---
 .../paimon/connector/action/CompactActionITCase.java       |  2 +-
 .../paimon/connector/action/MergeIntoActionITCase.java     |  4 ++--
 .../paimon/connector/kafka/KafkaLogSerializationTest.java  |  2 +-
 .../apache/paimon/connector/kafka/KafkaLogTestUtils.java   |  8 ++++----
 .../paimon/connector/sink/CommitterOperatorTestBase.java   |  2 +-
 .../connector/source/TestChangelogDataReadWrite.java       |  2 +-
 .../paimon/connector/util/ReadWriteTableTestUtil.java      |  4 ++--
 .../src/main/java/org/apache/paimon/hive/HiveSchema.java   |  2 +-
 .../apache/paimon/hive/mapred/TableStoreInputFormat.java   |  2 +-
 .../java/org/apache/paimon/hive/FileStoreTestUtils.java    |  4 ++--
 .../paimon/hive/TableStoreHiveStorageHandlerITCase.java    |  2 +-
 .../paimon/hive/mapred/TableStoreRecordReaderTest.java     |  2 +-
 .../org/apache/paimon/spark/SimpleTableTestHelper.java     |  2 +-
 123 files changed, 179 insertions(+), 178 deletions(-)

diff --git a/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java b/flink-table-store-core/src/main/java/org/apache/paimon/CoreOptions.java
similarity index 99%
rename from flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
rename to flink-table-store-core/src/main/java/org/apache/paimon/CoreOptions.java
index e003edda6..e98e29277 100644
--- a/flink-table-store-core/src/main/java/org/apache/flink/table/store/CoreOptions.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/CoreOptions.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store;
+package org.apache.paimon;
 
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
index 5b52cc48a..40cf363ab 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/AbstractFileStore.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.manifest.ManifestFile;
 import org.apache.paimon.file.manifest.ManifestList;
 import org.apache.paimon.file.operation.FileStoreCommitImpl;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
index a62f59aa4..fa80f3a5d 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/AppendOnlyFileStore.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.operation.AppendOnlyFileStoreRead;
 import org.apache.paimon.file.operation.AppendOnlyFileStoreScan;
 import org.apache.paimon.file.operation.AppendOnlyFileStoreWrite;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/FileStore.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/FileStore.java
index 4c032ddcc..ff7d5ac91 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/FileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/FileStore.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.operation.FileStoreCommit;
 import org.apache.paimon.file.operation.FileStoreExpire;
 import org.apache.paimon.file.operation.FileStoreRead;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
index b8165e177..b5022ee9f 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/KeyValueFileStore.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.mergetree.compact.MergeFunctionFactory;
 import org.apache.paimon.file.operation.KeyValueFileStoreRead;
 import org.apache.paimon.file.operation.KeyValueFileStoreScan;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java
index d072fb52b..dae33fe10 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/compact/NoopCompactManager.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.compact;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.utils.Preconditions;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
index 9e52c4703..0937af438 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/io/DataFileMeta.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.stats.BinaryTableStats;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
 import org.apache.paimon.types.ArrayType;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
index 90d426ca1..425ea680c 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/mergetree/MergeTreeWriter.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
+import org.apache.paimon.CoreOptions.ChangelogProducer;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.compact.CompactManager;
 import org.apache.paimon.file.compact.CompactResult;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
index 48e4e225e..503a06cbd 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/AppendOnlyFileStoreWrite.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.append.AppendOnlyCompactManager;
 import org.apache.paimon.file.append.AppendOnlyWriter;
 import org.apache.paimon.file.compact.CompactManager;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
index 90e14f1bb..e9bc98378 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/KeyValueFileStoreWrite.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
+import org.apache.paimon.CoreOptions;
+import org.apache.paimon.CoreOptions.ChangelogProducer;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.compact.CompactManager;
 import org.apache.paimon.file.compact.NoopCompactManager;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
index 46efcc0f7..010d32b08 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/operation/MemoryFileStoreWrite.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.memory.HeapMemorySegmentPool;
 import org.apache.paimon.file.memory.MemoryOwner;
 import org.apache.paimon.file.memory.MemoryPoolFactory;
@@ -31,7 +31,7 @@ import org.apache.flink.shaded.guava30.com.google.common.collect.Iterators;
 import java.util.Iterator;
 import java.util.Map;
 
-import static org.apache.flink.table.store.CoreOptions.LOOKUP_CACHE_MAX_MEMORY_SIZE;
+import static org.apache.paimon.CoreOptions.LOOKUP_CACHE_MAX_MEMORY_SIZE;
 
 /**
  * Base {@link FileStoreWrite} implementation which supports using shared memory and preempting
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
index a3bc887c0..62d8ff3ba 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaManager.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.schema;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.casting.CastExecutors;
 import org.apache.paimon.file.operation.Lock;
 import org.apache.paimon.file.schema.SchemaChange.AddColumn;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java
index bf436280c..a3d9072a2 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/SchemaValidation.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.schema;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.types.ArrayType;
@@ -35,11 +35,11 @@ import java.util.Map;
 import java.util.Objects;
 import java.util.Optional;
 
-import static org.apache.flink.table.store.CoreOptions.SCAN_MODE;
-import static org.apache.flink.table.store.CoreOptions.SCAN_SNAPSHOT_ID;
-import static org.apache.flink.table.store.CoreOptions.SCAN_TIMESTAMP_MILLIS;
-import static org.apache.flink.table.store.CoreOptions.SNAPSHOT_NUM_RETAINED_MAX;
-import static org.apache.flink.table.store.CoreOptions.SNAPSHOT_NUM_RETAINED_MIN;
+import static org.apache.paimon.CoreOptions.SCAN_MODE;
+import static org.apache.paimon.CoreOptions.SCAN_SNAPSHOT_ID;
+import static org.apache.paimon.CoreOptions.SCAN_TIMESTAMP_MILLIS;
+import static org.apache.paimon.CoreOptions.SNAPSHOT_NUM_RETAINED_MAX;
+import static org.apache.paimon.CoreOptions.SNAPSHOT_NUM_RETAINED_MIN;
 import static org.apache.paimon.file.WriteMode.APPEND_ONLY;
 import static org.apache.paimon.file.schema.SystemColumns.KEY_FIELD_PREFIX;
 import static org.apache.paimon.file.schema.SystemColumns.SYSTEM_FIELD_NAMES;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java
index 89cff4b89..88be03940 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/schema/TableSchema.java
@@ -33,7 +33,7 @@ import java.util.Map;
 import java.util.Objects;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.CoreOptions.BUCKET_KEY;
+import static org.apache.paimon.CoreOptions.BUCKET_KEY;
 
 /**
  * Schema of a table. Unlike schema, it has more information than {@link Schema}, including schemaId
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
index 8848c3a4b..7de1faf98 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/file/utils/FileStorePathFactory.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.utils;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.options.ConfigOption;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/format/FileFormatDiscover.java b/flink-table-store-core/src/main/java/org/apache/paimon/format/FileFormatDiscover.java
index 1900e1f1b..4d762e89c 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/format/FileFormatDiscover.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/format/FileFormatDiscover.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.format;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 
 import java.util.HashMap;
 import java.util.Map;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
index 963d00666..5019c838e 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.FileStore;
 import org.apache.paimon.file.operation.FileStoreScan;
 import org.apache.paimon.file.predicate.Predicate;
@@ -45,7 +45,7 @@ import java.util.Objects;
 import java.util.Optional;
 import java.util.function.BiConsumer;
 
-import static org.apache.flink.table.store.CoreOptions.PATH;
+import static org.apache.paimon.CoreOptions.PATH;
 
 /** Abstract {@link FileStoreTable}. */
 public abstract class AbstractFileStoreTable implements FileStoreTable {
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
index 5a5a3d82a..309983835 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/AppendOnlyFileStoreTable.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.AppendOnlyFileStore;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.operation.AppendOnlyFileStoreRead;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
index 43a1841b8..1482b947f 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogValueCountFileStoreTable.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueFileStore;
 import org.apache.paimon.file.WriteMode;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
index 88cb33984..65ac2302e 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTable.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
+import org.apache.paimon.CoreOptions;
+import org.apache.paimon.CoreOptions.ChangelogProducer;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueFileStore;
 import org.apache.paimon.file.WriteMode;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java
index d2a4aeb80..8f210638c 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/DataTable.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.fs.FileIO;
 import org.apache.paimon.fs.Path;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
index 9acf5ce2a..85c65ad8b 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/FileStoreTableFactory.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.schema.SchemaManager;
@@ -30,7 +30,7 @@ import org.apache.paimon.options.Options;
 import java.io.IOException;
 import java.io.UncheckedIOException;
 
-import static org.apache.flink.table.store.CoreOptions.PATH;
+import static org.apache.paimon.CoreOptions.PATH;
 
 /** Factory to create {@link FileStoreTable}. */
 public class FileStoreTableFactory {
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
index dc01f32f5..aa78fcb88 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/sink/BucketComputer.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.Projection;
 import org.apache.paimon.file.schema.TableSchema;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
index f0e89828e..dc5dcb8cb 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/AbstractDataTableScan.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.operation.FileStoreScan;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
index 47dfd0e91..fc7f94ef3 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/BatchDataTableScanImpl.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.snapshot.SnapshotSplitReader;
 import org.apache.paimon.table.source.snapshot.StartingScanner;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
index deba51651..413ff2a8f 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScan.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.schema.TableSchema;
 import org.apache.paimon.table.DataTable;
 import org.apache.paimon.table.source.snapshot.FollowUpScanner;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
index ef9831f1d..e2d9f05c7 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/StreamDataTableScanImpl.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.snapshot.BoundedWatermarkFollowUpScanner;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
index 213c60067..e81f6a719 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactedStartingScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
index 99d4deac6..7a8e8a52e 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
index 864f6223e..4a21074c8 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromSnapshotStartingScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
index ffcc29539..83fe187e6 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousFromTimestampStartingScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
index 0a1882d93..cc8337d74 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/ContinuousLatestStartingScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
 
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
index be456313b..6274f1b9b 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/DeltaFollowUpScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
index e3741b895..4feee719d 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/FullStartingScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
index 46198ae98..e43fa3c05 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
index abffb2567..45ab00f43 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/SnapshotSplitReaderImpl.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.codegen.CodeGenUtils;
 import org.apache.flink.table.store.codegen.RecordComparator;
 import org.apache.paimon.file.Snapshot;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
index 776abf60c..4d8cd09ae 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromSnapshotStartingScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
index 70c0c0cba..08e7b4f7a 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/source/snapshot/StaticFromTimestampStartingScanner.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.table.source.DataTableScan;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
index a6d7acf7e..33ba6e03f 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/AuditLogTable.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.system;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.LeafPredicate;
 import org.apache.paimon.file.predicate.Predicate;
diff --git a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
index f2de5d338..b5dc50827 100644
--- a/flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
+++ b/flink-table-store-core/src/main/java/org/apache/paimon/table/system/BucketsTable.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.system;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.DataFileMetaSerializer;
 import org.apache.paimon.file.predicate.Predicate;
diff --git a/flink-table-store-core/src/test/java/org/apache/flink/table/store/CoreOptionsTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/CoreOptionsTest.java
similarity index 97%
rename from flink-table-store-core/src/test/java/org/apache/flink/table/store/CoreOptionsTest.java
rename to flink-table-store-core/src/test/java/org/apache/paimon/CoreOptionsTest.java
index e63f71dc8..aeae2dc38 100644
--- a/flink-table-store-core/src/test/java/org/apache/flink/table/store/CoreOptionsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/CoreOptionsTest.java
@@ -16,8 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.flink.table.store;
+package org.apache.paimon;
 
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.options.Options;
 
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/FileFormatTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
index a858eb32b..55ea58840 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/FileFormatTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.PositionOutputStream;
 import org.apache.paimon.fs.local.LocalFileIO;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/TestFileStore.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/TestFileStore.java
index 160d865ea..be9edd2f6 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/TestFileStore.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/TestFileStore.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.manifest.ManifestCommittable;
 import org.apache.paimon.file.manifest.ManifestEntry;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
index 90ffebc1b..a3d334b37 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/append/AppendOnlyWriterTest.java
@@ -19,7 +19,7 @@
 
 package org.apache.paimon.file.append;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.file.stats.FieldStatsArraySerializer;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
index 9319260e7..46e3da90e 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/DataFilePathFactoryTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.fs.Path;
 
 import org.junit.jupiter.api.Test;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
index f410200c3..b7404f04a 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/KeyValueFileReadWriteTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.KeyValueSerializerTest;
 import org.apache.paimon.file.TestKeyValueGenerator;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
index 920c2b489..6dbbfad1e 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/io/RollingFileWriterTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.io;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.fs.local.LocalFileIO;
 import org.apache.paimon.options.Options;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
index 9556371b9..d271fd1e1 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileMetaTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.manifest;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.stats.StatsTestUtils;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
index cc9ccea44..de32b5f42 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestFileTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.manifest;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.stats.StatsTestUtils;
 import org.apache.paimon.file.utils.FailingFileIO;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
index c4d77161c..72bb0a526 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/manifest/ManifestListTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.manifest;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.TestKeyValueGenerator;
 import org.apache.paimon.file.utils.FailingFileIO;
 import org.apache.paimon.file.utils.FileStorePathFactory;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
index 367726f47..87723cba4 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/LookupLevelsTest.java
@@ -57,7 +57,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.UUID;
 
-import static org.apache.flink.table.store.CoreOptions.TARGET_FILE_SIZE;
+import static org.apache.paimon.CoreOptions.TARGET_FILE_SIZE;
 import static org.apache.paimon.file.KeyValue.UNKNOWN_SEQUENCE;
 import static org.apache.paimon.file.io.DataFileTestUtils.row;
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
index dab7d71cb..2e461c54f 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/mergetree/MergeTreeTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.file.mergetree;
 
-import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
+import org.apache.paimon.CoreOptions;
+import org.apache.paimon.CoreOptions.ChangelogProducer;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.compact.CompactResult;
 import org.apache.paimon.file.format.FlushingFileFormat;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
index da451035d..79c55dec4 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreCommitTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.TestFileStore;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
index 70c6c980d..5931f49aa 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/FileStoreExpireTestBase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.KeyValue;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.TestFileStore;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
index e6b8b7381..a3cbaaa7a 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/operation/PartitionExpireTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.operation;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.schema.Schema;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.fs.Path;
@@ -46,8 +46,8 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.flink.table.store.CoreOptions.PARTITION_EXPIRATION_TIME;
-import static org.apache.flink.table.store.CoreOptions.WRITE_ONLY;
+import static org.apache.paimon.CoreOptions.PARTITION_EXPIRATION_TIME;
+import static org.apache.paimon.CoreOptions.WRITE_ONLY;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
index f589f5581..ec8bd74bd 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaManagerTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.schema;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.utils.FailingFileIO;
 import org.apache.paimon.fs.FileIOFinder;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java
index ad19b492b..fb36490e0 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/schema/SchemaUtils.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.schema;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.types.DataField;
 import org.apache.paimon.types.RowType;
 import org.apache.paimon.utils.Preconditions;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
index 688d1d8ab..ad147b6ea 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/file/utils/FileStorePathFactoryTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.file.utils;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.fs.Path;
 import org.apache.paimon.types.DataType;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
index 702f5bbbb..3eb9687c3 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyFileStoreTableTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
index 2af7faa0a..3761e68e4 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileDataTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
index 5c526ed40..541ff18e2 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableColumnTypeFileMetaTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.schema.SchemaManager;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
index 5b2055884..6dc8de043 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/AppendOnlyTableFileMetaFilterTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.schema.SchemaManager;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
index 57c5e9c6e..c64de5cdc 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileDataTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
index 8ec307aec..a21d1e285 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountColumnTypeFileMetaTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.schema.SchemaManager;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
index 6be2290c6..aead380ec 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileDataTableTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.paimon.file.schema.TableSchema;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
index 8ae938a78..db929ab93 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileMetaFilterTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.schema.SchemaManager;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
index 16fe2758e..400c81567 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogValueCountFileStoreTableTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.io.DataFilePathFactory;
 import org.apache.paimon.file.operation.ScanKind;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
index 70d1cb358..2c391bbfb 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyColumnTypeFileDataTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
index b817fb441..b5e229fbc 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileDataTableTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.PredicateBuilder;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
index 7e6df5b47..73737358b 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileMetaFilterTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
index ac3c340ef..e691d734d 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyFileStoreTableTest.java
@@ -18,8 +18,8 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
+import org.apache.paimon.CoreOptions;
+import org.apache.paimon.CoreOptions.ChangelogProducer;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.operation.ScanKind;
 import org.apache.paimon.file.predicate.Predicate;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
index e651fb612..9a6344bb1 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ChangelogWithKeyTableColumnTypeFileMetaTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
index d8d92c4ce..0dc98be76 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileDataTestBase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
 import org.apache.paimon.table.source.Split;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
index dfe969fd0..26de521ea 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/ColumnTypeFileMetaTestBase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateBuilder;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
index 9f3ba1455..42db70fc8 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/FileStoreTableTestBase.java
@@ -70,13 +70,13 @@ import java.util.function.Function;
 import java.util.function.Predicate;
 import java.util.stream.Collectors;
 
-import static org.apache.flink.table.store.CoreOptions.BUCKET;
-import static org.apache.flink.table.store.CoreOptions.BUCKET_KEY;
-import static org.apache.flink.table.store.CoreOptions.COMPACTION_MAX_FILE_NUM;
-import static org.apache.flink.table.store.CoreOptions.FILE_FORMAT;
-import static org.apache.flink.table.store.CoreOptions.SNAPSHOT_NUM_RETAINED_MAX;
-import static org.apache.flink.table.store.CoreOptions.SNAPSHOT_NUM_RETAINED_MIN;
-import static org.apache.flink.table.store.CoreOptions.WRITE_ONLY;
+import static org.apache.paimon.CoreOptions.BUCKET;
+import static org.apache.paimon.CoreOptions.BUCKET_KEY;
+import static org.apache.paimon.CoreOptions.COMPACTION_MAX_FILE_NUM;
+import static org.apache.paimon.CoreOptions.FILE_FORMAT;
+import static org.apache.paimon.CoreOptions.SNAPSHOT_NUM_RETAINED_MAX;
+import static org.apache.paimon.CoreOptions.SNAPSHOT_NUM_RETAINED_MIN;
+import static org.apache.paimon.CoreOptions.WRITE_ONLY;
 import static org.assertj.core.api.Assertions.assertThat;
 
 /** Base test class for {@link FileStoreTable}. */
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
index 151ccd6b7..968e1166f 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/SchemaEvolutionTableTestBase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.io.DataFileMeta;
 import org.apache.paimon.file.mergetree.compact.ConcatRecordReader;
 import org.apache.paimon.file.schema.Schema;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
index 49c733e9d..5ff6a8f0a 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/WritePreemptMemoryTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.WriteMode;
 import org.apache.paimon.file.schema.Schema;
 import org.apache.paimon.file.schema.SchemaManager;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
index f18076327..f3c83c4c7 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/SinkRecordConverterTest.java
@@ -33,8 +33,8 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import static org.apache.flink.table.store.CoreOptions.BUCKET;
-import static org.apache.flink.table.store.CoreOptions.BUCKET_KEY;
+import static org.apache.paimon.CoreOptions.BUCKET;
+import static org.apache.paimon.CoreOptions.BUCKET_KEY;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
 
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
index 598c2e3b9..c4b35972a 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/sink/TableWriteTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.sink;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.operation.AbstractFileStoreWrite;
 import org.apache.paimon.file.schema.Schema;
 import org.apache.paimon.file.schema.SchemaManager;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
index 63f434e15..b7cebe3b5 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/StreamDataTableScanTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.sink.StreamTableCommit;
 import org.apache.paimon.table.sink.StreamTableWrite;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
index 76bcf29fa..53c804168 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/CompactionChangelogFollowUpScannerTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.options.Options;
diff --git a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
index 52ce68184..91da04bf8 100644
--- a/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
+++ b/flink-table-store-core/src/test/java/org/apache/paimon/table/source/snapshot/InputChangelogFollowUpScannerTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.table.source.snapshot;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.Snapshot;
 import org.apache.paimon.file.utils.SnapshotManager;
 import org.apache.paimon.options.Options;
diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
index d91d7696a..701916f71 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableBenchmark.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.benchmark;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.paimon.file.catalog.Catalog;
 import org.apache.paimon.file.catalog.CatalogFactory;
diff --git a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
index 1419cc368..0d1f83c5b 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
+++ b/paimon-benchmark/paimon-micro-benchmarks/src/test/java/org/apache/paimon/benchmark/TableWriterBenchmark.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.benchmark;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.sink.CommitMessage;
 import org.apache.paimon.table.sink.StreamTableCommit;
diff --git a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
index d17d68dc5..84b65f3f1 100644
--- a/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.14/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.types.Row;
 
 import org.junit.Test;
diff --git a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
index d17d68dc5..84b65f3f1 100644
--- a/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-1.15/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.types.Row;
 
 import org.junit.Test;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
index e716086b5..15210d807 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/AbstractTableStoreFactory.java
@@ -28,8 +28,8 @@ import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.factories.DynamicTableSinkFactory;
 import org.apache.flink.table.factories.DynamicTableSourceFactory;
-import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
-import org.apache.flink.table.store.CoreOptions.LogConsistency;
+import org.apache.paimon.CoreOptions.LogChangelogMode;
+import org.apache.paimon.CoreOptions.LogConsistency;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.paimon.file.schema.Schema;
 import org.apache.paimon.file.schema.TableSchema;
@@ -52,8 +52,8 @@ import java.util.Map;
 import java.util.Optional;
 import java.util.Set;
 
-import static org.apache.flink.table.store.CoreOptions.LOG_CHANGELOG_MODE;
-import static org.apache.flink.table.store.CoreOptions.LOG_CONSISTENCY;
+import static org.apache.paimon.CoreOptions.LOG_CHANGELOG_MODE;
+import static org.apache.paimon.CoreOptions.LOG_CONSISTENCY;
 import static org.apache.paimon.connector.FlinkConnectorOptions.LOG_SYSTEM;
 import static org.apache.paimon.connector.FlinkConnectorOptions.NONE;
 import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
index 999a10f1e..3c9291962 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkCatalog.java
@@ -62,7 +62,7 @@ import java.util.Optional;
 
 import static org.apache.flink.table.descriptors.Schema.SCHEMA;
 import static org.apache.flink.table.factories.FactoryUtil.CONNECTOR;
-import static org.apache.flink.table.store.CoreOptions.PATH;
+import static org.apache.paimon.CoreOptions.PATH;
 import static org.apache.flink.table.types.utils.TypeConversions.fromLogicalToDataType;
 import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
 import static org.apache.paimon.connector.LogicalTypeConversion.toLogicalType;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
index 66d34b21b..bc1b75a44 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/FlinkConnectorOptions.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.options.ConfigOption;
 import org.apache.paimon.options.ConfigOptions;
 import org.apache.paimon.options.description.Description;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
index 03ba38824..d81706c4f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/TableStoreConnectorFactory.java
@@ -23,7 +23,7 @@ import org.apache.flink.table.connector.sink.DynamicTableSink;
 import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.factories.FactoryUtil;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.catalog.CatalogLock;
 import org.apache.paimon.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.FileIO;
@@ -34,7 +34,7 @@ import org.apache.paimon.connector.sink.TableStoreSink;
 
 import javax.annotation.Nullable;
 
-import static org.apache.flink.table.store.CoreOptions.AUTO_CREATE;
+import static org.apache.paimon.CoreOptions.AUTO_CREATE;
 import static org.apache.paimon.connector.FlinkCatalogFactory.IDENTIFIER;
 
 /** A table store {@link DynamicTableFactory} to create source and sink. */
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
index 72764f3a2..86dd7f30d 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/action/CompactAction.java
@@ -26,7 +26,7 @@ import org.apache.flink.configuration.ReadableConfig;
 import org.apache.flink.streaming.api.datastream.DataStreamSource;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java
index 26d1c332e..9571771d7 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSerializationSchema.java
@@ -22,7 +22,7 @@ import org.apache.flink.api.common.serialization.SerializationSchema;
 import org.apache.flink.connector.kafka.sink.KafkaRecordSerializationSchema;
 import org.apache.flink.streaming.connectors.kafka.KafkaSerializationSchema;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
+import org.apache.paimon.CoreOptions.LogChangelogMode;
 import org.apache.paimon.table.sink.SinkRecord;
 import org.apache.paimon.types.RowKind;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
index 21c1b6e9f..bfd922219 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSinkProvider.java
@@ -21,8 +21,8 @@ package org.apache.paimon.connector.kafka;
 import org.apache.flink.api.common.serialization.SerializationSchema;
 import org.apache.flink.streaming.connectors.kafka.FlinkKafkaProducer.Semantic;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
-import org.apache.flink.table.store.CoreOptions.LogConsistency;
+import org.apache.paimon.CoreOptions.LogChangelogMode;
+import org.apache.paimon.CoreOptions.LogConsistency;
 
 import org.apache.paimon.annotation.VisibleForTesting;
 import org.apache.paimon.connector.log.LogSinkProvider;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
index 1854dd105..d76d5c463 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogSourceProvider.java
@@ -23,8 +23,8 @@ import org.apache.flink.connector.kafka.source.KafkaSource;
 import org.apache.flink.connector.kafka.source.enumerator.initializer.OffsetsInitializer;
 import org.apache.flink.connector.kafka.source.reader.deserializer.KafkaRecordDeserializationSchema;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.CoreOptions.LogConsistency;
-import org.apache.flink.table.store.CoreOptions.StartupMode;
+import org.apache.paimon.CoreOptions.LogConsistency;
+import org.apache.paimon.CoreOptions.StartupMode;
 import org.apache.flink.table.types.DataType;
 
 import org.apache.kafka.common.TopicPartition;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
index 470a62798..4dca24a2f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/kafka/KafkaLogStoreFactory.java
@@ -29,7 +29,7 @@ import org.apache.flink.table.connector.sink.DynamicTableSink;
 import org.apache.flink.table.connector.source.DynamicTableSource;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.factories.FactoryUtil;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.options.Options;
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.table.types.utils.DataTypeUtils;
@@ -45,10 +45,10 @@ import java.util.Properties;
 import java.util.Set;
 
 import static org.apache.flink.table.factories.FactoryUtil.createTableFactoryHelper;
-import static org.apache.flink.table.store.CoreOptions.LOG_CHANGELOG_MODE;
-import static org.apache.flink.table.store.CoreOptions.LOG_CONSISTENCY;
-import static org.apache.flink.table.store.CoreOptions.LogConsistency;
-import static org.apache.flink.table.store.CoreOptions.SCAN_TIMESTAMP_MILLIS;
+import static org.apache.paimon.CoreOptions.LOG_CHANGELOG_MODE;
+import static org.apache.paimon.CoreOptions.LOG_CONSISTENCY;
+import static org.apache.paimon.CoreOptions.LogConsistency;
+import static org.apache.paimon.CoreOptions.SCAN_TIMESTAMP_MILLIS;
 import static org.apache.kafka.clients.consumer.ConsumerConfig.ISOLATION_LEVEL_CONFIG;
 import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
 
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogStoreTableFactory.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogStoreTableFactory.java
index 4dd8529f4..e24dbbe49 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogStoreTableFactory.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/log/LogStoreTableFactory.java
@@ -40,8 +40,8 @@ import org.apache.flink.types.RowKind;
 
 import javax.annotation.Nullable;
 
-import static org.apache.flink.table.store.CoreOptions.LOG_FORMAT;
-import static org.apache.flink.table.store.CoreOptions.LOG_KEY_FORMAT;
+import static org.apache.paimon.CoreOptions.LOG_FORMAT;
+import static org.apache.paimon.CoreOptions.LOG_KEY_FORMAT;
 
 /**
  * Base interface for configuring a default log table connector. The log table is used by managed
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
index da63f9bc4..5a64280f2 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/lookup/FileStoreLookupFunction.java
@@ -22,7 +22,7 @@ import org.apache.flink.streaming.api.operators.StreamingRuntimeContext;
 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.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.file.predicate.PredicateFilter;
 import org.apache.paimon.file.schema.TableSchema;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
index c70f42073..4877f1294 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/FullChangelogStoreSinkWrite.java
@@ -29,7 +29,7 @@ import org.apache.flink.api.java.typeutils.runtime.TupleSerializer;
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.runtime.state.StateSnapshotContext;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.utils.SnapshotManager;
 import org.apache.paimon.table.FileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java
index 6a57b2763..390697623 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/LookupChangelogStoreSinkWrite.java
@@ -20,7 +20,7 @@ package org.apache.paimon.connector.sink;
 
 import org.apache.flink.runtime.io.disk.iomanager.IOManager;
 import org.apache.flink.runtime.state.StateInitializationContext;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.table.FileStoreTable;
 
 import java.io.IOException;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
index ec91e7625..ab85c6f13 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/StoreCompactOperator.java
@@ -21,7 +21,7 @@ package org.apache.paimon.connector.sink;
 import org.apache.flink.runtime.state.StateInitializationContext;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.table.data.RowData;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.io.DataFileMetaSerializer;
 import org.apache.flink.table.store.file.utils.OffsetRow;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
index f433a26b7..b44869324 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/sink/TableStoreSink.java
@@ -25,9 +25,9 @@ import org.apache.flink.table.connector.sink.DynamicTableSink;
 import org.apache.flink.table.connector.sink.abilities.SupportsOverwrite;
 import org.apache.flink.table.connector.sink.abilities.SupportsPartitioning;
 import org.apache.flink.table.factories.DynamicTableFactory;
-import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
-import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
-import org.apache.flink.table.store.CoreOptions.MergeEngine;
+import org.apache.paimon.CoreOptions.ChangelogProducer;
+import org.apache.paimon.CoreOptions.LogChangelogMode;
+import org.apache.paimon.CoreOptions.MergeEngine;
 import org.apache.flink.table.store.file.catalog.CatalogLock;
 import org.apache.flink.table.store.file.operation.Lock;
 import org.apache.paimon.options.Options;
@@ -48,9 +48,9 @@ import javax.annotation.Nullable;
 import java.util.HashMap;
 import java.util.Map;
 
-import static org.apache.flink.table.store.CoreOptions.CHANGELOG_PRODUCER;
-import static org.apache.flink.table.store.CoreOptions.LOG_CHANGELOG_MODE;
-import static org.apache.flink.table.store.CoreOptions.MERGE_ENGINE;
+import static org.apache.paimon.CoreOptions.CHANGELOG_PRODUCER;
+import static org.apache.paimon.CoreOptions.LOG_CHANGELOG_MODE;
+import static org.apache.paimon.CoreOptions.MERGE_ENGINE;
 
 /** Table sink to create sink. */
 public class TableStoreSink implements DynamicTableSink, SupportsOverwrite, SupportsPartitioning {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
index 8b51d532b..450c48aca 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/FlinkSourceBuilder.java
@@ -27,8 +27,8 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.catalog.ObjectIdentifier;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
-import org.apache.flink.table.store.CoreOptions;
-import org.apache.flink.table.store.CoreOptions.StartupMode;
+import org.apache.paimon.CoreOptions;
+import org.apache.paimon.CoreOptions.StartupMode;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
index a234808fd..fcc9557dd 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/connector/source/TableStoreSource.java
@@ -26,9 +26,9 @@ import org.apache.flink.table.connector.source.LookupTableSource;
 import org.apache.flink.table.connector.source.abilities.SupportsWatermarkPushDown;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.factories.DynamicTableFactory;
-import org.apache.flink.table.store.CoreOptions.ChangelogProducer;
-import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
-import org.apache.flink.table.store.CoreOptions.LogConsistency;
+import org.apache.paimon.CoreOptions.ChangelogProducer;
+import org.apache.paimon.CoreOptions.LogChangelogMode;
+import org.apache.paimon.CoreOptions.LogConsistency;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.AppendOnlyFileStoreTable;
@@ -48,10 +48,10 @@ import javax.annotation.Nullable;
 
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.CoreOptions.CHANGELOG_PRODUCER;
-import static org.apache.flink.table.store.CoreOptions.LOG_CHANGELOG_MODE;
-import static org.apache.flink.table.store.CoreOptions.LOG_CONSISTENCY;
-import static org.apache.flink.table.store.CoreOptions.LOG_SCAN_REMOVE_NORMALIZE;
+import static org.apache.paimon.CoreOptions.CHANGELOG_PRODUCER;
+import static org.apache.paimon.CoreOptions.LOG_CHANGELOG_MODE;
+import static org.apache.paimon.CoreOptions.LOG_CONSISTENCY;
+import static org.apache.paimon.CoreOptions.LOG_SCAN_REMOVE_NORMALIZE;
 
 /**
  * Table source to create {@link StaticFileStoreSource} or {@link ContinuousFileStoreSource} under
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
index 6d6bd1766..eb6f367da 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/BatchFileStoreITCase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.types.Row;
 
 import org.junit.jupiter.api.Test;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
index 13dd540d3..7d9dc3856 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ChangelogModeTest.java
@@ -20,7 +20,7 @@ package org.apache.paimon.connector;
 
 import org.apache.flink.table.catalog.ObjectIdentifier;
 import org.apache.flink.table.connector.ChangelogMode;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
index 614b10607..7e871e581 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/FileStoreITCase.java
@@ -32,7 +32,7 @@ import org.apache.flink.table.data.conversion.DataStructureConverter;
 import org.apache.flink.table.data.conversion.DataStructureConverters;
 import org.apache.flink.table.runtime.typeutils.InternalSerializers;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
@@ -73,9 +73,9 @@ import java.util.concurrent.ThreadLocalRandom;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import static org.apache.flink.table.store.CoreOptions.BUCKET;
-import static org.apache.flink.table.store.CoreOptions.FILE_FORMAT;
-import static org.apache.flink.table.store.CoreOptions.PATH;
+import static org.apache.paimon.CoreOptions.BUCKET;
+import static org.apache.paimon.CoreOptions.FILE_FORMAT;
+import static org.apache.paimon.CoreOptions.PATH;
 import static org.apache.flink.table.store.file.utils.FailingFileIO.retryArtificialException;
 import static org.apache.paimon.connector.LogicalTypeConversion.toDataType;
 import static org.assertj.core.api.Assertions.assertThat;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
index 044dd3c8a..335474950 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ForceCompactionITCase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.flink.table.store.file.manifest.ManifestFileMeta;
 import org.apache.flink.table.store.file.manifest.ManifestList;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
index d580e3144..9f7fd0d4c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/ReadWriteTableITCase.java
@@ -33,7 +33,7 @@ import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.factories.DynamicTableFactory;
 import org.apache.flink.table.factories.FactoryUtil;
 import org.apache.flink.table.runtime.connector.sink.SinkRuntimeProviderContext;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.table.store.fs.Path;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
index 4f4e315b8..bed1a7fc6 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/RescaleBucketITCase.java
@@ -36,7 +36,7 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.concurrent.ExecutionException;
 
-import static org.apache.flink.table.store.CoreOptions.BUCKET;
+import static org.apache.paimon.CoreOptions.BUCKET;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
index 9b09442d0..324c1a677 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/StreamingReadWriteTableWithKafkaLogITCase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
@@ -34,8 +34,8 @@ import java.util.List;
 import java.util.Map;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.flink.table.store.CoreOptions.SCAN_MODE;
-import static org.apache.flink.table.store.CoreOptions.SCAN_TIMESTAMP_MILLIS;
+import static org.apache.paimon.CoreOptions.SCAN_MODE;
+import static org.apache.paimon.CoreOptions.SCAN_TIMESTAMP_MILLIS;
 import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.SCAN_LATEST;
 import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.assertNoMoreRecords;
 import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildQuery;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
index fbd028c58..b3a8e27ea 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/CompactActionITCase.java
@@ -22,7 +22,7 @@ import org.apache.flink.api.common.RuntimeExecutionMode;
 import org.apache.flink.core.execution.JobClient;
 import org.apache.flink.streaming.api.CheckpointingMode;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.Snapshot;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.source.DataSplit;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
index 4f448329e..e4bb583be 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/action/MergeIntoActionITCase.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.connector.action;
 
 import org.apache.flink.table.planner.factories.TestValuesTableFactory;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 
@@ -35,7 +35,7 @@ import java.util.HashMap;
 import java.util.List;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.changelogRow;
-import static org.apache.flink.table.store.CoreOptions.CHANGELOG_PRODUCER;
+import static org.apache.paimon.CoreOptions.CHANGELOG_PRODUCER;
 import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildDdl;
 import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.buildSimpleQuery;
 import static org.apache.paimon.connector.util.ReadWriteTableTestUtil.createTable;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogSerializationTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogSerializationTest.java
index 3ecb9db4a..0ab64d246 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogSerializationTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogSerializationTest.java
@@ -21,7 +21,7 @@ package org.apache.paimon.connector.kafka;
 import org.apache.flink.connector.kafka.source.reader.deserializer.KafkaRecordDeserializationSchema;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.factories.DynamicTableFactory;
-import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
+import org.apache.paimon.CoreOptions.LogChangelogMode;
 import org.apache.paimon.table.sink.SinkRecord;
 import org.apache.paimon.types.RowKind;
 import org.apache.flink.util.Collector;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
index c89e98e45..e73b5bf98 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/kafka/KafkaLogTestUtils.java
@@ -34,8 +34,8 @@ import org.apache.flink.table.factories.FactoryUtil;
 import org.apache.flink.table.runtime.connector.sink.SinkRuntimeProviderContext;
 import org.apache.flink.table.runtime.connector.source.ScanRuntimeProviderContext;
 import org.apache.flink.table.runtime.typeutils.InternalTypeInfo;
-import org.apache.flink.table.store.CoreOptions.LogChangelogMode;
-import org.apache.flink.table.store.CoreOptions.LogConsistency;
+import org.apache.paimon.CoreOptions.LogChangelogMode;
+import org.apache.paimon.CoreOptions.LogConsistency;
 import org.apache.paimon.table.sink.SinkRecord;
 import org.apache.paimon.types.RowKind;
 import org.apache.flink.table.types.DataType;
@@ -56,8 +56,8 @@ import java.util.UUID;
 import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 
-import static org.apache.flink.table.store.CoreOptions.LOG_CHANGELOG_MODE;
-import static org.apache.flink.table.store.CoreOptions.LOG_CONSISTENCY;
+import static org.apache.paimon.CoreOptions.LOG_CHANGELOG_MODE;
+import static org.apache.paimon.CoreOptions.LOG_CONSISTENCY;
 import static org.apache.flink.table.store.file.mergetree.compact.MergeTreeCompactManagerTest.row;
 import static org.apache.paimon.connector.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
 import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
index 931da1721..7578a186c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/sink/CommitterOperatorTestBase.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.connector.sink;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
index 743877c2e..bb7b24083 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/source/TestChangelogDataReadWrite.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.connector.source;
 
 import org.apache.flink.api.java.tuple.Tuple2;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.KeyValue;
 import org.apache.flink.table.store.file.io.DataFileMeta;
 import org.apache.flink.table.store.file.memory.HeapMemorySegmentPool;
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
index a392c729b..15b091a9c 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/connector/util/ReadWriteTableTestUtil.java
@@ -25,7 +25,7 @@ import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.table.api.EnvironmentSettings;
 import org.apache.flink.table.api.TableEnvironment;
 import org.apache.flink.table.api.bridge.java.StreamTableEnvironment;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.utils.BlockingIterator;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.CloseableIterator;
@@ -46,7 +46,7 @@ import java.util.concurrent.TimeUnit;
 import java.util.concurrent.TimeoutException;
 
 import static org.apache.flink.table.planner.factories.TestValuesTableFactory.registerData;
-import static org.apache.flink.table.store.CoreOptions.SCAN_MODE;
+import static org.apache.paimon.CoreOptions.SCAN_MODE;
 import static org.apache.paimon.connector.FlinkConnectorOptions.LOG_SYSTEM;
 import static org.apache.paimon.connector.kafka.KafkaLogOptions.BOOTSTRAP_SERVERS;
 import static org.apache.paimon.connector.kafka.KafkaLogOptions.TOPIC;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
index 5b8a7fa43..7d99b3118 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.flink.table.store.file.schema.TableSchema;
 import org.apache.flink.table.store.fs.Path;
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
index 7fddfb58d..a504a7088 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/mapred/TableStoreInputFormat.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.hive.mapred;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.catalog.CatalogContext;
 import org.apache.paimon.file.predicate.Predicate;
 import org.apache.flink.table.store.file.schema.TableSchema;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
index 4fb5ecb7d..ec4c6d3c6 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/FileStoreTestUtils.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.hive;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;
@@ -30,7 +30,7 @@ import org.apache.paimon.types.RowType;
 
 import java.util.List;
 
-import static org.apache.flink.table.store.CoreOptions.PATH;
+import static org.apache.paimon.CoreOptions.PATH;
 
 /** Test utils related to {@link org.apache.flink.table.store.file.FileStore}. */
 public class FileStoreTestUtils {
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
index baa99aa5d..8e92ce1ae 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/TableStoreHiveStorageHandlerITCase.java
@@ -19,7 +19,7 @@
 package org.apache.paimon.hive;
 
 import org.apache.flink.connectors.hive.FlinkEmbeddedHiveRunner;
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.WriteMode;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java
index f3a5113cc..87fdde222 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/mapred/TableStoreRecordReaderTest.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.hive.mapred;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.paimon.options.Options;
 import org.apache.paimon.table.FileStoreTable;
 import org.apache.paimon.table.sink.StreamTableCommit;
diff --git a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
index d0308f4b1..54d07acf1 100644
--- a/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
+++ b/paimon-spark/paimon-spark-2/src/test/java/org/apache/paimon/spark/SimpleTableTestHelper.java
@@ -18,7 +18,7 @@
 
 package org.apache.paimon.spark;
 
-import org.apache.flink.table.store.CoreOptions;
+import org.apache.paimon.CoreOptions;
 import org.apache.flink.table.store.file.schema.Schema;
 import org.apache.flink.table.store.file.schema.SchemaManager;
 import org.apache.flink.table.store.fs.Path;


[incubator-paimon] 29/32: [core] Rename paimon: Table Store to Paimon

Posted by lz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 8856b617e904d7286f734ca86ec8dfa49394473e
Author: JingsongLi <lz...@aliyun.com>
AuthorDate: Sat Mar 18 09:57:32 2023 +0800

    [core] Rename paimon: Table Store to Paimon
---
 README.md                                             |  6 +++---
 docs/README.md                                        |  6 +++---
 docs/content/_index.md                                | 16 ++++++++--------
 docs/content/concepts/basic-concepts.md               |  4 ++--
 docs/content/concepts/external-log-systems.md         |  4 ++--
 docs/content/concepts/file-layouts.md                 |  8 ++++----
 docs/content/concepts/overview.md                     | 10 +++++-----
 docs/content/concepts/primary-key-table.md            | 18 +++++++++---------
 docs/content/engines/flink.md                         | 12 ++++++------
 docs/content/engines/hive.md                          | 14 +++++++-------
 docs/content/engines/overview.md                      |  2 +-
 docs/content/engines/spark2.md                        | 12 ++++++------
 docs/content/engines/spark3.md                        | 16 ++++++++--------
 docs/content/filesystems/overview.md                  |  4 ++--
 docs/content/how-to/creating-catalogs.md              | 18 +++++++++---------
 docs/content/how-to/creating-tables.md                | 12 ++++++------
 docs/content/how-to/lookup-joins.md                   |  6 +++---
 docs/content/how-to/querying-tables.md                |  4 ++--
 docs/content/how-to/writing-tables.md                 | 12 ++++++------
 docs/content/maintenance/expiring-snapshots.md        |  4 ++--
 docs/content/maintenance/manage-partition.md          |  2 +-
 docs/content/maintenance/rescale-bucket.md            |  2 +-
 docs/content/maintenance/write-performance.md         | 14 +++++++-------
 docs/content/versions.md                              |  2 +-
 docs/layouts/partials/docs/inject/content-before.html |  4 ++--
 .../shortcodes/generated/catalog_configuration.html   |  2 +-
 paimon-benchmark/paimon-cluster-benchmark/README.md   |  4 ++--
 paimon-benchmark/paimon-micro-benchmarks/pom.xml      |  2 +-
 .../main/java/org/apache/paimon/table/TableType.java  |  4 ++--
 .../main/java/org/apache/paimon/io/DataFileMeta.java  |  4 ++--
 .../paimon/operation/AbstractFileStoreScan.java       |  2 +-
 .../paimon/operation/KeyValueFileStoreRead.java       |  2 +-
 paimon-docs/README.md                                 |  2 +-
 paimon-flink/paimon-flink-1.14/pom.xml                |  2 +-
 .../flink/TableStoreDataStreamScanProvider.java       |  2 +-
 .../flink/TableStoreDataStreamSinkProvider.java       |  2 +-
 paimon-flink/paimon-flink-1.15/pom.xml                |  2 +-
 paimon-flink/paimon-flink-1.16/pom.xml                |  2 +-
 paimon-flink/paimon-flink-common/pom.xml              |  8 ++++----
 .../java/org/apache/paimon/flink/FlinkCatalog.java    |  2 +-
 .../flink/TableStoreDataStreamScanProvider.java       |  2 +-
 .../flink/TableStoreDataStreamSinkProvider.java       |  2 +-
 .../org/apache/paimon/flink/action/ActionBase.java    |  2 +-
 .../java/org/apache/paimon/flink/sink/FlinkSink.java  |  4 ++--
 .../flink/ChangelogWithKeyFileStoreTableITCase.java   | 19 +++++++++++--------
 .../org/apache/paimon/flink/FlinkCatalogTest.java     |  2 +-
 .../org/apache/paimon/flink/ReadWriteTableITCase.java |  2 +-
 paimon-hive/paimon-hive-catalog/pom.xml               |  2 +-
 paimon-hive/paimon-hive-connector-2.1-cdh-6.3/pom.xml |  2 +-
 paimon-hive/paimon-hive-connector-2.1/pom.xml         |  2 +-
 paimon-hive/paimon-hive-connector-2.2/pom.xml         |  2 +-
 paimon-hive/paimon-hive-connector-2.3/pom.xml         |  2 +-
 paimon-hive/paimon-hive-connector-3.1/pom.xml         |  2 +-
 paimon-hive/paimon-hive-connector-common/pom.xml      |  4 ++--
 .../main/java/org/apache/paimon/hive/HiveSchema.java  |  4 +---
 .../apache/paimon/hive/TableStoreHiveMetaHook.java    |  2 +-
 .../org/apache/paimon/hive/HiveTableSchemaTest.java   | 12 ++++++------
 .../hive/SearchArgumentToPredicateConverterTest.java  |  4 ++--
 paimon-shade/pom.xml                                  | 10 +++++-----
 paimon-spark/paimon-spark-2/pom.xml                   |  2 +-
 paimon-spark/paimon-spark-3.1/pom.xml                 |  2 +-
 paimon-spark/paimon-spark-3.2/pom.xml                 |  2 +-
 paimon-spark/paimon-spark-3.3/pom.xml                 |  2 +-
 paimon-spark/paimon-spark-common/pom.xml              |  2 +-
 64 files changed, 173 insertions(+), 172 deletions(-)

diff --git a/README.md b/README.md
index b11440d7b..3defa001b 100644
--- a/README.md
+++ b/README.md
@@ -1,8 +1,8 @@
-# Flink Table Store
+# Paimon
 
-Flink Table Store is a data lake storage for streaming updates/deletes changelog ingestion and high-performance queries in real time.
+Paimon is a data lake storage for streaming updates/deletes changelog ingestion and high-performance queries in real time.
 
-Flink Table Store is developed under the umbrella of [Apache Flink](https://flink.apache.org/).
+Paimon is developed under the umbrella of [Apache Flink](https://flink.apache.org/).
 
 ## Documentation & Getting Started
 
diff --git a/docs/README.md b/docs/README.md
index 30fcbb5ea..439ab5d14 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -1,7 +1,7 @@
 This README gives an overview of how to build and contribute to the
-documentation of Flink Table Store.
+documentation of Paimon.
 
-The documentation is included with the source of Flink Table Store in order to ensure
+The documentation is included with the source of Paimon in order to ensure
 that you always have docs corresponding to your checked-out version.
 
 # Requirements
@@ -85,7 +85,7 @@ the page:
 
 ### ShortCodes 
 
-Flink Table Store uses [shortcodes](https://gohugo.io/content-management/shortcodes/) to add
+Paimon uses [shortcodes](https://gohugo.io/content-management/shortcodes/) to add
 custom functionality to its documentation markdown.
 
 Its implementation and documentation can be found at
diff --git a/docs/content/_index.md b/docs/content/_index.md
index d1c142c75..79999f577 100644
--- a/docs/content/_index.md
+++ b/docs/content/_index.md
@@ -1,5 +1,5 @@
 ---
-title: Apache Flink Table Store
+title: Apache Paimon
 type: docs
 bookToc: false
 ---
@@ -22,26 +22,26 @@ specific language governing permissions and limitations
 under the License.
 -->
 
-# Apache Flink Table Store
+# Apache Paimon
 
-Flink Table Store is a unified storage to build dynamic tables for both streaming and
+Paimon is a unified storage to build dynamic tables for both streaming and
 batch processing in Flink, supporting high-speed data ingestion and timely data query.
-Table Store offers the following core capabilities:
+Paimon offers the following core capabilities:
 - Support storage of large datasets and allow read/write in both batch and streaming mode.
 - Support streaming queries with minimum latency down to milliseconds.
 - Support Batch/OLAP queries with minimum latency down to the second level.
 - Support incremental snapshots for stream consumption by default. So users do not need to combine different pipelines by themself.
 
 {{< columns >}}
-## Try Table Store
+## Try Paimon
 
-If you’re interested in playing around with Flink Table Store, check out our
+If you’re interested in playing around with Paimon, check out our
 quick start guide with [Flink]({{< ref "engines/flink" >}}), [Spark]({{< ref "engines/spark3" >}}) or [Hive]({{< ref "engines/hive" >}}). It provides a step by
 step introduction to the APIs and guides you through real applications.
 
 <--->
 
-## Get Help with Table Store
+## Get Help with Paimon
 
 If you get stuck, check out our [community support
 resources](https://flink.apache.org/community.html). In particular, Apache
@@ -50,5 +50,5 @@ any Apache project, and is a great way to get help quickly.
 
 {{< /columns >}}
 
-Flink Table Store is developed under the umbrella of
+Paimon is developed under the umbrella of
 [Apache Flink](https://flink.apache.org/).
diff --git a/docs/content/concepts/basic-concepts.md b/docs/content/concepts/basic-concepts.md
index 4c9801065..b54db0e5f 100644
--- a/docs/content/concepts/basic-concepts.md
+++ b/docs/content/concepts/basic-concepts.md
@@ -32,7 +32,7 @@ A snapshot captures the state of a table at some point in time. Users can access
 
 ## Partition
 
-Table Store adopts the same partitioning concept as Apache Hive to separate data.
+Paimon adopts the same partitioning concept as Apache Hive to separate data.
 
 Partitioning is an optional way of dividing a table into related parts based on the values of particular columns like date, city, and department. Each table can have one or more partition keys to identify a particular partition.
 
@@ -56,6 +56,6 @@ See [file layouts]({{< ref "concepts/file-layouts" >}}) for how files are divide
 
 ## Consistency Guarantees
 
-Table Store writers uses two-phase commit protocol to atomically commit a batch of records to the table. Each commit produces at most two [snapshots]({{< ref "concepts/basic-concepts#snapshot" >}}) at commit time.
+Paimon writers uses two-phase commit protocol to atomically commit a batch of records to the table. Each commit produces at most two [snapshots]({{< ref "concepts/basic-concepts#snapshot" >}}) at commit time.
 
 For any two writers modifying a table at the same time, as long as they do not modify the same bucket, their commits are serializable. If they modify the same bucket, only snapshot isolation is guaranteed. That is, the final table state may be a mix of the two commits, but no changes are lost.
diff --git a/docs/content/concepts/external-log-systems.md b/docs/content/concepts/external-log-systems.md
index 345b76f51..a7f6435d1 100644
--- a/docs/content/concepts/external-log-systems.md
+++ b/docs/content/concepts/external-log-systems.md
@@ -26,7 +26,7 @@ under the License.
 
 # External Log Systems
 
-Aside from [underlying table files]({{< ref "concepts/primary-key-table#changelog-producers" >}}), changelog of Table Store can also be stored into or consumed from an external log system, such as Kafka. By specifying `log.system` table property, users can choose which external log system to use.
+Aside from [underlying table files]({{< ref "concepts/primary-key-table#changelog-producers" >}}), changelog of Paimon can also be stored into or consumed from an external log system, such as Kafka. By specifying `log.system` table property, users can choose which external log system to use.
 
 If an external log system is used, all records written into table files will also be written into the log system. Changes produced by the streaming queries will thus come from the log system instead of table files.
 
@@ -36,7 +36,7 @@ By default, changes in the log systems are visible to consumers only after a sna
 
 However, users can also specify the table property `'log.consistency' = 'eventual'` so that changelog written into the log system can be immediately consumed by the consumers, without waiting for the next snapshot. This behavior decreases the latency of changelog, but it can only guarantee the at-least-once semantics (that is, consumers might see duplicated records) due to possible failures.
 
-If `'log.consistency' = 'eventual'` is set, in order to achieve correct results, Table Store source in Flink will automatically adds a "normalize" operator for deduplication. This operator persists the values of each key in states. As one can easily tell, this operator will be very costly and should be avoided.
+If `'log.consistency' = 'eventual'` is set, in order to achieve correct results, Paimon source in Flink will automatically adds a "normalize" operator for deduplication. This operator persists the values of each key in states. As one can easily tell, this operator will be very costly and should be avoided.
 
 ## Supported Log Systems
 
diff --git a/docs/content/concepts/file-layouts.md b/docs/content/concepts/file-layouts.md
index b5b081d9c..f00016ae4 100644
--- a/docs/content/concepts/file-layouts.md
+++ b/docs/content/concepts/file-layouts.md
@@ -26,7 +26,7 @@ under the License.
 
 # File Layouts
 
-All files of a table are stored under one base directory. Table Store files are organized in a layered style. The following image illustrates the file layout. Starting from a snapshot file, Table Store readers can recursively access all records from the table.
+All files of a table are stored under one base directory. Paimon files are organized in a layered style. The following image illustrates the file layout. Starting from a snapshot file, Paimon readers can recursively access all records from the table.
 
 {{< img src="/img/file-layout.png">}}
 
@@ -53,7 +53,7 @@ Data files are grouped by partitions and buckets. Each bucket directory contains
 
 ## LSM Trees
 
-Table Store adapts the LSM tree (log-structured merge-tree) as the data structure for file storage. This documentation briefly introduces the concepts about LSM trees.
+Paimon adapts the LSM tree (log-structured merge-tree) as the data structure for file storage. This documentation briefly introduces the concepts about LSM trees.
 
 ### Sorted Runs
 
@@ -73,6 +73,6 @@ When more and more records are written into the LSM tree, the number of sorted r
 
 To limit the number of sorted runs, we have to merge several sorted runs into one big sorted run once in a while. This procedure is called compaction.
 
-However, compaction is a resource intensive procedure which consumes a certain amount of CPU time and disk IO, so too frequent compaction may in turn result in slower writes. It is a trade-off between query and write performance. Table Store currently adapts a compaction strategy similar to Rocksdb's [universal compaction](https://github.com/facebook/rocksdb/wiki/Universal-Compaction).
+However, compaction is a resource intensive procedure which consumes a certain amount of CPU time and disk IO, so too frequent compaction may in turn result in slower writes. It is a trade-off between query and write performance. Paimon currently adapts a compaction strategy similar to Rocksdb's [universal compaction](https://github.com/facebook/rocksdb/wiki/Universal-Compaction).
 
-By default, when Table Store writers append records to the LSM tree, they'll also perform compactions as needed. Users can also choose to perform all compactions in a dedicated compaction job. See [dedicated compaction job]({{< ref "maintenance/write-performance#dedicated-compaction-job" >}}) for more info.
+By default, when Paimon writers append records to the LSM tree, they'll also perform compactions as needed. Users can also choose to perform all compactions in a dedicated compaction job. See [dedicated compaction job]({{< ref "maintenance/write-performance#dedicated-compaction-job" >}}) for more info.
diff --git a/docs/content/concepts/overview.md b/docs/content/concepts/overview.md
index 203d9a7b8..3a1d8857d 100644
--- a/docs/content/concepts/overview.md
+++ b/docs/content/concepts/overview.md
@@ -26,7 +26,7 @@ under the License.
 
 # Overview
 
-Flink Table Store is a unified storage to build dynamic tables for both streaming and
+Paimon is a unified storage to build dynamic tables for both streaming and
 batch processing in Flink, supporting high-speed data ingestion and timely data query.
 
 ## Architecture
@@ -35,7 +35,7 @@ batch processing in Flink, supporting high-speed data ingestion and timely data
 
 As shown in the architecture above:
 
-**Read/Write:** Table Store supports a versatile way to read/write data and perform OLAP queries.
+**Read/Write:** Paimon supports a versatile way to read/write data and perform OLAP queries.
 - For reads, it supports consuming data
   - from historical snapshots (in batch mode),
   - from the latest offset (in streaming mode), or 
@@ -43,10 +43,10 @@ As shown in the architecture above:
 - For writes, it supports streaming synchronization from the changelog of databases (CDC) or batch
   insert/overwrite from offline data.
 
-**Ecosystem:** In addition to Apache Flink, Table Store also supports read by other computation
+**Ecosystem:** In addition to Apache Flink, Paimon also supports read by other computation
 engines like Apache Hive, Apache Spark and Trino.
 
-**Internal:** Under the hood, Table Store uses a hybrid storage architecture with a lake format to store
+**Internal:** Under the hood, Paimon uses a hybrid storage architecture with a lake format to store
 historical data and a queue system to store incremental data. The former stores the columnar files on
 the filesystem/object-store and uses the LSM tree structure to support a large volume of data updates
 and high-performance queries. The latter uses Apache Kafka to capture data in real-time.
@@ -62,7 +62,7 @@ There are three types of connectors in Flink SQL.
 - Batch storage, such as Apache Hive, it supports various operations
   of the traditional batch processing, including `INSERT OVERWRITE`.
 
-Flink Table Store provides table abstraction. It is used in a way that
+Paimon provides table abstraction. It is used in a way that
 does not differ from the traditional database:
 - In Flink `batch` execution mode, it acts like a Hive table and
   supports various operations of Batch SQL. Query it to see the
diff --git a/docs/content/concepts/primary-key-table.md b/docs/content/concepts/primary-key-table.md
index 1ae10cb4b..2cf5586af 100644
--- a/docs/content/concepts/primary-key-table.md
+++ b/docs/content/concepts/primary-key-table.md
@@ -28,13 +28,13 @@ under the License.
 
 Changelog table is the default table type when creating a table. Users can insert, update or delete records in the table.
 
-Primary keys are a set of columns that are unique for each record. Table Store imposes an ordering of data, which means the system will sort the primary key within each bucket. Using this feature, users can achieve high performance by adding filter conditions on the primary key.
+Primary keys are a set of columns that are unique for each record. Paimon imposes an ordering of data, which means the system will sort the primary key within each bucket. Using this feature, users can achieve high performance by adding filter conditions on the primary key.
 
 By [defining primary keys]({{< ref "how-to/creating-tables#tables-with-primary-keys" >}}) on a changelog table, users can access the following features.
 
 ## Merge Engines
 
-When Table Store sink receives two or more records with the same primary keys, it will merge them into one record to keep primary keys unique. By specifying the `merge-engine` table property, users can choose how records are merged together.
+When Paimon sink receives two or more records with the same primary keys, it will merge them into one record to keep primary keys unique. By specifying the `merge-engine` table property, users can choose how records are merged together.
 
 {{< hint info >}}
 Set `table.exec.sink.upsert-materialize` to `NONE` always in Flink SQL TableConfig, sink upsert-materialize may
@@ -44,7 +44,7 @@ result in strange behavior. When the input is out of order, we recommend that yo
 
 ### Deduplicate
 
-`deduplicate` merge engine is the default merge engine. Table Store will only keep the latest record and throw away other records with the same primary keys.
+`deduplicate` merge engine is the default merge engine. Paimon will only keep the latest record and throw away other records with the same primary keys.
 
 Specifically, if the latest record is a `DELETE` record, all records with the same primary keys will be deleted.
 
@@ -52,7 +52,7 @@ Specifically, if the latest record is a `DELETE` record, all records with the sa
 
 By specifying `'merge-engine' = 'partial-update'`, users can set columns of a record across multiple updates and finally get a complete record. Specifically, value fields are updated to the latest data one by one under the same primary key, but null values are not overwritten.
 
-For example, let's say Table Store receives three records:
+For example, let's say Paimon receives three records:
 - `<1, 23.0, 10, NULL>`-
 - `<1, NULL, NULL, 'This is a book'>`
 - `<1, 25.2, NULL, NULL>`
@@ -126,7 +126,7 @@ The `changelog-producer` table property only affects changelog from files. It do
 
 ### None
 
-By default, no extra changelog producer will be applied to the writer of table. Table Store source can only see the merged changes across snapshots, like what keys are removed and what are the new values of some keys.
+By default, no extra changelog producer will be applied to the writer of table. Paimon source can only see the merged changes across snapshots, like what keys are removed and what are the new values of some keys.
 
 However, these merged changes cannot form a complete changelog, because we can't read the old values of the keys directly from them. Merged changes require the consumers to "remember" the values of each key and to rewrite the values without seeing the old ones. Some consumers, however, need the old values to ensure correctness or efficiency.
 
@@ -138,9 +138,9 @@ To conclude, `none` changelog producers are best suited for consumers such as a
 
 ### Input
 
-By specifying `'changelog-producer' = 'input'`, Table Store writers rely on their inputs as a source of complete changelog. All input records will be saved in separated [changelog files]({{< ref "concepts/file-layouts" >}}) and will be given to the consumers by Table Store sources.
+By specifying `'changelog-producer' = 'input'`, Paimon writers rely on their inputs as a source of complete changelog. All input records will be saved in separated [changelog files]({{< ref "concepts/file-layouts" >}}) and will be given to the consumers by Paimon sources.
 
-`input` changelog producer can be used when Table Store writers' inputs are complete changelog, such as from a database CDC, or generated by Flink stateful computation.
+`input` changelog producer can be used when Paimon writers' inputs are complete changelog, such as from a database CDC, or generated by Flink stateful computation.
 
 {{< img src="/img/changelog-producer-input.png">}}
 
@@ -152,7 +152,7 @@ This is an experimental feature.
 
 If your input can’t produce a complete changelog but you still want to get rid of the costly normalized operator, you may consider using the `'lookup'` changelog producer.
 
-By specifying `'changelog-producer' = 'lookup'`, Table Store will generate changelog through `'lookup'` before committing the data writing.
+By specifying `'changelog-producer' = 'lookup'`, Paimon will generate changelog through `'lookup'` before committing the data writing.
 
 {{< img src="/img/changelog-producer-lookup.png">}}
 
@@ -194,7 +194,7 @@ Lookup will cache data on the memory and local disk, you can use the following o
 If you think the resource consumption of 'lookup' is too large, you can consider using 'full-compaction' changelog producer,
 which can decouple data writing and changelog generation, and is more suitable for scenarios with high latency (For example, 10 minutes).
 
-By specifying `'changelog-producer' = 'full-compaction'`, Table Store will compare the results between full compactions and produce the differences as changelog. The latency of changelog is affected by the frequency of full compactions.
+By specifying `'changelog-producer' = 'full-compaction'`, Paimon will compare the results between full compactions and produce the differences as changelog. The latency of changelog is affected by the frequency of full compactions.
 
 By specifying `changelog-producer.compaction-interval` table property (default value `0s`), users can define the maximum interval between two full compactions to ensure latency. This is set to 0 by default, so each checkpoint will have a full compression and generate a change log.
 
diff --git a/docs/content/engines/flink.md b/docs/content/engines/flink.md
index ec7ddce69..913e5dc8d 100644
--- a/docs/content/engines/flink.md
+++ b/docs/content/engines/flink.md
@@ -26,11 +26,11 @@ under the License.
 
 # Flink
 
-This documentation is a guide for using Table Store in Flink.
+This documentation is a guide for using Paimon in Flink.
 
-## Preparing Table Store Jar File
+## Preparing Paimon Jar File
 
-Table Store currently supports Flink 1.16, 1.15 and 1.14. We recommend the latest Flink version for a better experience.
+Paimon currently supports Flink 1.16, 1.15 and 1.14. We recommend the latest Flink version for a better experience.
 
 {{< stable >}}
 
@@ -48,7 +48,7 @@ You can also manually build bundled jar from the source code.
 
 {{< unstable >}}
 
-You are using an unreleased version of Table Store so you need to manually build bundled jar from the source code.
+You are using an unreleased version of Paimon so you need to manually build bundled jar from the source code.
 
 {{< /unstable >}}
 
@@ -69,7 +69,7 @@ If you haven't downloaded Flink, you can [download Flink 1.16](https://flink.apa
 tar -xzf flink-*.tgz
 ```
 
-**Step 2: Copy Table Store Bundled Jar**
+**Step 2: Copy Paimon Bundled Jar**
 
 Copy paimon bundled jar to the `lib` directory of your Flink home.
 
@@ -111,7 +111,7 @@ You can now start Flink SQL client to execute SQL scripts.
 **Step 5: Create a Catalog and a Table**
 
 ```sql
--- if you're trying out Table Store in a distributed environment,
+-- if you're trying out Paimon in a distributed environment,
 -- warehouse path should be set to a shared file system, such as HDFS or OSS
 CREATE CATALOG my_catalog WITH (
     'type'='paimon',
diff --git a/docs/content/engines/hive.md b/docs/content/engines/hive.md
index ac7488740..5ae357cbd 100644
--- a/docs/content/engines/hive.md
+++ b/docs/content/engines/hive.md
@@ -26,15 +26,15 @@ under the License.
 
 # Hive
 
-This documentation is a guide for using Table Store in Hive.
+This documentation is a guide for using Paimon in Hive.
 
 ## Version
 
-Table Store currently supports Hive 2.1, 2.1-cdh-6.3, 2.2, 2.3 and 3.1.
+Paimon currently supports Hive 2.1, 2.1-cdh-6.3, 2.2, 2.3 and 3.1.
 
 ## Execution Engine
 
-Table Store currently supports MR and Tez execution engine for Hive.
+Paimon currently supports MR and Tez execution engine for Hive.
 
 ## Installation
 
@@ -56,7 +56,7 @@ You can also manually build bundled jar from the source code.
 
 {{< unstable >}}
 
-You are using an unreleased version of Table Store so you need to manually build bundled jar from the source code.
+You are using an unreleased version of Paimon so you need to manually build bundled jar from the source code.
 
 {{< /unstable >}}
 
@@ -74,17 +74,17 @@ There are several ways to add this jar to Hive.
 
 NOTE: If you are using HDFS, make sure that the environment variable `HADOOP_HOME` or `HADOOP_CONF_DIR` is set.
 
-## Quick Start with Table Store Hive Catalog
+## Quick Start with Paimon Hive Catalog
 
 By using paimon Hive catalog, you can create, drop and insert into paimon tables from Flink. These operations directly affect the corresponding Hive metastore. Tables created in this way can also be accessed directly from Hive.
 
-**Step 1: Prepare Table Store Hive Catalog Jar File for Flink**
+**Step 1: Prepare Paimon Hive Catalog Jar File for Flink**
 
 See [creating a catalog with Hive metastore]({{< ref "how-to/creating-catalogs#creating-a-catalog-with-hive-metastore" >}}).
 
 **Step 2: Create Test Data with Flink SQL**
 
-Execute the following Flink SQL script in Flink SQL client to define a Table Store Hive catalog and create a table.
+Execute the following Flink SQL script in Flink SQL client to define a Paimon Hive catalog and create a table.
 
 ```sql
 -- Flink SQL CLI
diff --git a/docs/content/engines/overview.md b/docs/content/engines/overview.md
index 7166512b5..ee13025f7 100644
--- a/docs/content/engines/overview.md
+++ b/docs/content/engines/overview.md
@@ -26,7 +26,7 @@ under the License.
 
 # Overview
 
-Table Store not only supports Flink SQL writes and queries natively,
+Paimon not only supports Flink SQL writes and queries natively,
 but also provides queries from other popular engines, such as
 Apache Spark and Apache Hive.
 
diff --git a/docs/content/engines/spark2.md b/docs/content/engines/spark2.md
index ffafa8eeb..00872a3fe 100644
--- a/docs/content/engines/spark2.md
+++ b/docs/content/engines/spark2.md
@@ -26,13 +26,13 @@ under the License.
 
 # Spark2
 
-This documentation is a guide for using Table Store in Spark2. 
+This documentation is a guide for using Paimon in Spark2. 
 
 ## Version
 
-Table Store supports Spark 2.4+. It is highly recommended to use Spark 2.4+ version with many improvements.
+Paimon supports Spark 2.4+. It is highly recommended to use Spark 2.4+ version with many improvements.
 
-## Preparing Table Store Jar File
+## Preparing Paimon Jar File
 
 {{< stable >}}
 
@@ -44,7 +44,7 @@ You can also manually build bundled jar from the source code.
 
 {{< unstable >}}
 
-You are using an unreleased version of Table Store so you need to manually build bundled jar from the source code.
+You are using an unreleased version of Paimon so you need to manually build bundled jar from the source code.
 
 {{< /unstable >}}
 
@@ -68,11 +68,11 @@ If you are using HDFS, make sure that the environment variable `HADOOP_HOME` or
 
 **Step 1: Prepare Test Data**
 
-Table Store currently only supports reading tables through Spark2. To create a Table Store table with records, please follow our [Flink quick start guide]({{< ref "engines/flink#quick-start" >}}).
+Paimon currently only supports reading tables through Spark2. To create a Paimon table with records, please follow our [Flink quick start guide]({{< ref "engines/flink#quick-start" >}}).
 
 After the guide, all table files should be stored under the path `/tmp/table_store`, or the warehouse path you've specified.
 
-**Step 2: Specify Table Store Jar File**
+**Step 2: Specify Paimon Jar File**
 
 You can append path to paimon jar file to the `--jars` argument when starting `spark-shell`.
 
diff --git a/docs/content/engines/spark3.md b/docs/content/engines/spark3.md
index c685cb60e..c9d013d69 100644
--- a/docs/content/engines/spark3.md
+++ b/docs/content/engines/spark3.md
@@ -26,11 +26,11 @@ under the License.
 
 # Spark3
 
-This documentation is a guide for using Table Store in Spark3.
+This documentation is a guide for using Paimon in Spark3.
 
-## Preparing Table Store Jar File
+## Preparing Paimon Jar File
 
-Table Store currently supports Spark 3.3, 3.2 and 3.1. We recommend the latest Spark version for a better experience.
+Paimon currently supports Spark 3.3, 3.2 and 3.1. We recommend the latest Spark version for a better experience.
 
 {{< stable >}}
 
@@ -48,7 +48,7 @@ You can also manually build bundled jar from the source code.
 
 {{< unstable >}}
 
-You are using an unreleased version of Table Store so you need to manually build bundled jar from the source code.
+You are using an unreleased version of Paimon so you need to manually build bundled jar from the source code.
 
 {{< /unstable >}}
 
@@ -70,7 +70,7 @@ If you are using HDFS, make sure that the environment variable `HADOOP_HOME` or
 
 {{< /hint >}}
 
-**Step 1: Specify Table Store Jar File**
+**Step 1: Specify Paimon Jar File**
 
 Append path to paimon jar file to the `--jars` argument when starting `spark-sql`.
 
@@ -80,9 +80,9 @@ spark-sql ... --jars /path/to/paimon-spark-3.3-{{< version >}}.jar
 
 Alternatively, you can copy `paimon-spark-3.3-{{< version >}}.jar` under `spark/jars` in your Spark installation directory.
 
-**Step 2: Specify Table Store Catalog**
+**Step 2: Specify Paimon Catalog**
 
-When starting `spark-sql`, use the following command to register Table Store’s Spark catalog with the name `paimon`. Table files of the warehouse is stored under `/tmp/table_store`.
+When starting `spark-sql`, use the following command to register Paimon’s Spark catalog with the name `paimon`. Table files of the warehouse is stored under `/tmp/table_store`.
 
 ```bash
 spark-sql ... \
@@ -135,7 +135,7 @@ SELECT * FROM my_table;
 
 **Step 6: Query Table with Scala API**
 
-If you don't want to use Table Store catalog, you can also run `spark-shell` and query the table with Scala API.
+If you don't want to use Paimon catalog, you can also run `spark-shell` and query the table with Scala API.
 
 ```bash
 spark-shell ... --jars /path/to/paimon-spark-3.3-{{< version >}}.jar
diff --git a/docs/content/filesystems/overview.md b/docs/content/filesystems/overview.md
index 82be82fbb..de908ad6b 100644
--- a/docs/content/filesystems/overview.md
+++ b/docs/content/filesystems/overview.md
@@ -26,11 +26,11 @@ under the License.
 
 # Overview
 
-Apache Flink Table Store utilizes the same pluggable file systems as Apache Flink. Users can follow the
+Apache Paimon utilizes the same pluggable file systems as Apache Flink. Users can follow the
 [standard plugin mechanism](https://nightlies.apache.org/flink/flink-docs-stable/docs/deployment/filesystems/plugins/)
 to configure the plugin structure if using Flink as compute engine. However, for other engines like Spark
 or Hive, the provided opt jars (by Flink) may get conflicts and cannot be used directly. It is not convenient
-for users to fix class conflicts, thus Flink Table Store provides the self-contained and engine-unified
+for users to fix class conflicts, thus Paimon provides the self-contained and engine-unified
 FileSystem pluggable jars for user to query tables from Spark/Hive side.
 
 ## Supported FileSystems
diff --git a/docs/content/how-to/creating-catalogs.md b/docs/content/how-to/creating-catalogs.md
index aaa1d8a67..3be4609b0 100644
--- a/docs/content/how-to/creating-catalogs.md
+++ b/docs/content/how-to/creating-catalogs.md
@@ -26,7 +26,7 @@ under the License.
 
 # Creating Catalogs
 
-Table Store catalogs currently support two types of metastores:
+Paimon catalogs currently support two types of metastores:
 
 * `filesystem` metastore (default), which stores both metadata and table files in filesystems.
 * `hive` metastore, which additionally stores metadata in Hive metastore. Users can directly access the tables from Hive.
@@ -39,7 +39,7 @@ See [CatalogOptions]({{< ref "maintenance/configurations#catalogoptions" >}}) fo
 
 {{< tab "Flink" >}}
 
-The following Flink SQL registers and uses a Table Store catalog named `my_catalog`. Metadata and table files are stored under `hdfs://path/to/warehouse`.
+The following Flink SQL registers and uses a Paimon catalog named `my_catalog`. Metadata and table files are stored under `hdfs://path/to/warehouse`.
 
 ```sql
 CREATE CATALOG my_catalog WITH (
@@ -74,9 +74,9 @@ USE paimon.default;
 
 ## Creating a Catalog with Hive Metastore
 
-By using Table Store Hive catalog, changes to the catalog will directly affect the corresponding Hive metastore. Tables created in such catalog can also be accessed directly from Hive.
+By using Paimon Hive catalog, changes to the catalog will directly affect the corresponding Hive metastore. Tables created in such catalog can also be accessed directly from Hive.
 
-### Preparing Table Store Hive Catalog Jar File
+### Preparing Paimon Hive Catalog Jar File
 
 {{< stable >}}
 
@@ -92,7 +92,7 @@ You can also manually build bundled jar from the source code.
 
 {{< unstable >}}
 
-You are using an unreleased version of Table Store so you need to manually build bundled jar from the source code.
+You are using an unreleased version of Paimon so you need to manually build bundled jar from the source code.
 
 {{< /unstable >}}
 
@@ -109,12 +109,12 @@ You can find Hive catalog jar in `./paimon-hive/paimon-hive-catalog/target/paimo
 
 {{< tab "Flink" >}}
 
-To enable Table Store Hive catalog support in Flink, you can pick one of the following two methods.
+To enable Paimon Hive catalog support in Flink, you can pick one of the following two methods.
 
-* Copy Table Store Hive catalog jar file into the `lib` directory of your Flink installation directory. Note that this must be done before starting your Flink cluster.
+* Copy Paimon Hive catalog jar file into the `lib` directory of your Flink installation directory. Note that this must be done before starting your Flink cluster.
 * If you're using Flink's SQL client, append `--jar /path/to/paimon-hive-catalog-{{< version >}}.jar` to the starting command of SQL client.
 
-The following Flink SQL registers and uses a Table Store Hive catalog named `my_hive`. Metadata and table files are stored under `hdfs://path/to/warehouse`. In addition, metadata is also stored in Hive metastore.
+The following Flink SQL registers and uses a Paimon Hive catalog named `my_hive`. Metadata and table files are stored under `hdfs://path/to/warehouse`. In addition, metadata is also stored in Hive metastore.
 
 ```sql
 CREATE CATALOG my_hive WITH (
@@ -131,7 +131,7 @@ USE CATALOG my_hive;
 
 {{< tab "Spark3" >}}
 
-To enable Table Store Hive catalog support in Spark3, append the path of Table Store Hive catalog jar file to `--jars` argument when starting spark.
+To enable Paimon Hive catalog support in Spark3, append the path of Paimon Hive catalog jar file to `--jars` argument when starting spark.
 
 The following shell command registers a Table tore Hive catalog named `paimon`. Metadata and table files are stored under `hdfs://path/to/warehouse`. In addition, metadata is also stored in Hive metastore.
 
diff --git a/docs/content/how-to/creating-tables.md b/docs/content/how-to/creating-tables.md
index 9d585518f..114e6cb1d 100644
--- a/docs/content/how-to/creating-tables.md
+++ b/docs/content/how-to/creating-tables.md
@@ -28,9 +28,9 @@ under the License.
 
 ## Creating Catalog Managed Tables
 
-Tables created in Table Store [catalogs]({{< ref "how-to/creating-catalogs" >}}) are managed by the catalog. When the table is dropped from catalog, its table files will also be deleted.
+Tables created in Paimon [catalogs]({{< ref "how-to/creating-catalogs" >}}) are managed by the catalog. When the table is dropped from catalog, its table files will also be deleted.
 
-The following SQL assumes that you have registered and are using a Table Store catalog. It creates a managed table named `MyTable` with five columns in the catalog's `default` database, where `dt`, `hh` and `user_id` are the primary keys.
+The following SQL assumes that you have registered and are using a Paimon catalog. It creates a managed table named `MyTable` with five columns in the catalog's `default` database, where `dt`, `hh` and `user_id` are the primary keys.
 
 {{< tabs "primary-keys-example" >}}
 
@@ -263,7 +263,7 @@ CREATE TABLE MyTableLike LIKE MyTable;
 
 ### Table Properties
 
-Users can specify table properties to enable features or improve performance of Table Store. For a complete list of such properties, see [configurations]({{< ref "maintenance/configurations" >}}).
+Users can specify table properties to enable features or improve performance of Paimon. For a complete list of such properties, see [configurations]({{< ref "maintenance/configurations" >}}).
 
 The following SQL creates a table named `MyTable` with five columns partitioned by `dt` and `hh`, where `dt`, `hh` and `user_id` are the primary keys. This table has two properties: `'bucket' = '2'` and `'bucket-key' = 'user_id'`.
 
@@ -311,13 +311,13 @@ CREATE TABLE MyTable (
 
 External tables are recorded but not managed by catalogs. If an external table is dropped, its table files will not be deleted.
 
-Table Store external tables can be used in any catalog. If you do not want to create a Table Store catalog and just want to read / write a table, you can consider external tables.
+Paimon external tables can be used in any catalog. If you do not want to create a Paimon catalog and just want to read / write a table, you can consider external tables.
 
 {{< tabs "external-table-example" >}}
 
 {{< tab "Flink" >}}
 
-Flink SQL supports reading and writing an external table. External Table Store tables are created by specifying the `connector` and `path` table properties. The following SQL creates an external table named `MyTable` with five columns, where the base path of table files is `hdfs://path/to/table`.
+Flink SQL supports reading and writing an external table. External Paimon tables are created by specifying the `connector` and `path` table properties. The following SQL creates an external table named `MyTable` with five columns, where the base path of table files is `hdfs://path/to/table`.
 
 ```sql
 CREATE TABLE MyTable (
@@ -379,7 +379,7 @@ LOCATION 'hdfs://path/to/table';
 
 Temporary tables are only supported by Flink. Like external tables, temporary tables are just recorded but not managed by the current Flink SQL session. If the temporary table is dropped, its resources will not be deleted. Temporary tables are also dropped when Flink SQL session is closed.
 
-If you want to use Table Store catalog along with other tables but do not want to store them in other catalogs, you can create a temporary table. The following Flink SQL creates a Table Store catalog and a temporary table and also illustrates how to use both tables together.
+If you want to use Paimon catalog along with other tables but do not want to store them in other catalogs, you can create a temporary table. The following Flink SQL creates a Paimon catalog and a temporary table and also illustrates how to use both tables together.
 
 ```sql
 CREATE CATALOG my_catalog WITH (
diff --git a/docs/content/how-to/lookup-joins.md b/docs/content/how-to/lookup-joins.md
index 04993afff..0f1475545 100644
--- a/docs/content/how-to/lookup-joins.md
+++ b/docs/content/how-to/lookup-joins.md
@@ -26,11 +26,11 @@ under the License.
 
 # Lookup Joins
 
-[Lookup Joins](https://nightlies.apache.org/flink/flink-docs-stable/docs/dev/table/sql/queries/joins/) are a type of join in streaming queries. It is used to enrich a table with data that is queried from Table Store. The join requires one table to have a processing time attribute and the other table to be backed by a lookup source connector.
+[Lookup Joins](https://nightlies.apache.org/flink/flink-docs-stable/docs/dev/table/sql/queries/joins/) are a type of join in streaming queries. It is used to enrich a table with data that is queried from Paimon. The join requires one table to have a processing time attribute and the other table to be backed by a lookup source connector.
 
-Table Store supports lookup joins on unpartitioned tables with primary keys in Flink. The following example illustrates this feature.
+Paimon supports lookup joins on unpartitioned tables with primary keys in Flink. The following example illustrates this feature.
 
-First, let's create a Table Store table and update it in real-time.
+First, let's create a Paimon table and update it in real-time.
 
 ```sql
 -- Create a paimon catalog
diff --git a/docs/content/how-to/querying-tables.md b/docs/content/how-to/querying-tables.md
index 47106e940..5f85b7a4c 100644
--- a/docs/content/how-to/querying-tables.md
+++ b/docs/content/how-to/querying-tables.md
@@ -26,11 +26,11 @@ under the License.
 
 # Querying Tables
 
-Just like all other tables, Table Store tables can be queried with `SELECT` statement.
+Just like all other tables, Paimon tables can be queried with `SELECT` statement.
 
 ## Scan Mode
 
-By specifying the `scan.mode` table property, users can specify where and how Table Store sources should produce records.
+By specifying the `scan.mode` table property, users can specify where and how Paimon sources should produce records.
 
 <table class="table table-bordered">
 <thead>
diff --git a/docs/content/how-to/writing-tables.md b/docs/content/how-to/writing-tables.md
index aa5b989bf..5a4fe7a8a 100644
--- a/docs/content/how-to/writing-tables.md
+++ b/docs/content/how-to/writing-tables.md
@@ -96,7 +96,7 @@ Use `INSERT INTO` to apply records and changes to tables.
 INSERT INTO MyTable SELECT ...
 ```
 
-Table Store supports shuffle data by bucket in sink phase. To improve data skew, Table Store also
+Paimon supports shuffle data by bucket in sink phase. To improve data skew, Paimon also
 supports shuffling data by partition fields. You can add option `sink.partition-shuffle` to the table.
 
 {{< /tab >}}
@@ -115,7 +115,7 @@ INSERT INTO MyTable SELECT ...
 
 ## Overwriting the Whole Table
 
-For unpartitioned tables, Table Store supports overwriting the whole table.
+For unpartitioned tables, Paimon supports overwriting the whole table.
 
 {{< tabs "insert-overwrite-unpartitioned-example" >}}
 
@@ -133,7 +133,7 @@ INSERT OVERWRITE MyTable SELECT ...
 
 ## Overwriting a Partition
 
-For partitioned tables, Table Store supports overwriting a partition.
+For partitioned tables, Paimon supports overwriting a partition.
 
 {{< tabs "insert-overwrite-partitioned-example" >}}
 
@@ -167,7 +167,7 @@ INSERT OVERWRITE MyTable SELECT * FROM MyTable WHERE false
 
 ## Purging Partitions
 
-Currently, Table Store supports two ways to purge partitions.
+Currently, Paimon supports two ways to purge partitions.
 
 1. Like purging tables, you can use `INSERT OVERWRITE` to purge data of partitions by inserting empty value to them.
 
@@ -234,7 +234,7 @@ For more information of drop-partition, see
 
 ## Deleting from table
 
-Currently, Table Store supports deleting records via submitting the 'delete' job through `flink run`.
+Currently, Paimon supports deleting records via submitting the 'delete' job through `flink run`.
 
 {{< tabs "delete-from-table" >}}
 
@@ -275,7 +275,7 @@ For more information of 'delete', see
 
 ## Merging into table
 
-Table Store supports "MERGE INTO" via submitting the 'merge-into' job through `flink run`.
+Paimon supports "MERGE INTO" via submitting the 'merge-into' job through `flink run`.
 
 {{< hint info >}}
 Important table properties setting:
diff --git a/docs/content/maintenance/expiring-snapshots.md b/docs/content/maintenance/expiring-snapshots.md
index 44938af1a..479316b52 100644
--- a/docs/content/maintenance/expiring-snapshots.md
+++ b/docs/content/maintenance/expiring-snapshots.md
@@ -26,9 +26,9 @@ under the License.
 
 # Expiring Snapshots
 
-Table Store writers generates one or two [snapshots]({{< ref "concepts/basic-concepts#snapshots" >}}) per commit. Each snapshot may add some new data files or mark some old data files as deleted. However, the marked data files are not truly deleted because Table Store also supports time traveling to an earlier snapshot. They are only deleted when the snapshot expires.
+Paimon writers generates one or two [snapshots]({{< ref "concepts/basic-concepts#snapshots" >}}) per commit. Each snapshot may add some new data files or mark some old data files as deleted. However, the marked data files are not truly deleted because Paimon also supports time traveling to an earlier snapshot. They are only deleted when the snapshot expires.
 
-Currently, expiration is automatically performed by Table Store writers when committing new changes. By expiring old snapshots, old data files and metadata files that are no longer used can be deleted to release disk space.
+Currently, expiration is automatically performed by Paimon writers when committing new changes. By expiring old snapshots, old data files and metadata files that are no longer used can be deleted to release disk space.
 
 Snapshot expiration is controlled by the following table properties.
 
diff --git a/docs/content/maintenance/manage-partition.md b/docs/content/maintenance/manage-partition.md
index 54d68a316..c02c39113 100644
--- a/docs/content/maintenance/manage-partition.md
+++ b/docs/content/maintenance/manage-partition.md
@@ -26,7 +26,7 @@ under the License.
 
 ## Expiring Partitions
 
-You can set `partition.expiration-time` when creating a partitioned table. Table Store will periodically check
+You can set `partition.expiration-time` when creating a partitioned table. Paimon will periodically check
 the status of partitions and delete expired partitions according to time.
 
 How to determine whether a partition has expired: compare the time extracted from the partition with the current
diff --git a/docs/content/maintenance/rescale-bucket.md b/docs/content/maintenance/rescale-bucket.md
index b3ec92f8d..4878a837f 100644
--- a/docs/content/maintenance/rescale-bucket.md
+++ b/docs/content/maintenance/rescale-bucket.md
@@ -26,7 +26,7 @@ under the License.
 
 # Rescale Bucket
 
-Since the number of total buckets dramatically influences the performance, Table Store allows users to 
+Since the number of total buckets dramatically influences the performance, Paimon allows users to 
 tune bucket numbers by `ALTER TABLE` command and reorganize data layout by `INSERT OVERWRITE` 
 without recreating the table/partition. When executing overwrite jobs, the framework will automatically 
 scan the data with the old bucket number and hash the record according to the current bucket number.
diff --git a/docs/content/maintenance/write-performance.md b/docs/content/maintenance/write-performance.md
index a0597c073..c67990d23 100644
--- a/docs/content/maintenance/write-performance.md
+++ b/docs/content/maintenance/write-performance.md
@@ -26,7 +26,7 @@ under the License.
 
 # Write Performance
 
-Performance of Table Store writers are related with the following factors.
+Performance of Paimon writers are related with the following factors.
 
 ## Parallelism
 
@@ -57,9 +57,9 @@ It is recommended that the parallelism of sink should be less than or equal to t
 
 ### Number of Sorted Runs to Trigger Compaction
 
-Table Store uses [LSM tree]({{< ref "concepts/file-layouts#lsm-trees" >}}) which supports a large number of updates. LSM organizes files in several [sorted runs]({{< ref "concepts/file-layouts#lsm-trees#sorted-runs" >}}). When querying records from an LSM tree, all sorted runs must be combined to produce a complete view of all records.
+Paimon uses [LSM tree]({{< ref "concepts/file-layouts#lsm-trees" >}}) which supports a large number of updates. LSM organizes files in several [sorted runs]({{< ref "concepts/file-layouts#lsm-trees#sorted-runs" >}}). When querying records from an LSM tree, all sorted runs must be combined to produce a complete view of all records.
 
-One can easily see that too many sorted runs will result in poor query performance. To keep the number of sorted runs in a reasonable range, Table Store writers will automatically perform [compactions]({{< ref "concepts/file-layouts#lsm-trees#compactions" >}}). The following table property determines the minimum number of sorted runs to trigger a compaction.
+One can easily see that too many sorted runs will result in poor query performance. To keep the number of sorted runs in a reasonable range, Paimon writers will automatically perform [compactions]({{< ref "concepts/file-layouts#lsm-trees#compactions" >}}). The following table property determines the minimum number of sorted runs to trigger a compaction.
 
 <table class="table table-bordered">
     <thead>
@@ -86,7 +86,7 @@ Compaction will become less frequent when `num-sorted-run.compaction-trigger` be
 
 ### Number of Sorted Runs to Pause Writing
 
-When number of sorted runs is small, Table Store writers will perform compaction asynchronously in separated threads, so records can be continuously written into the table. However to avoid unbounded growth of sorted runs, writers will have to pause writing when the number of sorted runs hits the threshold. The following table property determines the threshold.
+When number of sorted runs is small, Paimon writers will perform compaction asynchronously in separated threads, so records can be continuously written into the table. However to avoid unbounded growth of sorted runs, writers will have to pause writing when the number of sorted runs hits the threshold. The following table property determines the threshold.
 
 <table class="table table-bordered">
     <thead>
@@ -113,10 +113,10 @@ Write stalls will become less frequent when `num-sorted-run.stop-trigger` become
 
 ### Dedicated Compaction Job
 
-By default, Table Store writers will perform compaction as needed when writing records. This is sufficient for most use cases, but there are two downsides:
+By default, Paimon writers will perform compaction as needed when writing records. This is sufficient for most use cases, but there are two downsides:
 
 * This may result in unstable write throughput because throughput might temporarily drop when performing a compaction.
-* Compaction will mark some data files as "deleted" (not really deleted, see [expiring snapshots]({{< ref "maintenance/expiring-snapshots" >}}) for more info). If multiple writers mark the same file a conflict will occur when committing the changes. Table Store will automatically resolve the conflict, but this may result in job restarts.
+* Compaction will mark some data files as "deleted" (not really deleted, see [expiring snapshots]({{< ref "maintenance/expiring-snapshots" >}}) for more info). If multiple writers mark the same file a conflict will occur when committing the changes. Paimon will automatically resolve the conflict, but this may result in job restarts.
 
 To avoid these downsides, users can also choose to skip compactions in writers, and run a dedicated job only for compaction. As compactions are performed only by the dedicated job, writers can continuously write records without pausing and no conflicts will ever occur.
 
@@ -186,7 +186,7 @@ For more usage of the compact action, see
 
 ## Memory
 
-There are three main places in Table Store writer that takes up memory:
+There are three main places in Paimon writer that takes up memory:
 
 * Writer's memory buffer, shared and preempted by all writers of a single task. This memory value can be adjusted by the `write-buffer-size` table property.
 * Memory consumed when merging several sorted runs for compaction. Can be adjusted by the `num-sorted-run.compaction-trigger` option to change the number of sorted runs to be merged.
diff --git a/docs/content/versions.md b/docs/content/versions.md
index 0fa4dbbd9..210d7f00d 100644
--- a/docs/content/versions.md
+++ b/docs/content/versions.md
@@ -25,6 +25,6 @@ under the License.
 
 # Versions
 
-An appendix of hosted documentation for all versions of Apache Flink Table Store.
+An appendix of hosted documentation for all versions of Apache Paimon.
 
 {{< all_versions >}}
diff --git a/docs/layouts/partials/docs/inject/content-before.html b/docs/layouts/partials/docs/inject/content-before.html
index f4096b2a0..42aca36ae 100644
--- a/docs/layouts/partials/docs/inject/content-before.html
+++ b/docs/layouts/partials/docs/inject/content-before.html
@@ -23,14 +23,14 @@ under the License.
 {{ if $.Site.Params.ShowOutDatedWarning }}
 <article class="markdown">
     <blockquote style="border-color:#f66">
-        {{ markdownify "This documentation is for an out-of-date version of Apache Flink Table Store. We recommend you use the latest [stable version](https://ci.apache.org/projects/flink/paimon-docs-stable/)."}}
+        {{ markdownify "This documentation is for an out-of-date version of Apache Paimon. We recommend you use the latest [stable version](https://ci.apache.org/projects/flink/paimon-docs-stable/)."}}
     </blockquote>
 </article>
 {{ end }}
 {{ if (not $.Site.Params.IsStable) }}
 <article class="markdown">
     <blockquote style="border-color:#f66">
-        {{ markdownify "This documentation is for an unreleased version of Apache Flink Table Store. We recommend you use the latest [stable version](https://ci.apache.org/projects/flink/paimon-docs-stable/)."}}
+        {{ markdownify "This documentation is for an unreleased version of Apache Paimon. We recommend you use the latest [stable version](https://ci.apache.org/projects/flink/paimon-docs-stable/)."}}
     </blockquote>
 </article>
 {{ end }}
diff --git a/docs/layouts/shortcodes/generated/catalog_configuration.html b/docs/layouts/shortcodes/generated/catalog_configuration.html
index 614763934..22cca42a4 100644
--- a/docs/layouts/shortcodes/generated/catalog_configuration.html
+++ b/docs/layouts/shortcodes/generated/catalog_configuration.html
@@ -42,7 +42,7 @@
             <td><h5>table.type</h5></td>
             <td style="word-wrap: break-word;">managed</td>
             <td><p>Enum</p></td>
-            <td>Type of table.<br /><br />Possible values:<ul><li>"managed": Table Store owned table where the entire lifecycle of the table data is managed.</li><li>"external": The table where Table Store has loose coupling with the data stored in external locations.</li></ul></td>
+            <td>Type of table.<br /><br />Possible values:<ul><li>"managed": Paimon owned table where the entire lifecycle of the table data is managed.</li><li>"external": The table where Paimon has loose coupling with the data stored in external locations.</li></ul></td>
         </tr>
         <tr>
             <td><h5>uri</h5></td>
diff --git a/paimon-benchmark/paimon-cluster-benchmark/README.md b/paimon-benchmark/paimon-cluster-benchmark/README.md
index 5d15b3a61..497f10f65 100644
--- a/paimon-benchmark/paimon-cluster-benchmark/README.md
+++ b/paimon-benchmark/paimon-cluster-benchmark/README.md
@@ -1,6 +1,6 @@
-# Flink Table Store Benchmark
+# Paimon Benchmark
 
-This is the cluster benchmark module for Flink Table Store. Inspired by [Nexmark](https://github.com/nexmark/nexmark).
+This is the cluster benchmark module for Paimon. Inspired by [Nexmark](https://github.com/nexmark/nexmark).
 
 ## How To Run
 ### Environment Preparation
diff --git a/paimon-benchmark/paimon-micro-benchmarks/pom.xml b/paimon-benchmark/paimon-micro-benchmarks/pom.xml
index a242d1c49..d1d5380dd 100644
--- a/paimon-benchmark/paimon-micro-benchmarks/pom.xml
+++ b/paimon-benchmark/paimon-micro-benchmarks/pom.xml
@@ -116,7 +116,7 @@ under the License.
             <scope>provided</scope>
         </dependency>
 
-        <!-- Flink Table Store dependencies -->
+        <!-- Paimon dependencies -->
 
         <dependency>
             <groupId>org.apache.paimon</groupId>
diff --git a/paimon-common/src/main/java/org/apache/paimon/table/TableType.java b/paimon-common/src/main/java/org/apache/paimon/table/TableType.java
index e466d641e..0a5dda648 100644
--- a/paimon-common/src/main/java/org/apache/paimon/table/TableType.java
+++ b/paimon-common/src/main/java/org/apache/paimon/table/TableType.java
@@ -27,10 +27,10 @@ import static org.apache.paimon.options.description.TextElement.text;
 public enum TableType implements DescribedEnum {
     MANAGED(
             "managed",
-            "Table Store owned table where the entire lifecycle of the table data is managed."),
+            "Paimon owned table where the entire lifecycle of the table data is managed."),
     EXTERNAL(
             "external",
-            "The table where Table Store has loose coupling with the data stored in external locations.");
+            "The table where Paimon has loose coupling with the data stored in external locations.");
 
     private final String value;
     private final String description;
diff --git a/paimon-core/src/main/java/org/apache/paimon/io/DataFileMeta.java b/paimon-core/src/main/java/org/apache/paimon/io/DataFileMeta.java
index 39fbfe036..9b547779e 100644
--- a/paimon-core/src/main/java/org/apache/paimon/io/DataFileMeta.java
+++ b/paimon-core/src/main/java/org/apache/paimon/io/DataFileMeta.java
@@ -197,10 +197,10 @@ public class DataFileMeta {
      * Usage:
      *
      * <ul>
-     *   <li>Table Store 0.2
+     *   <li>Paimon 0.2
      *       <ul>
      *         <li>Stores changelog files for {@link CoreOptions.ChangelogProducer#INPUT}. Changelog
-     *             files are moved to {@link NewFilesIncrement} since Table Store 0.3.
+     *             files are moved to {@link NewFilesIncrement} since Paimon 0.3.
      *       </ul>
      * </ul>
      */
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreScan.java
index 31deda6f3..044355c07 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreScan.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/AbstractFileStoreScan.java
@@ -261,7 +261,7 @@ public abstract class AbstractFileStoreScan implements FileStoreScan {
                     return snapshot.changelogManifests(manifestList);
                 }
 
-                // compatible with Table Store 0.2, we'll read extraFiles in DataFileMeta
+                // compatible with Paimon 0.2, we'll read extraFiles in DataFileMeta
                 // see comments on DataFileMeta#extraFiles
                 if (snapshot.commitKind() == Snapshot.CommitKind.APPEND) {
                     return snapshot.deltaManifests(manifestList);
diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreRead.java b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreRead.java
index b796b61af..3a056fa8a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreRead.java
+++ b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreRead.java
@@ -159,7 +159,7 @@ public class KeyValueFileStoreRead implements FileStoreRead<KeyValue> {
             for (DataFileMeta file : split.files()) {
                 suppliers.add(
                         () -> {
-                            // We need to check extraFiles to be compatible with Table Store 0.2.
+                            // We need to check extraFiles to be compatible with Paimon 0.2.
                             // See comments on DataFileMeta#extraFiles.
                             String fileName = changelogFile(file).orElse(file.fileName());
                             return readerFactory.createRecordReader(
diff --git a/paimon-docs/README.md b/paimon-docs/README.md
index f8fabf8a2..b6fa96fb9 100644
--- a/paimon-docs/README.md
+++ b/paimon-docs/README.md
@@ -19,7 +19,7 @@ under the License.
 
 # Documentation generators
 
-This module contains generators that create HTML files directly from Flink Table Store's source code.
+This module contains generators that create HTML files directly from Paimon's source code.
 
 ## Configuration documentation
 
diff --git a/paimon-flink/paimon-flink-1.14/pom.xml b/paimon-flink/paimon-flink-1.14/pom.xml
index e6dec3289..faf88fca0 100644
--- a/paimon-flink/paimon-flink-1.14/pom.xml
+++ b/paimon-flink/paimon-flink-1.14/pom.xml
@@ -146,7 +146,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-flink-common</include>
+                                    <include>org.apache.paimon:paimon-flink-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
index 57b707b09..a742f7f02 100644
--- a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
@@ -25,7 +25,7 @@ import org.apache.flink.table.data.RowData;
 
 import java.util.function.Function;
 
-/** Table Store {@link DataStreamScanProvider}. */
+/** Paimon {@link DataStreamScanProvider}. */
 public class TableStoreDataStreamScanProvider implements DataStreamScanProvider {
 
     private final boolean isBounded;
diff --git a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
index f915df85b..6d72489be 100644
--- a/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
+++ b/paimon-flink/paimon-flink-1.14/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
@@ -25,7 +25,7 @@ import org.apache.flink.table.data.RowData;
 
 import java.util.function.Function;
 
-/** Table Store {@link DataStreamSinkProvider}. */
+/** Paimon {@link DataStreamSinkProvider}. */
 public class TableStoreDataStreamSinkProvider implements DataStreamSinkProvider {
 
     private final Function<DataStream<RowData>, DataStreamSink<?>> producer;
diff --git a/paimon-flink/paimon-flink-1.15/pom.xml b/paimon-flink/paimon-flink-1.15/pom.xml
index 11b6c9808..44a81194d 100644
--- a/paimon-flink/paimon-flink-1.15/pom.xml
+++ b/paimon-flink/paimon-flink-1.15/pom.xml
@@ -153,7 +153,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-flink-common</include>
+                                    <include>org.apache.paimon:paimon-flink-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-flink/paimon-flink-1.16/pom.xml b/paimon-flink/paimon-flink-1.16/pom.xml
index e091ea14d..c42ae213d 100644
--- a/paimon-flink/paimon-flink-1.16/pom.xml
+++ b/paimon-flink/paimon-flink-1.16/pom.xml
@@ -60,7 +60,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-flink-common</include>
+                                    <include>org.apache.paimon:paimon-flink-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-flink/paimon-flink-common/pom.xml b/paimon-flink/paimon-flink-common/pom.xml
index e0d7380fa..54e3ecd28 100644
--- a/paimon-flink/paimon-flink-common/pom.xml
+++ b/paimon-flink/paimon-flink-common/pom.xml
@@ -256,10 +256,10 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-common</include>
-                                    <include>org.apache.flink:paimon-core</include>
-                                    <include>org.apache.flink:paimon-format</include>
-                                    <include>org.apache.flink:paimon-codegen-loader</include>
+                                    <include>org.apache.paimon:paimon-common</include>
+                                    <include>org.apache.paimon:paimon-core</include>
+                                    <include>org.apache.paimon:paimon-format</include>
+                                    <include>org.apache.paimon:paimon-codegen-loader</include>
                                 </includes>
                             </artifactSet>
                             <relocations>
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
index 5b53e2239..f73317c55 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
@@ -204,7 +204,7 @@ public class FlinkCatalog extends AbstractCatalog {
         if (options.containsKey(CONNECTOR.key())) {
             throw new CatalogException(
                     String.format(
-                            "Table Store Catalog only supports paimon tables, not '%s' connector."
+                            "Paimon Catalog only supports paimon tables, not '%s' connector."
                                     + " You can create TEMPORARY table instead.",
                             options.get(CONNECTOR.key())));
         }
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
index b76bb9740..7ab932352 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamScanProvider.java
@@ -26,7 +26,7 @@ import org.apache.flink.table.data.RowData;
 
 import java.util.function.Function;
 
-/** Table Store {@link DataStreamScanProvider}. */
+/** Paimon {@link DataStreamScanProvider}. */
 public class TableStoreDataStreamScanProvider implements DataStreamScanProvider {
 
     private final boolean isBounded;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
index 2b3e9cc94..fa4c6da7b 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/TableStoreDataStreamSinkProvider.java
@@ -26,7 +26,7 @@ import org.apache.flink.table.data.RowData;
 
 import java.util.function.Function;
 
-/** Table Store {@link DataStreamSinkProvider}. */
+/** Paimon {@link DataStreamSinkProvider}. */
 public class TableStoreDataStreamSinkProvider implements DataStreamSinkProvider {
 
     private final Function<DataStream<RowData>, DataStreamSink<?>> producer;
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/ActionBase.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/ActionBase.java
index af46bb1d1..7d5e935f9 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/ActionBase.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/action/ActionBase.java
@@ -103,7 +103,7 @@ public abstract class ActionBase implements Action {
 
     /**
      * Extract {@link LogicalType}s from Flink {@link org.apache.flink.table.types.DataType}s and
-     * convert to Table Store {@link DataType}s.
+     * convert to Paimon {@link DataType}s.
      */
     protected List<DataType> toTableStoreDataTypes(
             List<org.apache.flink.table.types.DataType> flinkDataTypes) {
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkSink.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkSink.java
index 488f93269..35aa6fa6f 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkSink.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/FlinkSink.java
@@ -140,12 +140,12 @@ public abstract class FlinkSink implements Serializable {
     private void assertCheckpointConfiguration(StreamExecutionEnvironment env) {
         Preconditions.checkArgument(
                 !env.getCheckpointConfig().isUnalignedCheckpointsEnabled(),
-                "Table Store sink currently does not support unaligned checkpoints. Please set "
+                "Paimon sink currently does not support unaligned checkpoints. Please set "
                         + ExecutionCheckpointingOptions.ENABLE_UNALIGNED.key()
                         + " to false.");
         Preconditions.checkArgument(
                 env.getCheckpointConfig().getCheckpointingMode() == CheckpointingMode.EXACTLY_ONCE,
-                "Table Store sink currently only supports EXACTLY_ONCE checkpoint mode. Please set "
+                "Paimon sink currently only supports EXACTLY_ONCE checkpoint mode. Please set "
                         + ExecutionCheckpointingOptions.CHECKPOINTING_MODE.key()
                         + " to exactly-once");
     }
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogWithKeyFileStoreTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogWithKeyFileStoreTableITCase.java
index e65dabbd4..8aa129e0b 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogWithKeyFileStoreTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ChangelogWithKeyFileStoreTableITCase.java
@@ -96,6 +96,7 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
     // ------------------------------------------------------------------------
 
     @Test
+    @Timeout(600)
     public void testFullCompactionTriggerInterval() throws Exception {
         innerTestChangelogProducing(
                 Arrays.asList(
@@ -104,6 +105,7 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
     }
 
     @Test
+    @Timeout(600)
     public void testFullCompactionWithLongCheckpointInterval() throws Exception {
         // create table
         TableEnvironment bEnv = createBatchTableEnvironment();
@@ -167,6 +169,7 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
     }
 
     @Test
+    @Timeout(600)
     public void testLookupChangelog() throws Exception {
         innerTestChangelogProducing(Collections.singletonList("'changelog-producer' = 'lookup'"));
     }
@@ -245,14 +248,14 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
     // ------------------------------------------------------------------------
 
     @Test
-    @Timeout(600000)
+    @Timeout(600)
     public void testNoChangelogProducerBatchRandom() throws Exception {
         TableEnvironment bEnv = createBatchTableEnvironment();
         testNoChangelogProducerRandom(bEnv, 1, false);
     }
 
     @Test
-    @Timeout(600000)
+    @Timeout(600)
     public void testNoChangelogProducerStreamingRandom() throws Exception {
         ThreadLocalRandom random = ThreadLocalRandom.current();
         TableEnvironment sEnv = createStreamingTableEnvironment(random.nextInt(900) + 100);
@@ -260,14 +263,14 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
     }
 
     @Test
-    @Timeout(600000)
+    @Timeout(600)
     public void testFullCompactionChangelogProducerBatchRandom() throws Exception {
         TableEnvironment bEnv = createBatchTableEnvironment();
         testFullCompactionChangelogProducerRandom(bEnv, 1, false);
     }
 
     @Test
-    @Timeout(600000)
+    @Timeout(600)
     public void testFullCompactionChangelogProducerStreamingRandom() throws Exception {
         ThreadLocalRandom random = ThreadLocalRandom.current();
         TableEnvironment sEnv = createStreamingTableEnvironment(random.nextInt(900) + 100);
@@ -275,7 +278,7 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
     }
 
     @Test
-    @Timeout(600000)
+    @Timeout(600)
     public void testStandAloneFullCompactJobRandom() throws Exception {
         ThreadLocalRandom random = ThreadLocalRandom.current();
         TableEnvironment sEnv = createStreamingTableEnvironment(random.nextInt(900) + 100);
@@ -283,14 +286,14 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
     }
 
     @Test
-    @Timeout(600000)
+    @Timeout(600)
     public void testLookupChangelogProducerBatchRandom() throws Exception {
         TableEnvironment bEnv = createBatchTableEnvironment();
         testLookupChangelogProducerRandom(bEnv, 1, false);
     }
 
     @Test
-    @Timeout(600000)
+    @Timeout(600)
     public void testLookupChangelogProducerStreamingRandom() throws Exception {
         ThreadLocalRandom random = ThreadLocalRandom.current();
         TableEnvironment sEnv = createStreamingTableEnvironment(random.nextInt(900) + 100);
@@ -298,7 +301,7 @@ public class ChangelogWithKeyFileStoreTableITCase extends AbstractTestBase {
     }
 
     @Test
-    @Timeout(600000)
+    @Timeout(600)
     public void testStandAloneLookupJobRandom() throws Exception {
         ThreadLocalRandom random = ThreadLocalRandom.current();
         TableEnvironment sEnv = createStreamingTableEnvironment(random.nextInt(900) + 100);
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FlinkCatalogTest.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FlinkCatalogTest.java
index cdf5b75fe..45c8d9706 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FlinkCatalogTest.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/FlinkCatalogTest.java
@@ -212,7 +212,7 @@ public class FlinkCatalogTest {
         assertThatThrownBy(() -> catalog.createTable(this.path1, newTable, false))
                 .isInstanceOf(CatalogException.class)
                 .hasMessageContaining(
-                        "Table Store Catalog only supports paimon tables,"
+                        "Paimon Catalog only supports paimon tables,"
                                 + " not 'filesystem' connector. You can create TEMPORARY table instead.");
     }
 
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ReadWriteTableITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ReadWriteTableITCase.java
index 952f5ed3c..1d823b378 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ReadWriteTableITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/ReadWriteTableITCase.java
@@ -81,7 +81,7 @@ import static org.apache.paimon.flink.util.ReadWriteTableTestUtil.validateStream
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
-/** Table Store reading and writing IT cases. */
+/** Paimon reading and writing IT cases. */
 public class ReadWriteTableITCase extends AbstractTestBase {
 
     private final Map<String, String> streamingReadOverwrite =
diff --git a/paimon-hive/paimon-hive-catalog/pom.xml b/paimon-hive/paimon-hive-catalog/pom.xml
index d6426e17b..ae42a3511 100644
--- a/paimon-hive/paimon-hive-catalog/pom.xml
+++ b/paimon-hive/paimon-hive-catalog/pom.xml
@@ -577,7 +577,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes>
-                                    <include>org.apache.flink:paimon-hive-common</include>
+                                    <include>org.apache.paimon:paimon-hive-common</include>
                                     <include>org.apache.thrift:libthrift</include>
                                     <include>org.apache.thrift:libfb303</include>
                                     <include>com.google.guava:guava</include>
diff --git a/paimon-hive/paimon-hive-connector-2.1-cdh-6.3/pom.xml b/paimon-hive/paimon-hive-connector-2.1-cdh-6.3/pom.xml
index 5bd77abad..37612f6ae 100644
--- a/paimon-hive/paimon-hive-connector-2.1-cdh-6.3/pom.xml
+++ b/paimon-hive/paimon-hive-connector-2.1-cdh-6.3/pom.xml
@@ -60,7 +60,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-hive-connector-common</include>
+                                    <include>org.apache.paimon:paimon-hive-connector-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-hive/paimon-hive-connector-2.1/pom.xml b/paimon-hive/paimon-hive-connector-2.1/pom.xml
index 05dde38d5..ba17c2e3f 100644
--- a/paimon-hive/paimon-hive-connector-2.1/pom.xml
+++ b/paimon-hive/paimon-hive-connector-2.1/pom.xml
@@ -60,7 +60,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-hive-connector-common</include>
+                                    <include>org.apache.paimon:paimon-hive-connector-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-hive/paimon-hive-connector-2.2/pom.xml b/paimon-hive/paimon-hive-connector-2.2/pom.xml
index 71ad5496c..6a391ce3d 100644
--- a/paimon-hive/paimon-hive-connector-2.2/pom.xml
+++ b/paimon-hive/paimon-hive-connector-2.2/pom.xml
@@ -60,7 +60,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-hive-connector-common</include>
+                                    <include>org.apache.paimon:paimon-hive-connector-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-hive/paimon-hive-connector-2.3/pom.xml b/paimon-hive/paimon-hive-connector-2.3/pom.xml
index aa2f41611..1c4e8de9d 100644
--- a/paimon-hive/paimon-hive-connector-2.3/pom.xml
+++ b/paimon-hive/paimon-hive-connector-2.3/pom.xml
@@ -60,7 +60,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-hive-connector-common</include>
+                                    <include>org.apache.paimon:paimon-hive-connector-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-hive/paimon-hive-connector-3.1/pom.xml b/paimon-hive/paimon-hive-connector-3.1/pom.xml
index af9578398..f81685668 100644
--- a/paimon-hive/paimon-hive-connector-3.1/pom.xml
+++ b/paimon-hive/paimon-hive-connector-3.1/pom.xml
@@ -98,7 +98,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-hive-connector-common</include>
+                                    <include>org.apache.paimon:paimon-hive-connector-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-hive/paimon-hive-connector-common/pom.xml b/paimon-hive/paimon-hive-connector-common/pom.xml
index 199262020..304971121 100644
--- a/paimon-hive/paimon-hive-connector-common/pom.xml
+++ b/paimon-hive/paimon-hive-connector-common/pom.xml
@@ -520,8 +520,8 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-hive-common</include>
-                                    <include>org.apache.flink:paimon-shade</include>
+                                    <include>org.apache.paimon:paimon-hive-common</include>
+                                    <include>org.apache.paimon:paimon-shade</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
index 06e3e77e9..8ac166f9c 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/HiveSchema.java
@@ -142,9 +142,7 @@ public class HiveSchema {
                                 : schemaNames.get(i) + " " + schemaTypeInfos.get(i).getTypeName();
                 mismatched.add(
                         String.format(
-                                "Field #%d\n"
-                                        + "Hive DDL          : %s\n"
-                                        + "Table Store Schema: %s\n",
+                                "Field #%d\n" + "Hive DDL          : %s\n" + "Paimon Schema: %s\n",
                                 i, ddlField, schemaField));
             }
         }
diff --git a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java
index c793e9688..3d6e0163b 100644
--- a/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java
+++ b/paimon-hive/paimon-hive-connector-common/src/main/java/org/apache/paimon/hive/TableStoreHiveMetaHook.java
@@ -35,7 +35,7 @@ public class TableStoreHiveMetaHook implements HiveMetaHook {
     public void preCreateTable(Table table) throws MetaException {
         Preconditions.checkArgument(
                 !table.isSetPartitionKeys() || table.getPartitionKeys().isEmpty(),
-                "Flink Table Store currently does not support creating partitioned table "
+                "Paimon currently does not support creating partitioned table "
                         + "with PARTITIONED BY clause. If you want to query from a partitioned table, "
                         + "please add partition columns into the ordinary table columns.");
 
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
index 0f2f9d775..c5c44a036 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/HiveTableSchemaTest.java
@@ -119,11 +119,11 @@ public class HiveTableSchemaTest {
                         "Mismatched fields are:",
                         "Field #1",
                         "Hive DDL          : mismatched string",
-                        "Table Store Schema: b string",
+                        "Paimon Schema: b string",
                         "--------------------",
                         "Field #2",
                         "Hive DDL          : c decimal(6,3)",
-                        "Table Store Schema: c decimal(5,3)");
+                        "Paimon Schema: c decimal(5,3)");
         IllegalArgumentException exception =
                 assertThrows(
                         IllegalArgumentException.class, () -> HiveSchema.extract(null, properties));
@@ -148,11 +148,11 @@ public class HiveTableSchemaTest {
                         "Mismatched fields are:",
                         "Field #1",
                         "Hive DDL          : null",
-                        "Table Store Schema: b string",
+                        "Paimon Schema: b string",
                         "--------------------",
                         "Field #2",
                         "Hive DDL          : null",
-                        "Table Store Schema: c decimal(5,3)");
+                        "Paimon Schema: c decimal(5,3)");
         IllegalArgumentException exception =
                 assertThrows(
                         IllegalArgumentException.class, () -> HiveSchema.extract(null, properties));
@@ -186,11 +186,11 @@ public class HiveTableSchemaTest {
                         "Mismatched fields are:",
                         "Field #3",
                         "Hive DDL          : d int",
-                        "Table Store Schema: null",
+                        "Paimon Schema: null",
                         "--------------------",
                         "Field #4",
                         "Hive DDL          : e string",
-                        "Table Store Schema: null");
+                        "Paimon Schema: null");
         IllegalArgumentException exception =
                 assertThrows(
                         IllegalArgumentException.class, () -> HiveSchema.extract(null, properties));
diff --git a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
index f9ce13c77..4e095f7e1 100644
--- a/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
+++ b/paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/SearchArgumentToPredicateConverterTest.java
@@ -65,9 +65,9 @@ public class SearchArgumentToPredicateConverterTest {
                 Decimal.fromBigDecimal(new BigDecimal("123456789123456789.123456789"), 27, 9));
         testLiteral(
                 PredicateLeaf.Type.STRING,
-                "Table Store",
+                "Paimon",
                 DataTypes.STRING(),
-                BinaryString.fromString("Table Store"));
+                BinaryString.fromString("Paimon"));
         testLiteral(PredicateLeaf.Type.DATE, Date.valueOf("1971-01-11"), DataTypes.DATE(), 375);
         testLiteral(
                 PredicateLeaf.Type.TIMESTAMP,
diff --git a/paimon-shade/pom.xml b/paimon-shade/pom.xml
index 67451b585..1665d7496 100644
--- a/paimon-shade/pom.xml
+++ b/paimon-shade/pom.xml
@@ -116,11 +116,11 @@ under the License.
                                     <include>org.apache.flink:flink-shaded-guava</include>
                                     <include>org.apache.flink:flink-shaded-asm-9</include>
 
-                                    <!-- Flink Table Store -->
-                                    <include>org.apache.flink:paimon-common</include>
-                                    <include>org.apache.flink:paimon-core</include>
-                                    <include>org.apache.flink:paimon-format</include>
-                                    <include>org.apache.flink:paimon-codegen-loader</include>
+                                    <!-- Paimon -->
+                                    <include>org.apache.paimon:paimon-common</include>
+                                    <include>org.apache.paimon:paimon-core</include>
+                                    <include>org.apache.paimon:paimon-format</include>
+                                    <include>org.apache.paimon:paimon-codegen-loader</include>
 
                                     <!-- Others, not shade to reduce conflicting -->
                                     <!-- <include>org.xerial.snappy:snappy-java</include> -->
diff --git a/paimon-spark/paimon-spark-2/pom.xml b/paimon-spark/paimon-spark-2/pom.xml
index 34dd7dc1c..cb1c1b3a1 100644
--- a/paimon-spark/paimon-spark-2/pom.xml
+++ b/paimon-spark/paimon-spark-2/pom.xml
@@ -101,7 +101,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-spark-common</include>
+                                    <include>org.apache.paimon:paimon-spark-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-spark/paimon-spark-3.1/pom.xml b/paimon-spark/paimon-spark-3.1/pom.xml
index 6ed901dc2..7ce4d063f 100644
--- a/paimon-spark/paimon-spark-3.1/pom.xml
+++ b/paimon-spark/paimon-spark-3.1/pom.xml
@@ -74,7 +74,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-spark-common</include>
+                                    <include>org.apache.paimon:paimon-spark-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-spark/paimon-spark-3.2/pom.xml b/paimon-spark/paimon-spark-3.2/pom.xml
index ee7c85f78..a77367b7c 100644
--- a/paimon-spark/paimon-spark-3.2/pom.xml
+++ b/paimon-spark/paimon-spark-3.2/pom.xml
@@ -74,7 +74,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-spark-common</include>
+                                    <include>org.apache.paimon:paimon-spark-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-spark/paimon-spark-3.3/pom.xml b/paimon-spark/paimon-spark-3.3/pom.xml
index a0bc22fb2..44ee2427f 100644
--- a/paimon-spark/paimon-spark-3.3/pom.xml
+++ b/paimon-spark/paimon-spark-3.3/pom.xml
@@ -74,7 +74,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-spark-common</include>
+                                    <include>org.apache.paimon:paimon-spark-common</include>
                                 </includes>
                             </artifactSet>
                         </configuration>
diff --git a/paimon-spark/paimon-spark-common/pom.xml b/paimon-spark/paimon-spark-common/pom.xml
index c898a8f9a..91c4d66b0 100644
--- a/paimon-spark/paimon-spark-common/pom.xml
+++ b/paimon-spark/paimon-spark-common/pom.xml
@@ -74,7 +74,7 @@ under the License.
                         <configuration>
                             <artifactSet>
                                 <includes combine.children="append">
-                                    <include>org.apache.flink:paimon-shade</include>
+                                    <include>org.apache.paimon:paimon-shade</include>
                                 </includes>
                             </artifactSet>
                         </configuration>