Doris 動的パーティション テーブルの新しいパーティションの問題

問題の説明:

        最近 doris を勉強していて、今日動的パーティション テーブルを作成しました。テーブル作成ステートメントの構成パラメーターは次のとおりです。

PROPERTIES(
    "dynamic_partition.enable" = "true",
    "dynamic_partition.time_unit" = "DAY",
    "dynamic_partition.end" = "3",
    "dynamic_partition.prefix" = "p",
    "dynamic_partition.buckets" = "2",
    "replication_allocation" = "tag.location.default: 1"
);

"dynamic_partition.end" = "3" パラメータは 3 に設定されており、dynamic_partition.start パラメータは設定されていないため、テーブルが構築された後、次のコマンドを実行します。

SHOW PARTITIONS FROM ods_test_d

現在のパーティション数を次のように確認します。

 今日は 20230720 であり、これらのパーティションはパラメーター ルールに従って生成されました。

2つのデータを自由に挿入しても問題ないので、20230724というデータを作成します。挿入するとエラーが報告されます。エラーは次のとおりです。

SQL 错误 [5025] [HY000]: Insert has filtered data in strict mode, tracking_url=

このパスを開くと、以下に示すように、テーブルにそのようなパーティションが存在しないことがエラーの原因であることがわかります。

突然の気づき!

結論は:

Doris 動的パーティション テーブルは、挿入されたデータの動的パーティション キーの値に基づいて対応するパーティションを追加しません。代わりに、パラメーター "dynamic_partition.end" = " の構成に基づいて、次の N 日間のパーティションを毎日作成します。ここでの構成は 3 なので、今日は 20230720 ~ 20230723 のパーティションが作成されました。 20230724 のパーティションは明日まで作成されません。明日作成されるかどうかを確認します。

私のようなバカはいますか/(ㄒoㄒ)/~~

Doris 公式ドキュメントのアドレスを添付します。

Doris の紹介 - Apache Doris

================================================= =======================

追記

確かに翌日には 20230724 のパーティションが自動的に作成されました。

 

おすすめ

転載: blog.csdn.net/weixin_42258633/article/details/131838683