{"id":4277,"date":"2025-12-23T16:53:32","date_gmt":"2025-12-23T08:53:32","guid":{"rendered":"https:\/\/aws-oncloudai.com\/?p=4277"},"modified":"2025-12-23T16:53:32","modified_gmt":"2025-12-23T08:53:32","slug":"aws-iceberg-a-key-tabular-choice-for-building-modern-data-lakes","status":"publish","type":"post","link":"https:\/\/aws-oncloudai.com\/zh_hk\/aws-iceberg-a-key-tabular-choice-for-building-modern-data-lakes\/","title":{"rendered":"AWS Iceberg\uff1a\u5efa\u69cb\u73fe\u4ee3\u8cc7\u6599\u6e56\u7684\u95dc\u9375\u8868\u683c\u5f0f\u9078\u64c7"},"content":{"rendered":"<p>\u5728\u4f01\u696d\u5168\u9762\u9081\u5411\u8cc7\u6599\u9a45\u52d5\u7684\u904e\u7a0b\u4e2d\uff0c<strong>\u8cc7\u6599\u6e56<\/strong>\u65e9\u5df2\u6210\u70ba\u627f\u8f09\u6d77\u91cf\u696d\u52d9\u6578\u64da\u7684\u57fa\u790e\u8a2d\u65bd\u3002\u7136\u800c\uff0c\u8d8a\u4f86\u8d8a\u591a\u4f01\u696d\u5728\u5be6\u52d9\u4e2d\u767c\u73fe\uff1a<\/p>\n<p><strong>\u201c\u6578\u64da\u80fd\u5b58\u9032S3\uff0c\u4e26\u4e0d\u7b49\u65bc\u6578\u64da\u5c31\u597d\u7528\u3002\u201d<\/strong><\/p>\n<p>\u8868\u7d50\u69cb\u96e3\u4ee5\u6f14\u9032\u3001\u66f4\u65b0\u522a\u9664\u6210\u672c\u9ad8\u3001\u591a\u5f15\u64ce\u4e26\u767c\u5b58\u53d6\u885d\u7a81\u3001\u6b77\u53f2\u8cc7\u6599\u7121\u6cd5\u56de\u6eaf\u2026\u2026\u9019\u4e9b\u554f\u984c\uff0c\u8b93\u50b3\u7d71\u8cc7\u6599\u6e56\u9010\u6f38\u6210\u70ba\u65b0\u7684\u6280\u8853\u8ca0\u64d4\u3002<\/p>\n<p>\u5728\u9019\u4e00\u80cc\u666f\u4e0b\uff0c<strong>Apache Iceberg<\/strong> \u6b63\u9010\u6b65\u6210\u70baAWS \u5b98\u65b9\u91cd\u9ede\u652f\u63f4\u7684\u73fe\u4ee3\u8cc7\u6599\u6e56\u8868\u683c\u5f0f\u4e4b\u4e00\uff0c\u800c\u570d\u7e5e\u5b83\u5efa\u69cb\u7684 <strong>AWS Iceberg \u65b9\u6848<\/strong>\uff0c\u4e5f\u6b63\u5728\u6210\u70ba\u4f01\u696d\u8cc7\u6599\u5e73\u53f0\u5347\u7d1a\u7684\u91cd\u8981\u65b9\u5411\u3002<\/p>\n<p>&nbsp;<\/p>\n<h4>\u4ec0\u9ebc\u662fAWS Iceberg\uff1f<\/h4>\n<p>\u9700\u8981\u5148\u6f84\u6e05\u7684\u662f\uff1a<\/p>\n<p><strong>AWS Iceberg \u4e26\u975e\u55ae\u7368\u7684AWS \u670d\u52d9\u3002<\/strong><\/p>\n<p>\u901a\u5e38\u6240\u8aaa\u7684 <strong>AWS Iceberg<\/strong>\uff0c\u6307\u7684\u662f\u5728AWS \u96f2\u7aef\u4e0a\uff0c\u57fa\u65bc <strong>Apache Iceberg \u8868\u683c\u5f0f<\/strong>\uff0c\u7d50\u5408\u591a\u9805AWS \u539f\u751f\u670d\u52d9\u6240\u5efa\u69cb\u7684\u73fe\u4ee3\u8cc7\u6599\u6e56\u67b6\u69cb\uff0c\u4f8b\u5982\uff1a<\/p>\n<ul>\n<li><strong>Amazon S3<\/strong>\uff1a\u5e95\u5c64\u8cc7\u6599\u5b58\u5132<\/li>\n<li><strong>Apache Iceberg<\/strong>\uff1a\u8868\u683c\u5f0f\u8207\u5143\u8cc7\u6599\u7ba1\u7406\u898f\u7bc4<\/li>\n<li><strong>AWS Glue Data Catalog<\/strong>\uff1a\u7d71\u4e00\u5143\u8cc7\u6599\u76ee\u9304<\/li>\n<li><strong>Amazon Athena \/ EMR \/ Redshift<\/strong>\uff1a\u67e5\u8a62\u8207\u8a08\u7b97\u5f15\u64ce<\/li>\n<\/ul>\n<p>\u9019\u7a2e\u67b6\u69cb\u65e2\u4fdd\u7559\u4e86\u8cc7\u6599\u6e56\u7684\u4f4e\u6210\u672c\u8207\u9ad8\u64f4\u5c55\u6027\uff0c\u4e5f\u5f15\u5165\u4e86\u63a5\u8fd1\u8cc7\u6599\u5009\u5132\u5c64\u7d1a\u7684\u7ba1\u7406\u8207\u4e00\u81f4\u6027\u80fd\u529b\u3002<\/p>\n<p>&nbsp;<\/p>\n<h4>\u70ba\u4ec0\u9ebc\u50b3\u7d71\u8cc7\u6599\u6e56\u8d8a\u4f86\u8d8a\u300c\u96e3\u7528\u300d\uff1f<\/h4>\n<p>\u5728\u8a31\u591a\u4f01\u696d\u4e2d\uff0c\u50b3\u7d71\u8cc7\u6599\u6e56\u901a\u5e38\u662f\uff1a<\/p>\n<p>S3 + Parquet + Hive Metastore<\/p>\n<p>\u9019\u7a2e\u6a21\u5f0f\u5728\u65e9\u671f\u975e\u5e38\u6709\u6548\uff0c\u4f46\u96a8\u8457\u8cc7\u6599\u898f\u6a21\u548c\u696d\u52d9\u8907\u96dc\u5ea6\u63d0\u5347\uff0c\u554f\u984c\u9010\u6f38\u986f\u73fe\uff1a<\/p>\n<ul>\n<li><strong>\u53ea\u652f\u63f4\u8ffd\u52a0\u5beb\uff0c\u66f4\u65b0\u522a\u9664\u6975\u70ba\u56f0\u96e3<\/strong><\/li>\n<li>\u5206\u5340\u8a2d\u8a08\u4e00\u65e6\u4e0d\u5408\u7406\uff0c\u5f8c\u671f\u5e7e\u4e4e\u7121\u6cd5\u8abf\u6574<\/li>\n<li>\u67e5\u8a62\u5f15\u64ce\u9700\u8981\u6383\u63cf\u5927\u91cf\u7121\u95dc\u6587\u4ef6\uff0c\u6548\u80fd\u4e0d\u53ef\u63a7<\/li>\n<li>\u591a\u500b\u5f15\u64ce\u4e26\u767c\u5beb\u5165\uff0c\u5bb9\u6613\u7522\u751f\u8cc7\u6599\u4e0d\u4e00\u81f4<\/li>\n<\/ul>\n<p>\u9019\u4e9b\u75db\u9ede\uff0c\u4e26\u4e0d\u662f\u5132\u5b58\u6216\u7b97\u529b\u4e0d\u8db3\u9020\u6210\u7684\uff0c\u800c\u662f<strong>\u8868\u7ba1\u7406\u80fd\u529b\u7f3a\u5931<\/strong>\u3002<\/p>\n<p>&nbsp;<\/p>\n<h4>Apache Iceberg \u5e36\u4f86\u4e86\u54ea\u4e9b\u95dc\u9375\u80fd\u529b\uff1f<\/h4>\n<p>Apache Iceberg \u7684\u6838\u5fc3\u50f9\u503c\uff0c\u5728\u65bc\u5b83\u70ba\u8cc7\u6599\u6e56\u5f15\u5165\u4e86\u4e00\u5957<strong>\u6a19\u6e96\u5316\u3001\u5f15\u64ce\u7121\u95dc\u7684\u8868\u683c\u7ba1\u7406\u6a5f\u5236<\/strong>\u3002<\/p>\n<h5>1. \u771f\u6b63\u652f\u63f4UPDATE \/ DELETE \/ MERGE<\/h5>\n<p>Iceberg \u652f\u63f4\u884c\u5c64\u7d1a\u7684\u8cc7\u6599\u4fee\u6539\uff0c\u800c\u4e0d\u9700\u8981\u91cd\u5beb\u6574\u5f35\u8868\uff1a<\/p>\n<ul>\n<li>\u9069\u7528\u65bc\u8a02\u55ae\u4fee\u6b63\u3001\u72c0\u614b\u8b8a\u66f4\u3001\u8cc7\u6599\u7cfe\u932f\u7b49\u5834\u666f<\/li>\n<li>\u5c0d\u696d\u52d9\u5206\u6790\u7cfb\u7d71\u66f4\u52a0\u53cb\u5584<\/li>\n<\/ul>\n<h5>2. Time Travel\uff08\u6642\u9593\u65c5\u884c\uff09<\/h5>\n<p>Iceberg \u6703\u5132\u5b58\u8868\u683c\u7684\u6b77\u53f2\u5feb\u7167\uff0c\u652f\u63f4\uff1a<\/p>\n<ul>\n<li>\u67e5\u8a62\u6b77\u53f2\u7248\u672c\u6578\u64da<\/li>\n<li>\u6578\u64da\u5be9\u8a08<\/li>\n<li>\u56de\u6efe\u8aa4\u64cd\u4f5c<\/li>\n<\/ul>\n<p>\u9019\u5728\u5408\u898f\u3001\u91d1\u878d\u3001\u8cc7\u6599\u6cbb\u7406\u5834\u666f\u4e2d\u5c24\u5176\u91cd\u8981\u3002<\/p>\n<h5>3. \u9ad8\u6548\u80fd\u67e5\u8a62\u8207\u96b1\u85cf\u6a94\u6848\u8907\u96dc\u5ea6<\/h5>\n<p>Iceberg \u900f\u904e\u7dad\u8b77\u5b8c\u6574\u7684\u5143\u8cc7\u6599\uff08\u6a94\u6848\u6e05\u55ae\u3001\u5206\u5340\u8cc7\u8a0a\u3001\u7d71\u8a08\u8cc7\u6599\uff09\uff1a<\/p>\n<ul>\n<li>\u67e5\u8a62\u5f15\u64ce\u7121\u9700\u6383\u63cfS3 \u76ee\u9304<\/li>\n<li>\u53ea\u8b80\u53d6\u771f\u6b63\u76f8\u95dc\u7684\u8cc7\u6599\u6587\u4ef6<\/li>\n<li>\u986f\u8457\u63d0\u5347Athena\u3001Trino\u3001Spark \u7684\u67e5\u8a62\u6548\u7387<\/li>\n<\/ul>\n<h5>4. \u591a\u5f15\u64ce\u4e26\u767c\u8a2a\u554f\uff0c\u907f\u514d\u5ee0\u5546\u9396\u5b9a<\/h5>\n<p>\u540c\u4e00\u4efdIceberg \u8868\u53ef\u4ee5\u88ab\uff1a<\/p>\n<ul>\n<li>Athena \u67e5\u8a62<\/li>\n<li>EMR Spark \u5beb\u5165<\/li>\n<li>Redshift Spectrum \u5206\u6790<\/li>\n<\/ul>\n<p>\u800c\u7121\u9700\u70ba\u4e0d\u540c\u5f15\u64ce\u7dad\u8b77\u591a\u5957\u8cc7\u6599\u526f\u672c\uff0c\u9019\u5c0d\u65bc\u4f01\u696d\u9577\u671f\u67b6\u69cb\u6f14\u9032\u5c24\u70ba\u95dc\u9375\u3002<\/p>\n<h4><\/h4>\n<h4>AWS \u5c0dIceberg \u7684\u5b98\u65b9\u652f\u63f4\u60c5\u6cc1<\/h4>\n<p>AWS \u5df2\u5728\u591a\u500b\u6838\u5fc3\u670d\u52d9\u4e2d<strong>\u539f\u751f\u652f\u63f4Apache Iceberg<\/strong>\uff1a<\/p>\n<h5 style=\"padding-left: 40px;\"><strong>1.Amazon Athena<\/strong><\/h5>\n<ul>\n<li>\u539f\u751f\u652f\u63f4Iceberg \u8868<\/li>\n<li>\u652f\u63f4INSERT \/ UPDATE \/ DELETE \/ MERGE<\/li>\n<\/ul>\n<h5 style=\"padding-left: 40px;\"><strong>2.AWS Glue<\/strong><\/h5>\n<ul>\n<li>Glue Catalog \u4f5c\u70baIceberg \u7684\u5143\u8cc7\u6599\u76ee\u9304<\/li>\n<li>Glue Job\uff08Spark\uff09\u53ef\u76f4\u63a5\u8b80\u5bebIceberg \u8868<\/li>\n<\/ul>\n<h5 style=\"padding-left: 40px;\"><strong>3.Amazon EMR<\/strong><\/h5>\n<ul>\n<li>Spark \/ Trino \/ Flink \u5168\u9762\u652f\u6301Iceberg<\/li>\n<li><strong>Amazon Redshift<\/strong><\/li>\n<li>\u900f\u904eRedshift Spectrum \u67e5\u8a62Iceberg \u8868<\/li>\n<li>Redshift Serverless \u540c\u6a23\u9069\u7528<\/li>\n<\/ul>\n<p>\u9019\u610f\u5473\u8457\uff1a<\/p>\n<p><strong>Iceberg \u5df2\u4e0d\u518d\u662f\u201c\u5be6\u9a57\u6027\u9078\u64c7\u201d\uff0c\u800c\u662fAWS \u5b98\u65b9\u8a8d\u53ef\u7684\u4e3b\u6d41\u8cc7\u6599\u6e56\u65b9\u6848\u3002<\/strong><\/p>\n<h4>Iceberg \u9069\u5408\u54ea\u4e9b\u4f01\u696d\u5834\u666f\uff1f<\/h4>\n<p>\u5f9e\u6211\u5011\u5728\u5be6\u969b\u5ba2\u6236\u5c08\u6848\u4e2d\u7684\u7d93\u9a57\u4f86\u770b\uff0c\u4ee5\u4e0b\u5834\u666f\u975e\u5e38\u9069\u5408\u5f15\u5165AWS Iceberg\uff1a<\/p>\n<ul>\n<li>\u8cc7\u6599\u6e56\u8207\u8cc7\u6599\u5009\u5132\u4e00\u9ad4\u5316\u5efa\u8a2d<\/li>\n<li>\u9700\u8981\u983b\u7e41\u66f4\u65b0\u6216\u4fee\u6b63\u5206\u6790\u6578\u64da<\/li>\n<li>\u591a\u500b\u5206\u6790\u5f15\u64ce\u4e26\u884c\u4f7f\u7528\uff08BI + \u6578\u64da\u79d1\u5b78+ \u5373\u6642\u5206\u6790\uff09<\/li>\n<li>\u5e0c\u671b\u907f\u514d\u88ab\u55ae\u4e00\u8cc7\u6599\u5e73\u53f0\u6216\u5ee0\u5546\u6df1\u5ea6\u7d81\u5b9a<\/li>\n<li>\u5c0d\u8cc7\u6599\u6cbb\u7406\u3001\u5be9\u8a08\u3001\u53ef\u8ffd\u6eaf\u6027\u6709\u8981\u6c42\u7684\u4f01\u696d<\/li>\n<\/ul>\n<h4><\/h4>\n<h4>\u4f5c\u70baAWS \u4ee3\u7406\u5546<\/h4>\n<p>\u96d6\u7136Iceberg \u80fd\u529b\u5f37\u5927\uff0c\u4f46<strong>\u771f\u6b63\u7684\u6311\u6230\u5728\u65bc\u843d\u5730\u65b9\u6848\u8a2d\u8a08<\/strong>\uff1a<\/p>\n<ul>\n<li>\u8868\u5206\u5340\u8207\u6f14\u9032\u7b56\u7565\u5982\u4f55\u898f\u5283\uff1f<\/li>\n<li>\u5143\u8cc7\u6599\u898f\u6a21\u5982\u4f55\u63a7\u5236\uff1f<\/li>\n<li>Athena\u3001EMR\u3001Redshift \u5982\u4f55\u5408\u7406\u5206\u5de5\uff1f<\/li>\n<li>\u6210\u672c\u5982\u4f55\u5728S3\u3001\u904b\u7b97\u5f15\u64ce\u4e4b\u9593\u5e73\u8861\uff1f<\/li>\n<\/ul>\n<p>\u4f5c\u70ba <strong>AWS \u5b98\u65b9\u8a8d\u8b49\u4ee3\u7406\u5546<\/strong>\uff0c\u5728\u96f2\u7aef\u4e0a\u5728\u8cc7\u6599\u6e56\u8207\u5206\u6790\u5e73\u53f0\u5efa\u7f6e\u4e2d\uff0c\u901a\u5e38\u6703\u7d50\u5408\uff1a<\/p>\n<ul>\n<li>\u4f01\u696d\u696d\u52d9\u6a21\u578b\u8207\u67e5\u8a62\u6a21\u5f0f<\/li>\n<li>\u6210\u672c\u9810\u7b97\u8207\u7e3e\u6548\u76ee\u6a19<\/li>\n<li>\u73fe\u6709\u6578\u5009\u6216Hadoop \u9ad4\u7cfb\u9077\u79fb\u9700\u6c42<\/li>\n<\/ul>\n<p>\u70ba\u5ba2\u6236\u8a2d\u8a08 <strong>\u53ef\u9577\u671f\u6f14\u9032\u3001\u53ef\u63a7\u88fd\u6210\u672c\u3001\u53ef\u904b\u7dad\u7684Iceberg \u8cc7\u6599\u6e56\u65b9\u6848<\/strong>\uff0c\u800c\u4e0d\u662f\u7c21\u55ae\u300c\u628a\u8868\u683c\u5f0f\u63db\u6210Iceberg\u300d\u3002<\/p>\n<h4><\/h4>\n<h4>\u7d50\u8a9e<\/h4>\n<p><strong>Apache Iceberg \u4e26\u4e0d\u662f\u8b93\u8cc7\u6599\u6e56\u8b8a\u5f97\u8907\u96dc\uff0c\u800c\u662f\u8b93\u8cc7\u6599\u6e56\u8b8a\u5f97\u300c\u53ef\u7ba1\u7406\u300d\u3002<\/strong><\/p>\n<p>\u5728AWS \u96f2\u7aef\u4e0a\uff0cIceberg \u6b63\u6210\u70ba\u9023\u63a5\u8cc7\u6599\u6e56\u8207\u8cc7\u6599\u5009\u5132\u7684\u95dc\u9375\u6a4b\u6a11\u3002\u5c0d\u65bc\u5e0c\u671b\u5efa\u69cb\u4e0b\u4e00\u4ee3\u8cc7\u6599\u5e73\u53f0\u7684\u4f01\u696d\u800c\u8a00\uff0c<strong>AWS Iceberg \u4e0d\u662f\u662f\u5426\u9078\u64c7\u7684\u554f\u984c\uff0c\u800c\u662f\u300c\u4f55\u6642\u5f15\u5165\u3001\u5982\u4f55\u6b63\u78ba\u5f15\u5165\u300d\u7684\u554f\u984c\u3002<\/strong><\/p>","protected":false},"excerpt":{"rendered":"<p>\u5728\u4f01\u696d\u5168\u9762\u9081\u5411\u8cc7\u6599\u9a45\u52d5\u7684\u904e\u7a0b\u4e2d\uff0c\u8cc7\u6599\u6e56\u65e9\u5df2\u6210\u70ba\u627f\u8f09\u6d77\u91cf\u696d\u52d9\u8cc7\u6599\u7684\u57fa\u790e\u5efa\u8a2d\u3002\u7136\u800c\uff0c\u8d8a\u4f86\u8d8a\u591a\u4f01\u696d\u5728\u5be6\u52d9\u4e0a\u767c\u73fe\uff1a \u300c [\u2026]<\/p>","protected":false},"author":1,"featured_media":4278,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[65],"tags":[],"class_list":["post-4277","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technical-sharing"],"_links":{"self":[{"href":"https:\/\/aws-oncloudai.com\/zh_hk\/wp-json\/wp\/v2\/posts\/4277","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aws-oncloudai.com\/zh_hk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/aws-oncloudai.com\/zh_hk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/aws-oncloudai.com\/zh_hk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/aws-oncloudai.com\/zh_hk\/wp-json\/wp\/v2\/comments?post=4277"}],"version-history":[{"count":1,"href":"https:\/\/aws-oncloudai.com\/zh_hk\/wp-json\/wp\/v2\/posts\/4277\/revisions"}],"predecessor-version":[{"id":4279,"href":"https:\/\/aws-oncloudai.com\/zh_hk\/wp-json\/wp\/v2\/posts\/4277\/revisions\/4279"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/aws-oncloudai.com\/zh_hk\/wp-json\/wp\/v2\/media\/4278"}],"wp:attachment":[{"href":"https:\/\/aws-oncloudai.com\/zh_hk\/wp-json\/wp\/v2\/media?parent=4277"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/aws-oncloudai.com\/zh_hk\/wp-json\/wp\/v2\/categories?post=4277"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/aws-oncloudai.com\/zh_hk\/wp-json\/wp\/v2\/tags?post=4277"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}