blob: b5c5bb803227c4a9be0aee8101e5fd43605e2e46 [file] [log] [blame]
"use strict";(self.webpackChunkdoris_website=self.webpackChunkdoris_website||[]).push([[91456],{15680:(e,a,n)=>{n.d(a,{xA:()=>g,yg:()=>c});var t=n(296540);function l(e,a,n){return a in e?Object.defineProperty(e,a,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[a]=n,e}function r(e,a){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);a&&(t=t.filter((function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable}))),n.push.apply(n,t)}return n}function i(e){for(var a=1;a<arguments.length;a++){var n=null!=arguments[a]?arguments[a]:{};a%2?r(Object(n),!0).forEach((function(a){l(e,a,n[a])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(n,a))}))}return e}function o(e,a){if(null==e)return{};var n,t,l=function(e,a){if(null==e)return{};var n,t,l={},r=Object.keys(e);for(t=0;t<r.length;t++)n=r[t],a.indexOf(n)>=0||(l[n]=e[n]);return l}(e,a);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(t=0;t<r.length;t++)n=r[t],a.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(l[n]=e[n])}return l}var s=t.createContext({}),p=function(e){var a=t.useContext(s),n=a;return e&&(n="function"==typeof e?e(a):i(i({},a),e)),n},g=function(e){var a=p(e.components);return t.createElement(s.Provider,{value:a},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var a=e.children;return t.createElement(t.Fragment,{},a)}},m=t.forwardRef((function(e,a){var n=e.components,l=e.mdxType,r=e.originalType,s=e.parentName,g=o(e,["components","mdxType","originalType","parentName"]),u=p(n),m=l,c=u["".concat(s,".").concat(m)]||u[m]||d[m]||r;return n?t.createElement(c,i(i({ref:a},g),{},{components:n})):t.createElement(c,i({ref:a},g))}));function c(e,a){var n=arguments,l=a&&a.mdxType;if("string"==typeof e||l){var r=n.length,i=new Array(r);i[0]=m;var o={};for(var s in a)hasOwnProperty.call(a,s)&&(o[s]=a[s]);o.originalType=e,o[u]="string"==typeof e?e:l,i[1]=o;for(var p=2;p<r;p++)i[p]=n[p];return t.createElement.apply(null,i)}return t.createElement.apply(null,n)}m.displayName="MDXCreateElement"},112991:(e,a,n)=>{n.r(a),n.d(a,{assets:()=>s,contentTitle:()=>i,default:()=>d,frontMatter:()=>r,metadata:()=>o,toc:()=>p});var t=n(58168),l=(n(296540),n(15680));const r={title:"Release 1.2.0",language:"zh-CN"},i=void 0,o={unversionedId:"releasenotes/release-1.2.0",id:"version-2.0/releasenotes/release-1.2.0",title:"Release 1.2.0",description:"\x3c!--",source:"@site/i18n/zh-CN/docusaurus-plugin-content-docs/version-2.0/releasenotes/release-1.2.0.md",sourceDirName:"releasenotes",slug:"/releasenotes/release-1.2.0",permalink:"/zh-CN/docs/2.0/releasenotes/release-1.2.0",draft:!1,tags:[],version:"2.0",frontMatter:{title:"Release 1.2.0",language:"zh-CN"}},s={},p=[{value:"\u4e0b\u8f7d\u8bf4\u660e\uff1a",id:"\u4e0b\u8f7d\u8bf4\u660e",level:3},{value:"\u90e8\u7f72\u8bf4\u660e\uff1a",id:"\u90e8\u7f72\u8bf4\u660e",level:3},{value:"1. \u5168\u9762\u5411\u91cf\u5316\u652f\u6301\uff0c\u6027\u80fd\u5927\u5e45\u63d0\u5347",id:"1-\u5168\u9762\u5411\u91cf\u5316\u652f\u6301\u6027\u80fd\u5927\u5e45\u63d0\u5347",level:3},{value:"2. \u5728 Unique Key \u6a21\u578b\u4e0a\u5b9e\u73b0\u4e86 Merge-on-Write \u7684\u6570\u636e\u66f4\u65b0\u6a21\u5f0f",id:"2-\u5728-unique-key-\u6a21\u578b\u4e0a\u5b9e\u73b0\u4e86-merge-on-write-\u7684\u6570\u636e\u66f4\u65b0\u6a21\u5f0f",level:3},{value:"3. Multi Catalog \u591a\u6e90\u6570\u636e\u76ee\u5f55",id:"3-multi-catalog-\u591a\u6e90\u6570\u636e\u76ee\u5f55",level:3},{value:"4. \u8f7b\u91cf\u8868\u7ed3\u6784\u53d8\u66f4 Light Schema Change",id:"4-\u8f7b\u91cf\u8868\u7ed3\u6784\u53d8\u66f4-light-schema-change",level:3},{value:"5. JDBC \u5916\u90e8\u8868",id:"5-jdbc-\u5916\u90e8\u8868",level:3},{value:"6. JAVA UDF",id:"6-java-udf",level:3},{value:"7. Remote UDF",id:"7-remote-udf",level:3},{value:"8. Array/JSONB \u590d\u5408\u6570\u636e\u7c7b\u578b",id:"8-arrayjsonb-\u590d\u5408\u6570\u636e\u7c7b\u578b",level:3},{value:"9. DateV2/DatatimeV2 \u65b0\u7248\u65e5\u671f/\u65e5\u671f\u65f6\u95f4\u6570\u636e\u7c7b\u578b",id:"9-datev2datatimev2-\u65b0\u7248\u65e5\u671f\u65e5\u671f\u65f6\u95f4\u6570\u636e\u7c7b\u578b",level:3},{value:"10. \u5168\u65b0\u5185\u5b58\u7ba1\u7406\u6846\u67b6",id:"10-\u5168\u65b0\u5185\u5b58\u7ba1\u7406\u6846\u67b6",level:3},{value:"11. Table Valued Function \u8868\u51fd\u6570",id:"11-table-valued-function-\u8868\u51fd\u6570",level:3},{value:"1. \u66f4\u4fbf\u6377\u7684\u5206\u533a\u521b\u5efa\u65b9\u5f0f",id:"1-\u66f4\u4fbf\u6377\u7684\u5206\u533a\u521b\u5efa\u65b9\u5f0f",level:3},{value:"2. \u5217\u91cd\u547d\u540d",id:"2-\u5217\u91cd\u547d\u540d",level:3},{value:"3. \u66f4\u4e30\u5bcc\u6743\u9650\u7ba1\u7406",id:"3-\u66f4\u4e30\u5bcc\u6743\u9650\u7ba1\u7406",level:3},{value:"4. \u5bfc\u5165\u76f8\u5173",id:"4-\u5bfc\u5165\u76f8\u5173",level:3},{value:"5. \u652f\u6301\u901a\u8fc7 <code>SHOW CATALOG RECYCLE BIN</code> \u529f\u80fd\u67e5\u770b\u56de\u6536\u7ad9\u4e2d\u7684\u5185\u5bb9\u3002",id:"5-\u652f\u6301\u901a\u8fc7-show-catalog-recycle-bin-\u529f\u80fd\u67e5\u770b\u56de\u6536\u7ad9\u4e2d\u7684\u5185\u5bb9",level:3},{value:"6. \u652f\u6301 <code>SELECT * EXCEPT</code> \u8bed\u6cd5\u3002",id:"6-\u652f\u6301-select--except-\u8bed\u6cd5",level:3},{value:"7. OUTFILE \u652f\u6301 ORC \u683c\u5f0f\u5bfc\u51fa\uff0c\u5e76\u4e14\u652f\u6301\u591a\u5b57\u8282\u5206\u9694\u7b26\u3002",id:"7-outfile-\u652f\u6301-orc-\u683c\u5f0f\u5bfc\u51fa\u5e76\u4e14\u652f\u6301\u591a\u5b57\u8282\u5206\u9694\u7b26",level:3},{value:"8. \u652f\u6301\u901a\u8fc7\u914d\u7f6e\u4fee\u6539\u53ef\u4fdd\u5b58\u7684 Query Profile \u7684\u6570\u91cf\u3002",id:"8-\u652f\u6301\u901a\u8fc7\u914d\u7f6e\u4fee\u6539\u53ef\u4fdd\u5b58\u7684-query-profile-\u7684\u6570\u91cf",level:3},{value:"9. DELETE \u8bed\u53e5\u652f\u6301 IN \u8c13\u8bcd\u6761\u4ef6\u3002\u5e76\u4e14\u652f\u6301\u5206\u533a\u88c1\u526a\u3002",id:"9-delete-\u8bed\u53e5\u652f\u6301-in-\u8c13\u8bcd\u6761\u4ef6\u5e76\u4e14\u652f\u6301\u5206\u533a\u88c1\u526a",level:3},{value:"10. \u65f6\u95f4\u5217\u7684\u9ed8\u8ba4\u503c\u652f\u6301\u4f7f\u7528 <code>CURRENT_TIMESTAMP</code>",id:"10-\u65f6\u95f4\u5217\u7684\u9ed8\u8ba4\u503c\u652f\u6301\u4f7f\u7528-current_timestamp",level:3},{value:"11. \u6dfb\u52a0\u4e24\u5f20\u7cfb\u7edf\u8868\uff1abackends\u3001rowsets",id:"11-\u6dfb\u52a0\u4e24\u5f20\u7cfb\u7edf\u8868backendsrowsets",level:3},{value:"12. \u5907\u4efd\u6062\u590d",id:"12-\u5907\u4efd\u6062\u590d",level:3},{value:"13. \u652f\u6301\u540c\u673a\u591a\u78c1\u76d8\u4e4b\u95f4\u7684\u6570\u636e\u5747\u8861",id:"13-\u652f\u6301\u540c\u673a\u591a\u78c1\u76d8\u4e4b\u95f4\u7684\u6570\u636e\u5747\u8861",level:3},{value:"14. Routine Load \u652f\u6301\u8ba2\u9605 Kerberos \u8ba4\u8bc1\u7684 Kafka \u670d\u52a1\u3002",id:"14-routine-load-\u652f\u6301\u8ba2\u9605-kerberos-\u8ba4\u8bc1\u7684-kafka-\u670d\u52a1",level:3},{value:"15. New built-in-function \u65b0\u589e\u5185\u7f6e\u51fd\u6570",id:"15-new-built-in-function-\u65b0\u589e\u5185\u7f6e\u51fd\u6570",level:3},{value:"FE \u5143\u6570\u636e\u7248\u672c\u53d8\u66f4 \u3010\u91cd\u8981\u3011",id:"fe-\u5143\u6570\u636e\u7248\u672c\u53d8\u66f4-\u91cd\u8981",level:3},{value:"\u884c\u4e3a\u6539\u53d8",id:"\u884c\u4e3a\u6539\u53d8",level:3},{value:"\u5347\u7ea7\u8fc7\u7a0b\u4e2d\u9700\u6ce8\u610f",id:"\u5347\u7ea7\u8fc7\u7a0b\u4e2d\u9700\u6ce8\u610f",level:3},{value:"\u6027\u80fd\u5f71\u54cd",id:"\u6027\u80fd\u5f71\u54cd",level:3},{value:"API \u53d8\u5316",id:"api-\u53d8\u5316",level:3}],g={toc:p},u="wrapper";function d(e){let{components:a,...r}=e;return(0,l.yg)(u,(0,t.A)({},g,r,{components:a,mdxType:"MDXLayout"}),(0,l.yg)("p",null,"\u4eb2\u7231\u7684\u793e\u533a\u5c0f\u4f19\u4f34\u4eec\uff0c\u518d\u4e00\u6b21\u7ecf\u5386\u6570\u6708\u7684\u7b49\u5019\u540e\uff0c\u6211\u4eec\u5f88\u9ad8\u5174\u5730\u5ba3\u5e03\uff0cApache Doris \u4e8e 2022 \u5e74 12 \u6708 7 \u65e5\u8fce\u6765 1.2.0 Release \u7248\u672c\u7684\u6b63\u5f0f\u53d1\u5e03\uff01\u6709\u8fd1 118 \u4f4d Contributor \u4e3a Apache Doris \u63d0\u4ea4\u4e86\u8d85 2400 \u9879\u4f18\u5316\u548c\u4fee\u590d\uff0c\u611f\u8c22\u6bcf\u4e00\u4f4d\u8ba9 Apache Doris \u66f4\u597d\u7684\u4f60\uff01"),(0,l.yg)("p",null,"\u81ea\u4ece\u793e\u533a\u6b63\u5f0f\u786e\u7acb LTS \u7248\u672c\u7ba1\u7406\u673a\u5236\u540e\uff0c\u5728 1.1.x \u7cfb\u5217\u7248\u672c\u4e2d\u4e0d\u518d\u5408\u5165\u5927\u7684\u529f\u80fd\uff0c\u4ec5\u63d0\u4f9b\u95ee\u9898\u4fee\u590d\u548c\u7a33\u5b9a\u6027\u6539\u8fdb\uff0c\u529b\u6c42\u6ee1\u8db3\u66f4\u591a\u793e\u533a\u7528\u6237\u5728\u7a33\u5b9a\u6027\u65b9\u9762\u7684\u9ad8\u8981\u6c42\u3002\u800c\u5728\u7efc\u5408\u8003\u8651\u7248\u672c\u8fed\u4ee3\u8282\u594f\u548c\u7528\u6237\u9700\u6c42\u540e\uff0c\u6211\u4eec\u51b3\u5b9a\u5c06\u4f17\u591a\u65b0\u7279\u6027\u5728 1.2 \u7248\u672c\u4e2d\u53d1\u5e03\uff0c\u8fd9\u65e0\u7591\u627f\u8f7d\u4e86\u4f17\u591a\u793e\u533a\u7528\u6237\u548c\u5f00\u53d1\u8005\u7684\u6df1\u5207\u671f\u76fc\uff0c\u540c\u65f6\u8fd9\u4e5f\u662f\u4e00\u573a\u539a\u79ef\u800c\u8584\u53d1\u540e\u7684\u5168\u9762\u8fdb\u5316\uff01"),(0,l.yg)("p",null,"\u5728 1.2 \u7248\u672c\u4e2d\uff0c\u6211\u4eec\u5b9e\u73b0\u4e86\u5168\u9762\u7684\u5411\u91cf\u5316\u3001",(0,l.yg)("strong",{parentName:"p"},"\u5b9e\u73b0\u591a\u573a\u666f\u67e5\u8be2\u6027\u80fd 3-11 \u500d\u7684\u63d0\u5347"),"\uff0c\u5728 Unique Key \u6a21\u578b\u4e0a\u5b9e\u73b0\u4e86 Merge-on-Write \u7684\u6570\u636e\u66f4\u65b0\u6a21\u5f0f\u3001",(0,l.yg)("strong",{parentName:"p"},"\u6570\u636e\u9ad8\u9891\u66f4\u65b0\u65f6\u67e5\u8be2\u6027\u80fd\u63d0\u5347\u8fbe 3-6 \u500d"),"\uff0c\u589e\u52a0\u4e86 Multi-Catalog \u591a\u6e90\u6570\u636e\u76ee\u5f55\u3001",(0,l.yg)("strong",{parentName:"p"},"\u63d0\u4f9b\u4e86\u65e0\u7f1d\u63a5\u5165 Hive\u3001ES\u3001Hudi\u3001Iceberg \u7b49\u5916\u90e8\u6570\u636e\u6e90\u7684\u80fd\u529b"),"\uff0c\u5f15\u5165\u4e86 Light Schema Change \u8f7b\u91cf\u8868\u7ed3\u6784\u53d8\u66f4\u3001",(0,l.yg)("strong",{parentName:"p"},"\u5b9e\u73b0\u6beb\u79d2\u7ea7\u7684 Schema Change \u64cd\u4f5c\u5e76\u53ef\u4ee5\u501f\u52a9 Flink CDC \u81ea\u52a8\u540c\u6b65\u4e0a\u6e38\u6570\u636e\u5e93\u7684 DML \u548c DDL \u64cd\u4f5c"),"\uff0c\u4ee5 JDBC \u5916\u90e8\u8868\u66ff\u6362\u4e86\u8fc7\u53bb\u7684 ODBC \u5916\u90e8\u8868\uff0c\u652f\u6301\u4e86 Java UDF \u548c Romote UDF \u4ee5\u53ca Array \u6570\u7ec4\u7c7b\u578b\u548c JSONB \u7c7b\u578b\uff0c\u4fee\u590d\u4e86\u8bf8\u591a\u4e4b\u524d\u7248\u672c\u7684\u6027\u80fd\u548c\u7a33\u5b9a\u6027\u95ee\u9898\uff0c\u63a8\u8350\u5927\u5bb6\u4e0b\u8f7d\u548c\u4f7f\u7528\uff01"),(0,l.yg)("h1",{id:"\u4e0b\u8f7d\u5b89\u88c5"},"\u4e0b\u8f7d\u5b89\u88c5"),(0,l.yg)("p",null,"GitHub\u4e0b\u8f7d\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://github.com/apache/doris/releases"},"https://github.com/apache/doris/releases")),(0,l.yg)("p",null,"\u5b98\u7f51\u4e0b\u8f7d\u9875\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/download"},"https://doris.apache.org/download")),(0,l.yg)("p",null,"\u6e90\u7801\u5730\u5740\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://github.com/apache/doris/releases/tag/1.2.0-rc04"},"https://github.com/apache/doris/releases/tag/1.2.0-rc04")),(0,l.yg)("h3",{id:"\u4e0b\u8f7d\u8bf4\u660e"},"\u4e0b\u8f7d\u8bf4\u660e\uff1a"),(0,l.yg)("p",null,"\u7531\u4e8e Apache \u670d\u52a1\u5668\u6587\u4ef6\u5927\u5c0f\u9650\u5236\uff0c\u5b98\u7f51\u4e0b\u8f7d\u9875\u7684 1.2.0 \u7248\u672c\u7684\u4e8c\u8fdb\u5236\u7a0b\u5e8f\u5206\u4e3a\u4e09\u4e2a\u5305\uff1a"),(0,l.yg)("ol",null,(0,l.yg)("li",{parentName:"ol"},(0,l.yg)("p",{parentName:"li"},"apache-doris-fe")),(0,l.yg)("li",{parentName:"ol"},(0,l.yg)("p",{parentName:"li"},"apache-doris-be")),(0,l.yg)("li",{parentName:"ol"},(0,l.yg)("p",{parentName:"li"},"apache-doris-java-udf-jar-with-dependencies"))),(0,l.yg)("p",null,"\u5176\u4e2d\u65b0\u589e\u7684 ",(0,l.yg)("inlineCode",{parentName:"p"},"apache-doris-java-udf-jar-with-dependencies")," \u5305\u7528\u4e8e\u652f\u6301 1.2.0 \u7248\u672c\u4e2d\u7684 JDBC \u5916\u8868\u548c JAVA UDF \u3002\u4e0b\u8f7d\u540e\uff0c\u9700\u8981\u5c06\u5176\u4e2d\u7684 ",(0,l.yg)("inlineCode",{parentName:"p"},"java-udf-jar-with-dependencies.jar")," \u6587\u4ef6\u653e\u5230 ",(0,l.yg)("inlineCode",{parentName:"p"},"be/lib")," \u76ee\u5f55\u4e0b\uff0c\u65b9\u53ef\u542f\u52a8 BE\uff0c\u5426\u5219\u65e0\u6cd5\u542f\u52a8\u6210\u529f\u3002"),(0,l.yg)("h3",{id:"\u90e8\u7f72\u8bf4\u660e"},"\u90e8\u7f72\u8bf4\u660e\uff1a"),(0,l.yg)("p",null,"\u4ece\u5386\u53f2\u7248\u672c\u5347\u7ea7\u5230 1.2.0 \u7248\u672c\uff0c\u9700\u5b8c\u6574\u66f4\u65b0 fe\u3001be \u4e0b\u7684 bin \u548c lib \u76ee\u5f55\u3002"),(0,l.yg)("p",null,"\u5176\u4ed6\u5347\u7ea7\u6ce8\u610f\u4e8b\u9879\uff0c\u8bf7\u5b8c\u6574\u9605\u8bfb\u672c\u53d1\u7248\u901a\u544a\u6700\u540e\u4e00\u8282\u201c\u5347\u7ea7\u6ce8\u610f\u4e8b\u9879\u201d\u4ee5\u53ca\u5b89\u88c5\u90e8\u7f72\u6587\u6863 ",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/install/install-deploy"},"https://doris.apache.org/zh-CN/docs/dev/install/install-deploy")," \u548c\u96c6\u7fa4\u5347\u7ea7\u6587\u6863 ",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/admin-manual/cluster-management/upgrade"},"https://doris.apache.org/zh-CN/docs/dev/admin-manual/cluster-management/upgrade")),(0,l.yg)("h1",{id:"\u91cd\u8981\u66f4\u65b0"},"\u91cd\u8981\u66f4\u65b0"),(0,l.yg)("h3",{id:"1-\u5168\u9762\u5411\u91cf\u5316\u652f\u6301\u6027\u80fd\u5927\u5e45\u63d0\u5347"},"1. \u5168\u9762\u5411\u91cf\u5316\u652f\u6301\uff0c\u6027\u80fd\u5927\u5e45\u63d0\u5347"),(0,l.yg)("p",null,"\u5728 Apache Doris 1.2.0 \u7248\u672c\u4e2d\uff0c\u7cfb\u7edf\u6240\u6709\u6a21\u5757\u90fd\u5b9e\u73b0\u4e86\u5411\u91cf\u5316\uff0c\u5305\u62ec\u6570\u636e\u5bfc\u5165\u3001Schema Change\u3001Compaction\u3001\u6570\u636e\u5bfc\u51fa\u3001UDF \u7b49\u3002\u65b0\u7248\u5411\u91cf\u5316\u6267\u884c\u5f15\u64ce\u5177\u5907\u4e86\u5b8c\u6574\u66ff\u6362\u539f\u6709\u975e\u5411\u91cf\u5316\u5f15\u64ce\u7684\u80fd\u529b\uff0c\u540e\u7eed\u6211\u4eec\u4e5f\u5c06\u8003\u8651\u5728\u672a\u6765\u7248\u672c\u4e2d\u53bb\u9664\u539f\u6709\u975e\u5411\u91cf\u5316\u5f15\u64ce\u7684\u4ee3\u7801\u3002"),(0,l.yg)("p",null,"\u4e0e\u6b64\u540c\u65f6\uff0c\u5728\u5168\u9762\u5411\u91cf\u5316\u7684\u57fa\u7840\u4e0a\uff0c\u6211\u4eec\u5bf9\u6570\u636e\u626b\u63cf\u3001\u8c13\u8bcd\u8ba1\u7b97\u3001Aggregation \u7b97\u5b50\u3001HashJoin \u7b97\u5b50\u3001\u7b97\u5b50\u4e4b\u95f4 Shuffle \u6548\u7387\u7b49\u8fdb\u884c\u4e86\u5168\u94fe\u8def\u7684\u4f18\u5316\uff0c\u4f7f\u5f97\u67e5\u8be2\u6027\u80fd\u6709\u4e86\u5927\u5e45\u63d0\u5347\u3002"),(0,l.yg)("p",null,"\u6211\u4eec\u5bf9 Apache Doris 1.2.0 \u65b0\u7248\u672c\u8fdb\u884c\u4e86\u591a\u4e2a\u6807\u51c6\u6d4b\u8bd5\u96c6\u7684\u6d4b\u8bd5\uff0c\u540c\u65f6\u9009\u62e9\u4e86 1.1.3 \u7248\u672c\u548c 0.15.0 \u7248\u672c\u4f5c\u4e3a\u5bf9\u6bd4\u53c2\u7167\u9879\u3002\u7ecf\u6d4b\uff0c1.2.0 ",(0,l.yg)("strong",{parentName:"p"},"\u5728 SSB-Flat \u5bbd\u8868\u573a\u666f\u4e0a\u76f8\u5bf9 1.1.3 \u7248\u672c\u6574\u4f53\u6027\u80fd\u63d0\u5347\u4e86\u8fd1 4 \u500d\u3001\u76f8\u5bf9\u4e8e 0.15.0 \u7248\u672c\u6027\u80fd\u63d0\u5347\u4e86\u8fd1 10 \u500d\uff0c\u5728 TPC-H \u591a\u8868\u5173\u8054\u573a\u666f\u4e0a\u8f83 1.1.3 \u7248\u672c\u4e0a\u6709\u8fd1 3 \u500d\u7684\u63d0\u5347\u3001\u8f83 0.15.0 \u7248\u672c\u6027\u80fd\u81f3\u5c11\u63d0\u5347\u4e86 11 \u500d\u3002")),(0,l.yg)("p",null,(0,l.yg)("img",{alt:"ssb_flat",src:n(800846).A,width:"1522",height:"674"})),(0,l.yg)("p",null,(0,l.yg)("img",{alt:"tpch",src:n(135993).A,width:"1526",height:"726"})),(0,l.yg)("p",null,"\u540c\u65f6\uff0c\u6211\u4eec\u5c06 1.2.0 \u7248\u672c\u7684\u6d4b\u8bd5\u6570\u636e\u63d0\u4ea4\u5230\u4e86\u5168\u7403\u77e5\u540d\u7684\u6570\u636e\u5e93\u6d4b\u8bd5\u6392\u884c\u699c ClickBench\uff0c\u5728\u6700\u65b0\u7684\u6392\u884c\u699c\u4e2d\uff0cApache Doris 1.2.0 \u65b0\u7248\u672c\u53d6\u5f97\u4e86\u901a\u7528\u673a\u578b\uff08c6a.4xlarge, 500gb gp2\uff09\u4e0b",(0,l.yg)("strong",{parentName:"p"},"\u67e5\u8be2\u6027\u80fd Cold Run \u7b2c\u4e8c\u548c Hot Run \u7b2c\u4e09\u7684\u9192\u76ee\u6210\u7ee9\uff0c\u5171\u6709 8 \u4e2a SQL \u5237\u65b0\u699c\u5355\u6700\u4f73\u6210\u7ee9\u3001\u6210\u4e3a\u65b0\u7684\u6027\u80fd\u6807\u6746"),"\u3002\u5bfc\u5165\u6027\u80fd\u65b9\u9762\uff0c1.2.0 \u65b0\u7248\u672c\u6570\u636e\u5199\u5165\u6548\u7387\u5728\u540c\u673a\u578b\u6240\u6709\u4ea7\u54c1\u4e2d\u4f4d\u5217\u7b2c\u4e00\uff0c\u538b\u7f29\u524d 70G \u6570\u636e\u5199\u5165\u4ec5\u8017\u65f6 415s\u3001\u5355\u8282\u70b9\u5199\u5165\u901f\u5ea6\u8d85\u8fc7 170 MB/s\uff0c\u5728\u5b9e\u73b0\u6781\u81f4\u67e5\u8be2\u6027\u80fd\u7684\u540c\u65f6\u4e5f\u4fdd\u8bc1\u4e86\u9ad8\u6548\u7684\u5199\u5165\u6548\u7387\uff01"),(0,l.yg)("p",null,(0,l.yg)("img",{alt:"coldrun",src:n(864695).A,width:"1080",height:"789"})),(0,l.yg)("p",null,(0,l.yg)("img",{alt:"hotrun",src:n(351340).A,width:"1080",height:"786"})),(0,l.yg)("h3",{id:"2-\u5728-unique-key-\u6a21\u578b\u4e0a\u5b9e\u73b0\u4e86-merge-on-write-\u7684\u6570\u636e\u66f4\u65b0\u6a21\u5f0f"},"2. \u5728 Unique Key \u6a21\u578b\u4e0a\u5b9e\u73b0\u4e86 Merge-on-Write \u7684\u6570\u636e\u66f4\u65b0\u6a21\u5f0f"),(0,l.yg)("p",null,"\u5728\u8fc7\u53bb\u7248\u672c\u4e2d\uff0c Apache Doris \u4e3b\u8981\u662f\u901a\u8fc7 Unique Key \u6570\u636e\u6a21\u578b\u6765\u5b9e\u73b0\u6570\u636e\u5b9e\u65f6\u66f4\u65b0\u7684\u3002\u4f46\u7531\u4e8e\u91c7\u7528\u7684\u662f Merge-on-Read \u7684\u5b9e\u73b0\u65b9\u5f0f\uff0c\u67e5\u8be2\u5b58\u5728\u7740\u6548\u7387\u74f6\u9888\uff0c\u6709\u5927\u91cf\u975e\u5fc5\u8981\u7684 CPU \u8ba1\u7b97\u8d44\u6e90\u6d88\u8017\u548c IO \u5f00\u9500\uff0c\u4e14\u53ef\u80fd\u5c06\u51fa\u73b0\u67e5\u8be2\u6027\u80fd\u6296\u52a8\u7b49\u95ee\u9898\u3002"),(0,l.yg)("p",null,"\u5728 1.2.0 \u7248\u672c\u4e2d\uff0c\u6211\u4eec\u5728\u539f\u6709\u7684 Unique Key \u6570\u636e\u6a21\u578b\u4e0a\uff0c\u589e\u52a0\u4e86 Merge-on-Write \u7684\u6570\u636e\u66f4\u65b0\u6a21\u5f0f\u3002\u8be5\u6a21\u5f0f\u5728\u6570\u636e\u5199\u5165\u65f6\u5373\u5bf9\u9700\u8981\u5220\u9664\u6216\u66f4\u65b0\u7684\u6570\u636e\u8fdb\u884c\u6807\u8bb0\uff0c\u59cb\u7ec8\u4fdd\u8bc1\u6709\u6548\u7684\u4e3b\u952e\u53ea\u51fa\u73b0\u5728\u4e00\u4e2a\u6587\u4ef6\u4e2d\uff08\u5373\u5728\u5199\u5165\u7684\u65f6\u5019\u4fdd\u8bc1\u4e86\u4e3b\u952e\u7684\u552f\u4e00\u6027\uff09\uff0c\u4e0d\u9700\u8981\u5728\u8bfb\u53d6\u7684\u65f6\u5019\u901a\u8fc7\u5f52\u5e76\u6392\u5e8f\u6765\u5bf9\u4e3b\u952e\u8fdb\u884c\u53bb\u91cd\uff0c\u8fd9\u5bf9\u4e8e\u9ad8\u9891\u5199\u5165\u7684\u573a\u666f\u6765\u8bf4\uff0c\u5927\u5927\u51cf\u5c11\u4e86\u67e5\u8be2\u6267\u884c\u65f6\u7684\u989d\u5916\u6d88\u8017\u3002\u6b64\u5916\u8fd8\u80fd\u591f\u652f\u6301\u8c13\u8bcd\u4e0b\u63a8\uff0c\u5e76\u80fd\u591f\u5f88\u597d\u5229\u7528 Doris \u4e30\u5bcc\u7684\u7d22\u5f15\uff0c\u5728\u6570\u636e IO \u5c42\u9762\u5c31\u80fd\u591f\u8fdb\u884c\u5145\u5206\u7684\u6570\u636e\u88c1\u526a\uff0c\u5927\u5927\u51cf\u5c11\u6570\u636e\u7684\u8bfb\u53d6\u91cf\u548c\u8ba1\u7b97\u91cf\uff0c\u56e0\u6b64\u5728\u5f88\u591a\u573a\u666f\u7684\u67e5\u8be2\u4e2d\u90fd\u6709\u975e\u5e38\u660e\u663e\u7684\u6027\u80fd\u63d0\u5347\u3002"),(0,l.yg)("p",null,"\u5728\u6bd4\u8f83\u6709\u4ee3\u8868\u6027\u7684 SSB-Flat \u6570\u636e\u96c6\u4e0a\uff0c\u901a\u8fc7\u6a21\u62df\u591a\u4e2a\u6301\u7eed\u5bfc\u5165\u573a\u666f\uff0c",(0,l.yg)("strong",{parentName:"p"},"\u65b0\u7248\u672c\u7684\u5927\u90e8\u5206\u67e5\u8be2\u53d6\u5f97\u4e86 3-6 \u500d\u7684\u6027\u80fd\u63d0\u5347"),"\u3002"),(0,l.yg)("p",null,(0,l.yg)("img",{alt:"mergeonwrite_ssb",src:n(660265).A,width:"1280",height:"889"})),(0,l.yg)("p",null,"\u4f7f\u7528\u573a\u666f\uff1a\u6240\u6709\u5bf9\u4e3b\u952e\u552f\u4e00\u6027\u6709\u9700\u6c42\uff0c\u9700\u8981\u9891\u7e41\u8fdb\u884c\u5b9e\u65f6 Upsert \u66f4\u65b0\u7684\u7528\u6237\u5efa\u8bae\u6253\u5f00\u3002"),(0,l.yg)("p",null,"\u4f7f\u7528\u8bf4\u660e\uff1a\u4f5c\u4e3a\u65b0\u7684 Feature \u9ed8\u8ba4\u5173\u95ed\uff0c\u7528\u6237\u53ef\u4ee5\u901a\u8fc7\u5728\u5efa\u8868\u65f6\u6dfb\u52a0\u4e0b\u9762\u7684 Property \u6765\u5f00\u542f\uff1a"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre"},"\u201cenable_unique_key_merge_on_write\u201d = \u201ctrue\u201d\n")),(0,l.yg)("p",null,"\u53e6\u5916\u65b0\u7248\u672c Merge-on-Write \u6570\u636e\u66f4\u65b0\u6a21\u5f0f\u4e0e\u65e7\u7248\u672c Merge-on-Read \u5b9e\u73b0\u65b9\u5f0f\u5b58\u5728\u5dee\u5f02\uff0c\u56e0\u6b64\u5df2\u7ecf\u521b\u5efa\u7684 Unique Key \u8868\u65e0\u6cd5\u76f4\u63a5\u901a\u8fc7 Alter Table \u6dfb\u52a0 Property \u6765\u652f\u6301\uff0c\u53ea\u80fd\u5728\u65b0\u5efa\u8868\u7684\u65f6\u5019\u6307\u5b9a\u3002\u5982\u679c\u7528\u6237\u9700\u8981\u5c06\u65e7\u8868\u8f6c\u6362\u5230\u65b0\u8868\uff0c\u53ef\u4ee5\u4f7f\u7528 ",(0,l.yg)("inlineCode",{parentName:"p"},"insert into new_table select * from old_table")," \u7684\u65b9\u5f0f\u6765\u5b9e\u73b0\u3002"),(0,l.yg)("h3",{id:"3-multi-catalog-\u591a\u6e90\u6570\u636e\u76ee\u5f55"},"3. Multi Catalog \u591a\u6e90\u6570\u636e\u76ee\u5f55"),(0,l.yg)("p",null,"Multi-Catalog \u591a\u6e90\u6570\u636e\u76ee\u5f55\u529f\u80fd\u7684\u76ee\u6807\u5728\u4e8e\u80fd\u591f\u5e2e\u52a9\u7528\u6237\u66f4\u65b9\u4fbf\u5bf9\u63a5\u5916\u90e8\u6570\u636e\u76ee\u5f55\uff0c\u4ee5\u589e\u5f3a Apache Doris \u7684\u6570\u636e\u6e56\u5206\u6790\u548c\u8054\u90a6\u6570\u636e\u67e5\u8be2\u80fd\u529b\u3002"),(0,l.yg)("p",null,"\u5728\u8fc7\u53bb\u7248\u672c\u4e2d\uff0c\u5f53\u6211\u4eec\u9700\u8981\u5bf9\u63a5\u5916\u90e8\u6570\u636e\u6e90\u65f6\uff0c\u53ea\u80fd\u5728 Database \u6216 Table \u5c42\u7ea7\u5bf9\u63a5\u3002\u5f53\u5916\u90e8\u6570\u636e\u76ee\u5f55 Schema \u53d1\u751f\u53d8\u5316\u3001\u6216\u8005\u5916\u90e8\u6570\u636e\u76ee\u5f55\u7684 Database \u6216 Table \u975e\u5e38\u591a\u65f6\uff0c\u9700\u8981\u7528\u6237\u624b\u5de5\u8fdb\u884c\u4e00\u4e00\u6620\u5c04\uff0c\u7ef4\u62a4\u91cf\u975e\u5e38\u5927\u30021.2.0 \u7248\u672c\u65b0\u589e\u7684\u591a\u6e90\u6570\u636e\u76ee\u5f55\u529f\u80fd\u4e3a Apache Doris \u63d0\u4f9b\u4e86\u5feb\u901f\u63a5\u5165\u5916\u90e8\u6570\u636e\u6e90\u8fdb\u884c\u8bbf\u95ee\u7684\u80fd\u529b\uff0c\u7528\u6237\u53ef\u4ee5\u901a\u8fc7 ",(0,l.yg)("inlineCode",{parentName:"p"},"CREATE CATALOG")," \u547d\u4ee4\u8fde\u63a5\u5230\u5916\u90e8\u6570\u636e\u6e90\uff0cDoris \u4f1a\u81ea\u52a8\u6620\u5c04\u5916\u90e8\u6570\u636e\u6e90\u7684\u5e93\u3001\u8868\u4fe1\u606f\u3002\u4e4b\u540e\uff0c\u7528\u6237\u5c31\u53ef\u4ee5\u50cf\u8bbf\u95ee\u666e\u901a\u8868\u4e00\u6837\uff0c\u5bf9\u8fd9\u4e9b\u5916\u90e8\u6570\u636e\u6e90\u4e2d\u7684\u6570\u636e\u8fdb\u884c\u8bbf\u95ee\uff0c\u907f\u514d\u4e86\u4e4b\u524d\u7528\u6237\u9700\u8981\u5bf9\u6bcf\u5f20\u8868\u624b\u52a8\u5efa\u7acb\u5916\u8868\u6620\u5c04\u7684\u590d\u6742\u64cd\u4f5c\u3002"),(0,l.yg)("p",null,"\u76ee\u524d\u80fd\u652f\u6301\u4ee5\u4e0b\u6570\u636e\u6e90\uff1a"),(0,l.yg)("ol",null,(0,l.yg)("li",{parentName:"ol"},(0,l.yg)("p",{parentName:"li"},"Hive Metastore\uff1a\u53ef\u4ee5\u8bbf\u95ee\u5305\u62ec Hive\u3001Iceberg\u3001Hudi \u5728\u5185\u7684\u6570\u636e\u8868\uff0c\u4e5f\u53ef\u5bf9\u63a5\u517c\u5bb9 Hive Metastore \u7684\u6570\u636e\u6e90\uff0c\u5982\u963f\u91cc\u4e91\u7684 DataLake Formation\uff0c\u540c\u65f6\u652f\u6301 HDFS \u548c\u5bf9\u8c61\u5b58\u50a8\u4e0a\u7684\u6570\u636e\u8bbf\u95ee\u3002")),(0,l.yg)("li",{parentName:"ol"},(0,l.yg)("p",{parentName:"li"},"Elasticsearch\uff1a\u8bbf\u95ee ES \u6570\u636e\u6e90\u3002")),(0,l.yg)("li",{parentName:"ol"},(0,l.yg)("p",{parentName:"li"},"JDBC\uff1a\u652f\u6301\u901a\u8fc7 JDBC \u8bbf\u95ee MySQL \u6570\u636e\u6e90\u3002"))),(0,l.yg)("p",null,"\u6ce8\uff1a\u76f8\u5e94\u7684\u6743\u9650\u5c42\u7ea7\u4e5f\u4f1a\u81ea\u52a8\u53d8\u66f4\uff0c\u8be6\u89c1\u201c\u5347\u7ea7\u6ce8\u610f\u4e8b\u9879\u201d\u90e8\u5206"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/lakehouse/multi-catalog"},"https://doris.apache.org/zh-CN/docs/dev/lakehouse/multi-catalog")),(0,l.yg)("h3",{id:"4-\u8f7b\u91cf\u8868\u7ed3\u6784\u53d8\u66f4-light-schema-change"},"4. \u8f7b\u91cf\u8868\u7ed3\u6784\u53d8\u66f4 Light Schema Change"),(0,l.yg)("p",null,"\u5728\u8fc7\u53bb\u7248\u672c\u4e2d\uff0cSchema Change \u662f\u4e00\u9879\u76f8\u5bf9\u6d88\u8017\u6bd4\u8f83\u5927\u7684\u5de5\u4f5c\uff0c\u9700\u8981\u5bf9\u6570\u636e\u6587\u4ef6\u8fdb\u884c\u4fee\u6539\uff0c\u5728\u96c6\u7fa4\u89c4\u6a21\u548c\u8868\u6570\u636e\u91cf\u8f83\u5927\u65f6\u6267\u884c\u6548\u7387\u4f1a\u660e\u663e\u964d\u4f4e\u3002\u540c\u65f6\u7531\u4e8e\u662f\u5f02\u6b65\u4f5c\u4e1a\uff0c\u5f53\u4e0a\u6e38 Schema \u53d1\u751f\u53d8\u66f4\u65f6\uff0c\u9700\u8981\u505c\u6b62\u6570\u636e\u540c\u6b65\u4efb\u52a1\u5e76\u624b\u52a8\u6267\u884c Schema Change\uff0c\u589e\u52a0\u5f00\u53d1\u548c\u8fd0\u7ef4\u6210\u672c\u7684\u540c\u65f6\u8fd8\u53ef\u80fd\u9020\u6210\u6d88\u8d39\u6570\u636e\u7684\u79ef\u538b\u3002"),(0,l.yg)("p",null,"\u5728 1.2.0 \u65b0\u7248\u672c\u4e2d\uff0c\u5bf9\u6570\u636e\u8868\u7684\u52a0\u51cf\u5217\u64cd\u4f5c\uff0c\u4e0d\u518d\u9700\u8981\u540c\u6b65\u66f4\u6539\u6570\u636e\u6587\u4ef6\uff0c\u4ec5\u9700\u5728 FE \u4e2d\u66f4\u65b0\u5143\u6570\u636e\u5373\u53ef\uff0c\u4ece\u800c\u5b9e\u73b0\u6beb\u79d2\u7ea7\u7684 Schema Change \u64cd\u4f5c\uff0c\u4e14\u5b58\u5728\u5bfc\u5165\u4efb\u52a1\u65f6\u6548\u7387\u7684\u63d0\u5347\u66f4\u4e3a\u663e\u8457\u3002\u4e0e\u6b64\u540c\u65f6\uff0c\u4f7f\u5f97 Apache Doris \u5728\u9762\u5bf9\u4e0a\u6e38\u6570\u636e\u8868\u7ef4\u5ea6\u53d8\u5316\u65f6\uff0c\u53ef\u4ee5\u66f4\u52a0\u5feb\u901f\u7a33\u5b9a\u5b9e\u73b0\u8868\u7ed3\u6784\u540c\u6b65\uff0c\u4fdd\u8bc1\u7cfb\u7edf\u7684\u9ad8\u6548\u4e14\u5e73\u7a33\u8fd0\u8f6c\u3002\u5982\u7528\u6237\u53ef\u4ee5\u901a\u8fc7 Flink CDC\uff0c\u53ef\u5b9e\u73b0\u4e0a\u6e38\u6570\u636e\u5e93\u5230 Doris \u7684 DML \u548c DDL \u540c\u6b65\uff0c\u8fdb\u4e00\u6b65\u63d0\u5347\u4e86\u5b9e\u65f6\u6570\u4ed3\u6570\u636e\u5904\u7406\u548c\u5206\u6790\u94fe\u8def\u7684\u65f6\u6548\u6027\u4e0e\u4fbf\u6377\u6027\u3002"),(0,l.yg)("p",null,(0,l.yg)("img",{alt:"lightschemachange_compare.png",src:n(272099).A,width:"1280",height:"393"})),(0,l.yg)("p",null,"\u4f7f\u7528\u8bf4\u660e\uff1a\u4f5c\u4e3a\u65b0\u7684 Feature \u9ed8\u8ba4\u5173\u95ed\uff0c\u7528\u6237\u53ef\u4ee5\u901a\u8fc7\u5728\u5efa\u8868\u65f6\u6dfb\u52a0\u4e0b\u9762\u7684 Property \u6765\u5f00\u542f\uff1a"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre"},'"light_schema_change" = "true"\n')),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Create/CREATE-TABLE"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Create/CREATE-TABLE")),(0,l.yg)("h3",{id:"5-jdbc-\u5916\u90e8\u8868"},"5. JDBC \u5916\u90e8\u8868"),(0,l.yg)("p",null,"\u5728\u8fc7\u53bb\u7248\u672c\u4e2d\uff0cApache Doris \u63d0\u4f9b\u4e86 ODBC \u5916\u90e8\u8868\u7684\u65b9\u5f0f\u6765\u8bbf\u95ee MySQL\u3001Oracle\u3001SQL Server\u3001PostgreSQL \u7b49\u6570\u636e\u6e90\uff0c\u4f46\u7531\u4e8e ODBC \u9a71\u52a8\u7248\u672c\u95ee\u9898\u53ef\u80fd\u9020\u6210\u7cfb\u7edf\u7684\u4e0d\u7a33\u5b9a\u3002\u76f8\u5bf9\u4e8e ODBC\uff0cJDBC \u63a5\u53e3\u66f4\u4e3a\u7edf\u4e00\u4e14\u652f\u6301\u6570\u636e\u5e93\u4f17\u591a\uff0c\u56e0\u6b64\u5728 1.2.0 \u7248\u672c\u4e2d\u6211\u4eec\u5b9e\u73b0\u4e86 JDBC \u5916\u90e8\u8868\u4ee5\u66ff\u6362\u539f\u6709\u7684 ODBC \u5916\u90e8\u8868\u3002\u5728\u65b0\u7248\u672c\u4e2d\uff0c\u7528\u6237\u53ef\u4ee5\u901a\u8fc7 JDBC \u8fde\u63a5\u652f\u6301 JDBC \u534f\u8bae\u7684\u5916\u90e8\u6570\u636e\u6e90\uff0c"),(0,l.yg)("p",null,"\u5f53\u524d\u5df2\u9002\u914d\u7684\u6570\u636e\u6e90\u5305\u62ec\uff1a"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"MySQL"),(0,l.yg)("li",{parentName:"ul"},"PostgreSQL"),(0,l.yg)("li",{parentName:"ul"},"Oracle"),(0,l.yg)("li",{parentName:"ul"},"SQLServer"),(0,l.yg)("li",{parentName:"ul"},"ClickHouse")),(0,l.yg)("p",null,"\u66f4\u591a\u6570\u636e\u6e90\u7684\u9002\u914d\u5df2\u7ecf\u5728\u89c4\u5212\u4e4b\u4e2d\uff0c\u539f\u5219\u4e0a\u4efb\u4f55\u652f\u6301 JDBC \u534f\u8bae\u8bbf\u95ee\u7684\u6570\u636e\u5e93\u5747\u80fd\u901a\u8fc7 JDBC \u5916\u90e8\u8868\u7684\u65b9\u5f0f\u6765\u8bbf\u95ee\u3002\u800c\u4e4b\u524d\u7684 ODBC \u5916\u90e8\u8868\u529f\u80fd\u5c06\u4f1a\u5728\u540e\u7eed\u7684\u67d0\u4e2a\u7248\u672c\u4e2d\u79fb\u9664\uff0c\u8fd8\u8bf7\u5c3d\u91cf\u5207\u6362\u5230 JDBC \u5916\u8868\u529f\u80fd\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/lakehouse/multi-catalog/jdbc"},"https://doris.apache.org/zh-CN/docs/dev/lakehouse/multi-catalog/jdbc")),(0,l.yg)("h3",{id:"6-java-udf"},"6. JAVA UDF"),(0,l.yg)("p",null,"\u5728\u8fc7\u53bb\u7248\u672c\u4e2d\uff0cApache Doris \u63d0\u4f9b\u4e86 C++ \u8bed\u8a00\u7684\u539f\u751f UDF\uff0c\u4fbf\u4e8e\u7528\u6237\u901a\u8fc7\u81ea\u5df1\u7f16\u5199\u81ea\u5b9a\u4e49\u51fd\u6570\u6765\u6ee1\u8db3\u7279\u5b9a\u573a\u666f\u7684\u5206\u6790\u9700\u6c42\u3002\u4f46\u7531\u4e8e\u539f\u751f UDF \u4e0e Doris \u4ee3\u7801\u8026\u5408\u5ea6\u9ad8\u3001\u5f53 UDF \u51fa\u73b0\u9519\u8bef\u65f6\u53ef\u80fd\u4f1a\u5f71\u54cd\u96c6\u7fa4\u7a33\u5b9a\u6027\uff0c\u4e14\u53ea\u652f\u6301 C++ \u8bed\u8a00\uff0c\u5bf9\u4e8e\u719f\u6089 Hive\u3001Spark \u7b49\u5927\u6570\u636e\u6280\u672f\u6808\u7684\u7528\u6237\u800c\u8a00\u5b58\u5728\u8f83\u9ad8\u95e8\u69db\uff0c\u56e0\u6b64\u5728 1.2.0 \u65b0\u7248\u672c\u6211\u4eec\u589e\u52a0\u4e86 Java \u8bed\u8a00\u7684\u81ea\u5b9a\u4e49\u51fd\u6570\uff0c\u652f\u6301\u901a\u8fc7 Java \u7f16\u5199 UDF/UDAF\uff0c\u65b9\u4fbf\u7528\u6237\u5728 Java \u751f\u6001\u4e2d\u4f7f\u7528\u3002\u540c\u65f6\uff0c\u901a\u8fc7\u5806\u5916\u5185\u5b58\u3001Zero Copy \u7b49\u6280\u672f\uff0c\u4f7f\u5f97\u8de8\u8bed\u8a00\u7684\u6570\u636e\u8bbf\u95ee\u6548\u7387\u5927\u5e45\u63d0\u5347\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/ecosystem/udf/java-user-defined-function"},"https://doris.apache.org/zh-CN/docs/dev/ecosystem/udf/java-user-defined-function")),(0,l.yg)("p",null,"\u793a\u4f8b\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://github.com/apache/doris/tree/master/samples/doris-demo"},"https://github.com/apache/doris/tree/master/samples/doris-demo")),(0,l.yg)("h3",{id:"7-remote-udf"},"7. Remote UDF"),(0,l.yg)("p",null,"\u8fdc\u7a0b UDF \u652f\u6301\u901a\u8fc7 RPC \u7684\u65b9\u5f0f\u8bbf\u95ee\u8fdc\u7a0b\u7528\u6237\u81ea\u5b9a\u4e49\u51fd\u6570\u670d\u52a1\uff0c\u4ece\u800c\u5f7b\u5e95\u6d88\u9664\u7528\u6237\u7f16\u5199 UDF \u7684\u8bed\u8a00\u9650\u5236\uff0c\u7528\u6237\u53ef\u4ee5\u4f7f\u7528\u4efb\u610f\u7f16\u7a0b\u8bed\u8a00\u5b9e\u73b0\u81ea\u5b9a\u4e49\u51fd\u6570\uff0c\u5b8c\u6210\u590d\u6742\u7684\u6570\u636e\u5206\u6790\u5de5\u4f5c\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/ecosystem/udf/remote-user-defined-function"},"https://doris.apache.org/zh-CN/docs/ecosystem/udf/remote-user-defined-function")),(0,l.yg)("p",null,"\u793a\u4f8b\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://github.com/apache/doris/tree/master/samples/doris-demo"},"https://github.com/apache/doris/tree/master/samples/doris-demo")),(0,l.yg)("h3",{id:"8-arrayjsonb-\u590d\u5408\u6570\u636e\u7c7b\u578b"},"8. Array/JSONB \u590d\u5408\u6570\u636e\u7c7b\u578b"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"Array \u7c7b\u578b")),(0,l.yg)("p",null,"\u652f\u6301\u4e86\u6570\u7ec4\u7c7b\u578b\uff0c\u540c\u65f6\u4e5f\u652f\u6301\u591a\u7ea7\u5d4c\u5957\u7684\u6570\u7ec4\u7c7b\u578b\u3002\u5728\u4e00\u4e9b\u7528\u6237\u753b\u50cf\uff0c\u6807\u7b7e\u7b49\u573a\u666f\uff0c\u53ef\u4ee5\u5229\u7528 Array \u7c7b\u578b\u66f4\u597d\u7684\u9002\u914d\u4e1a\u52a1\u573a\u666f\u3002\u540c\u65f6\u5728\u65b0\u7248\u672c\u4e2d\uff0c\u6211\u4eec\u4e5f\u5b9e\u73b0\u4e86\u5927\u91cf\u6570\u7ec4\u76f8\u5173\u7684\u51fd\u6570\uff0c\u4ee5\u66f4\u597d\u7684\u652f\u6301\u8be5\u6570\u636e\u7c7b\u578b\u5728\u5b9e\u9645\u573a\u666f\u4e2d\u7684\u5e94\u7528\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Types/ARRAY"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Types/ARRAY")),(0,l.yg)("p",null,"\u76f8\u5173\u51fd\u6570\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-functions/array-functions/array"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-functions/array-functions/array")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"JSONB \u7c7b\u578b")),(0,l.yg)("p",null,"\u652f\u6301\u4e8c\u8fdb\u5236\u7684 JSON \u6570\u636e\u7c7b\u578b JSONB\u3002\u8be5\u7c7b\u578b\u63d0\u4f9b\u66f4\u7d27\u51d1\u7684 JSONB \u7f16\u7801\u683c\u5f0f\uff0c\u540c\u65f6\u63d0\u4f9b\u5728\u7f16\u7801\u683c\u5f0f\u4e0a\u7684\u6570\u636e\u8bbf\u95ee\uff0c\u76f8\u6bd4\u4e8e\u4f7f\u7528\u5b57\u7b26\u4e32\u5b58\u50a8\u7684 JSON \u6570\u636e\uff0c\u6709\u6570\u500d\u7684\u6027\u80fd\u63d0\u5347\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Types/JSONB"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Types/JSONB")),(0,l.yg)("p",null,"\u76f8\u5173\u51fd\u6570\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-functions/json-functions/jsonb_parse"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-functions/json-functions/jsonb_parse")),(0,l.yg)("h3",{id:"9-datev2datatimev2-\u65b0\u7248\u65e5\u671f\u65e5\u671f\u65f6\u95f4\u6570\u636e\u7c7b\u578b"},"9. DateV2/DatatimeV2 \u65b0\u7248\u65e5\u671f/\u65e5\u671f\u65f6\u95f4\u6570\u636e\u7c7b\u578b"),(0,l.yg)("p",null,"\u652f\u6301 DateV2 \u65e5\u671f\u7c7b\u578b\u548c DatetimeV2 \u65e5\u671f\u65f6\u95f4\u7c7b\u578b\uff0c\u76f8\u8f83\u4e8e\u539f\u6709\u7684 Date \u548c Datetime \u6548\u7387\u66f4\u9ad8\u4e14\u652f\u6301\u6700\u591a\u5230\u5fae\u79d2\u7684\u65f6\u95f4\u7cbe\u5ea6\uff0c\u5efa\u8bae\u4f7f\u7528\u65b0\u7248\u65e5\u671f\u7c7b\u578b\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/1.2/sql-manual/sql-reference/Data-Types/DATETIMEV2"},"https://doris.apache.org/zh-CN/docs/1.2/sql-manual/sql-reference/Data-Types/DATETIMEV2")),(0,l.yg)("p",null," ",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/1.2/sql-manual/sql-reference/Data-Types/DATEV2"},"https://doris.apache.org/zh-CN/docs/1.2/sql-manual/sql-reference/Data-Types/DATEV2")),(0,l.yg)("p",null,"\u5f71\u54cd\u8303\u56f4\uff1a"),(0,l.yg)("ol",null,(0,l.yg)("li",{parentName:"ol"},"\u7528\u6237\u9700\u8981\u5728\u5efa\u8868\u65f6\u6307\u5b9a DateV2 \u548c DatetimeV2\uff0c\u539f\u6709\u8868\u7684 Date \u4ee5\u53ca Datetime \u4e0d\u53d7\u5f71\u54cd\u3002"),(0,l.yg)("li",{parentName:"ol"},"Datev2 \u548c Datetimev2 \u5728\u4e0e\u539f\u6765\u7684 Date \u548c Datetime \u505a\u8ba1\u7b97\u65f6\uff08\u4f8b\u5982\u7b49\u503c\u8fde\u63a5\uff09\uff0c\u539f\u6709\u7c7b\u578b\u4f1a\u88abcast \u6210\u65b0\u7c7b\u578b\u505a\u8ba1\u7b97"),(0,l.yg)("li",{parentName:"ol"},"Example \u53c2\u8003\u6587\u6863\u4e2d\u8bf4\u660e")),(0,l.yg)("h3",{id:"10-\u5168\u65b0\u5185\u5b58\u7ba1\u7406\u6846\u67b6"},"10. \u5168\u65b0\u5185\u5b58\u7ba1\u7406\u6846\u67b6"),(0,l.yg)("p",null,"\u5728 Apache Doris 1.2.0 \u7248\u672c\u4e2d\u6211\u4eec\u589e\u52a0\u4e86\u5168\u65b0\u7684\u5185\u5b58\u8ddf\u8e2a\u5668\uff08Memory Tracker\uff09\uff0c\u7528\u4ee5\u8bb0\u5f55 Doris BE \u8fdb\u7a0b\u5185\u5b58\u4f7f\u7528\uff0c\u5305\u62ec\u67e5\u8be2\u3001\u5bfc\u5165\u3001Compaction\u3001Schema Change \u7b49\u4efb\u52a1\u751f\u547d\u5468\u671f\u4e2d\u4f7f\u7528\u7684\u5185\u5b58\u4ee5\u53ca\u5404\u9879\u7f13\u5b58\u3002\u901a\u8fc7 Memory Tracker \u5b9e\u73b0\u4e86\u66f4\u52a0\u7cbe\u7ec6\u7684\u5185\u5b58\u76d1\u63a7\u548c\u63a7\u5236\uff0c\u5927\u5927\u51cf\u5c11\u4e86\u56e0\u5185\u5b58\u8d85\u9650\u5bfc\u81f4\u7684 OOM \u95ee\u9898\uff0c\u4f7f\u7cfb\u7edf\u7a33\u5b9a\u6027\u8fdb\u4e00\u6b65\u5f97\u5230\u63d0\u5347\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/admin-manual/maint-monitor/memory-management/memory-tracker"},"https://doris.apache.org/zh-CN/docs/dev/admin-manual/maint-monitor/memory-management/memory-tracker")),(0,l.yg)("h3",{id:"11-table-valued-function-\u8868\u51fd\u6570"},"11. Table Valued Function \u8868\u51fd\u6570"),(0,l.yg)("p",null,"\u589e\u52a0\u4e86 Table Valued Function\uff08TVF\uff0c\u8868\u51fd\u6570\uff09\uff0cTVF \u53ef\u4ee5\u89c6\u4f5c\u4e00\u5f20\u666e\u901a\u7684\u8868\uff0c\u53ef\u4ee5\u51fa\u73b0\u5728 SQL \u4e2d\u6240\u6709\u201c\u8868\u201d\u53ef\u4ee5\u51fa\u73b0\u7684\u4f4d\u7f6e\uff0c\u8ba9\u7528\u6237\u50cf\u8bbf\u95ee\u5173\u7cfb\u8868\u683c\u5f0f\u6570\u636e\u4e00\u6837\uff0c\u8bfb\u53d6\u6216\u8bbf\u95ee\u6765\u81ea HDFS \u6216 S3 \u4e0a\u7684\u6587\u4ef6\u5185\u5bb9\uff0c"),(0,l.yg)("p",null,"\u4f8b\u5982\u4f7f\u7528 S3 TVF \u5b9e\u73b0\u5bf9\u8c61\u5b58\u50a8\u4e0a\u7684\u6570\u636e\u5bfc\u5165\uff1a"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre"},'insert into tbl select * from s3("s3://bucket/file.*", "ak" = "xx", "sk" = "xxx") where c1 > 2;\n')),(0,l.yg)("p",null,"\u6216\u8005\u76f4\u63a5\u67e5\u8be2 HDFS \u4e0a\u7684\u6570\u636e\u6587\u4ef6\uff1a"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre"},'insert into tbl select * from hdfs("hdfs://bucket/file.*") where c1 > 2;\n')),(0,l.yg)("p",null,"TVF \u53ef\u4ee5\u5e2e\u52a9\u7528\u6237\u5145\u5206\u5229\u7528 SQL \u4e30\u5bcc\u7684\u8868\u8fbe\u80fd\u529b\uff0c\u7075\u6d3b\u5904\u7406\u5404\u7c7b\u6570\u636e\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a\n",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-functions/table-functions/s3"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-functions/table-functions/s3")),(0,l.yg)("p",null,(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-functions/table-functions/hdfs"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-functions/table-functions/hdfs")),(0,l.yg)("h1",{id:"\u66f4\u591a\u529f\u80fd"},"\u66f4\u591a\u529f\u80fd"),(0,l.yg)("h3",{id:"1-\u66f4\u4fbf\u6377\u7684\u5206\u533a\u521b\u5efa\u65b9\u5f0f"},"1. \u66f4\u4fbf\u6377\u7684\u5206\u533a\u521b\u5efa\u65b9\u5f0f"),(0,l.yg)("p",null,"\u652f\u6301\u901a\u8fc7 ",(0,l.yg)("inlineCode",{parentName:"p"},"FROM TO")," \u547d\u4ee4\u521b\u5efa\u4e00\u4e2a\u65f6\u95f4\u8303\u56f4\u5185\u7684\u591a\u4e2a\u5206\u533a\u3002"),(0,l.yg)("p",null,"\u6587\u6863\u641c\u7d22\u201cMULTI RANGE\u201d\uff1a\n",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Create/CREATE-TABLE"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Create/CREATE-TABLE")),(0,l.yg)("p",null,"\u793a\u4f8b\uff1a"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre"},'// \u6839\u636e\u65f6\u95f4date \u521b\u5efa\u5206\u533a\uff0c\u652f\u6301\u591a\u4e2a\u6279\u91cf\u903b\u8f91\u548c\u5355\u72ec\u521b\u5efa\u5206\u533a\u7684\u6df7\u5408\u4f7f\u7528\n\nPARTITION BY RANGE(event_day)(\n FROM ("2000-11-14") TO ("2021-11-14") INTERVAL 1 YEAR,\n FROM ("2021-11-14") TO ("2022-11-14") INTERVAL 1 MONTH,\n FROM ("2022-11-14") TO ("2023-01-03") INTERVAL 1 WEEK,\n FROM ("2023-01-03") TO ("2023-01-14") INTERVAL 1 DAY,\n PARTITION p_20230114 VALUES [(\'2023-01-14\'), (\'2023-01-15\'))\n)\n')),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre"},'// \u6839\u636e\u65f6\u95f4datetime \u521b\u5efa\u5206\u533a\nPARTITION BY RANGE(event_time)(\n FROM ("2023-01-03 12") TO ("2023-01-14 22") INTERVAL 1 HOUR\n)\n')),(0,l.yg)("h3",{id:"2-\u5217\u91cd\u547d\u540d"},"2. \u5217\u91cd\u547d\u540d"),(0,l.yg)("p",null,"\u5bf9\u4e8e\u5f00\u542f\u4e86 Light Schema Change \u7684\u8868\uff0c\u652f\u6301\u5bf9\u5217\u8fdb\u884c\u91cd\u547d\u540d\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Alter/ALTER-TABLE-RENAME"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Alter/ALTER-TABLE-RENAME ")),(0,l.yg)("h3",{id:"3-\u66f4\u4e30\u5bcc\u6743\u9650\u7ba1\u7406"},"3. \u66f4\u4e30\u5bcc\u6743\u9650\u7ba1\u7406"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"\u652f\u6301\u884c\u7ea7\u6743\u9650")),(0,l.yg)("p",null,"\u53ef\u4ee5\u901a\u8fc7 ",(0,l.yg)("inlineCode",{parentName:"p"},"CREATE ROW POLICY")," \u547d\u4ee4\u521b\u5efa\u884c\u7ea7\u6743\u9650\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Create/CREATE-POLICY"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Create/CREATE-POLICY")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u652f\u6301\u6307\u5b9a\u5bc6\u7801\u5f3a\u5ea6\u3001\u8fc7\u671f\u65f6\u95f4\u7b49\u3002")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u652f\u6301\u5728\u591a\u6b21\u5931\u8d25\u767b\u5f55\u540e\u9501\u5b9a\u8d26\u6237\u3002"))),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Account-Management-Statements/ALTER-USER"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Account-Management-Statements/ALTER-USER")),(0,l.yg)("h3",{id:"4-\u5bfc\u5165\u76f8\u5173"},"4. \u5bfc\u5165\u76f8\u5173"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"CSV \u5bfc\u5165\u652f\u6301\u5e26 header \u7684 CSV \u6587\u4ef6\u3002")),(0,l.yg)("p",null,"\u5728\u6587\u6863\u4e2d\u641c\u7d22 ",(0,l.yg)("inlineCode",{parentName:"p"},"csv_with_names"),"\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/Load/STREAM-LOAD/"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/Load/STREAM-LOAD/")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"Stream Load \u65b0\u589e ",(0,l.yg)("inlineCode",{parentName:"li"},"hidden_columns"),"\uff0c\u53ef\u4ee5\u663e\u5f0f\u6307\u5b9a delete flag \u5217\u548c sequence \u5217\u3002")),(0,l.yg)("p",null,"\u5728\u6587\u6863\u4e2d\u641c\u7d22 ",(0,l.yg)("inlineCode",{parentName:"p"},"hidden_columns"),"\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/Load/STREAM-LOAD"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/Load/STREAM-LOAD")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"Spark Load \u652f\u6301 Parquet \u548c ORC \u6587\u4ef6\u5bfc\u5165\u3002")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u652f\u6301\u6e05\u7406\u5df2\u5b8c\u6210\u7684\u5bfc\u5165\u7684 Label\n\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/Load/CLEAN-LABEL"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/Load/CLEAN-LABEL"))),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u652f\u6301\u901a\u8fc7\u72b6\u6001\u6279\u91cf\u53d6\u6d88\u5bfc\u5165\u4f5c\u4e1a\n\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/Load/CANCEL-LOAD"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/Load/CANCEL-LOAD"))),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"Broker Load \u65b0\u589e\u652f\u6301\u963f\u91cc\u4e91 OSS\uff0c\u817e\u8baf CHDFS \u548c\u534e\u4e3a\u4e91 OBS\u3002"))),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/advanced/broker"},"https://doris.apache.org/zh-CN/docs/dev/advanced/broker")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"\u652f\u6301\u901a\u8fc7 hive-site.xml \u6587\u4ef6\u914d\u7f6e\u8bbf\u95ee HDFS\u3002")),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/admin-manual/config/config-dir"},"https://doris.apache.org/zh-CN/docs/dev/admin-manual/config/config-dir")),(0,l.yg)("h3",{id:"5-\u652f\u6301\u901a\u8fc7-show-catalog-recycle-bin-\u529f\u80fd\u67e5\u770b\u56de\u6536\u7ad9\u4e2d\u7684\u5185\u5bb9"},"5. \u652f\u6301\u901a\u8fc7 ",(0,l.yg)("inlineCode",{parentName:"h3"},"SHOW CATALOG RECYCLE BIN")," \u529f\u80fd\u67e5\u770b\u56de\u6536\u7ad9\u4e2d\u7684\u5185\u5bb9\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Show-Statements/SHOW-CATALOG-RECYCLE-BIN"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Show-Statements/SHOW-CATALOG-RECYCLE-BIN")),(0,l.yg)("h3",{id:"6-\u652f\u6301-select--except-\u8bed\u6cd5"},"6. \u652f\u6301 ",(0,l.yg)("inlineCode",{parentName:"h3"},"SELECT * EXCEPT")," \u8bed\u6cd5\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/data-table/basic-usage"},"https://doris.apache.org/zh-CN/docs/dev/data-table/basic-usage")),(0,l.yg)("h3",{id:"7-outfile-\u652f\u6301-orc-\u683c\u5f0f\u5bfc\u51fa\u5e76\u4e14\u652f\u6301\u591a\u5b57\u8282\u5206\u9694\u7b26"},"7. OUTFILE \u652f\u6301 ORC \u683c\u5f0f\u5bfc\u51fa\uff0c\u5e76\u4e14\u652f\u6301\u591a\u5b57\u8282\u5206\u9694\u7b26\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/OUTFILE"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/OUTFILE")),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/OUTFILE"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/OUTFILE")),(0,l.yg)("h3",{id:"8-\u652f\u6301\u901a\u8fc7\u914d\u7f6e\u4fee\u6539\u53ef\u4fdd\u5b58\u7684-query-profile-\u7684\u6570\u91cf"},"8. \u652f\u6301\u901a\u8fc7\u914d\u7f6e\u4fee\u6539\u53ef\u4fdd\u5b58\u7684 Query Profile \u7684\u6570\u91cf\u3002"),(0,l.yg)("p",null,"\u6587\u6863\u641c\u7d22 FE \u914d\u7f6e\u9879\uff1a",(0,l.yg)("inlineCode",{parentName:"p"},"max_query_profile_num")),(0,l.yg)("h3",{id:"9-delete-\u8bed\u53e5\u652f\u6301-in-\u8c13\u8bcd\u6761\u4ef6\u5e76\u4e14\u652f\u6301\u5206\u533a\u88c1\u526a"},"9. DELETE \u8bed\u53e5\u652f\u6301 IN \u8c13\u8bcd\u6761\u4ef6\u3002\u5e76\u4e14\u652f\u6301\u5206\u533a\u88c1\u526a\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/Manipulation/DELETE"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/Manipulation/DELETE")),(0,l.yg)("h3",{id:"10-\u65f6\u95f4\u5217\u7684\u9ed8\u8ba4\u503c\u652f\u6301\u4f7f\u7528-current_timestamp"},"10. \u65f6\u95f4\u5217\u7684\u9ed8\u8ba4\u503c\u652f\u6301\u4f7f\u7528 ",(0,l.yg)("inlineCode",{parentName:"h3"},"CURRENT_TIMESTAMP")),(0,l.yg)("p",null,'\u6587\u6863\u4e2d\u641c\u7d22 "CURRENT_TIMESTAMP"\uff1a',(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Create/CREATE-TABLE"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Create/CREATE-TABLE")),(0,l.yg)("h3",{id:"11-\u6dfb\u52a0\u4e24\u5f20\u7cfb\u7edf\u8868backendsrowsets"},"11. \u6dfb\u52a0\u4e24\u5f20\u7cfb\u7edf\u8868\uff1abackends\u3001rowsets"),(0,l.yg)("p",null,"backends \u662f Doris \u4e2d\u5185\u7f6e\u7cfb\u7edf\u8868\uff0c\u5b58\u653e\u5728 information_schema \u6570\u636e\u5e93\u4e0b\uff0c\u901a\u8fc7\u8be5\u7cfb\u7edf\u8868\u53ef\u4ee5\u67e5\u770b\u5f53\u524d Doris \u96c6\u7fa4\u4e2d\u7684 BE \u8282\u70b9\u4fe1\u606f\u3002"),(0,l.yg)("p",null,"rowsets \u662f Doris \u4e2d\u5185\u7f6e\u7cfb\u7edf\u8868\uff0c\u5b58\u653e\u5728 information_schema \u6570\u636e\u5e93\u4e0b\uff0c\u901a\u8fc7\u8be5\u7cfb\u7edf\u8868\u53ef\u4ee5\u67e5\u770b Doris \u96c6\u7fa4\u4e2d\u5404\u4e2a BE \u8282\u70b9\u5f53\u524d rowsets \u60c5\u51b5\u3002"),(0,l.yg)("p",null,"\u6587\u6863\uff1a"),(0,l.yg)("p",null,(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/admin-manual/system-table/backends"},"https://doris.apache.org/zh-CN/docs/dev/admin-manual/system-table/backends")),(0,l.yg)("p",null,(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/admin-manual/system-table/rowsets"},"https://doris.apache.org/zh-CN/docs/dev/admin-manual/system-table/rowsets")),(0,l.yg)("h3",{id:"12-\u5907\u4efd\u6062\u590d"},"12. \u5907\u4efd\u6062\u590d"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"Restore\u4f5c\u4e1a\u652f\u6301 ",(0,l.yg)("inlineCode",{parentName:"p"},"reserve_replica")," \u53c2\u6570\uff0c\u4f7f\u5f97\u6062\u590d\u540e\u7684\u8868\u7684\u526f\u672c\u6570\u548c\u5907\u4efd\u65f6\u4e00\u81f4\u3002")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"Restore \u4f5c\u4e1a\u652f\u6301 ",(0,l.yg)("inlineCode",{parentName:"p"},"reserve_dynamic_partition_enable")," \u53c2\u6570\uff0c\u4f7f\u5f97\u6062\u590d\u540e\u7684\u8868\u4fdd\u6301\u52a8\u6001\u5206\u533a\u5f00\u542f\u72b6\u6001\u3002"),(0,l.yg)("p",{parentName:"li"},"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Backup-and-Restore/RESTORE"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Backup-and-Restore/RESTORE"))),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u652f\u6301\u901a\u8fc7\u5185\u7f6e\u7684 libhdfs \u8fdb\u884c\u5907\u4efd\u6062\u590d\u64cd\u4f5c\uff0c\u4e0d\u518d\u4f9d\u8d56 broker\u3002"),(0,l.yg)("p",{parentName:"li"},"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Backup-and-Restore/CREATE-REPOSITORY"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Backup-and-Restore/CREATE-REPOSITORY")))),(0,l.yg)("h3",{id:"13-\u652f\u6301\u540c\u673a\u591a\u78c1\u76d8\u4e4b\u95f4\u7684\u6570\u636e\u5747\u8861"},"13. \u652f\u6301\u540c\u673a\u591a\u78c1\u76d8\u4e4b\u95f4\u7684\u6570\u636e\u5747\u8861"),(0,l.yg)("p",null,"\u6587\u6863\uff1a"),(0,l.yg)("p",null,(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Database-Administration-Statements/ADMIN-REBALANCE-DISK"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Database-Administration-Statements/ADMIN-REBALANCE-DISK")),(0,l.yg)("p",null,(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Database-Administration-Statements/ADMIN-CANCEL-REBALANCE-DISK"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Database-Administration-Statements/ADMIN-CANCEL-REBALANCE-DISK")),(0,l.yg)("h3",{id:"14-routine-load-\u652f\u6301\u8ba2\u9605-kerberos-\u8ba4\u8bc1\u7684-kafka-\u670d\u52a1"},"14. Routine Load \u652f\u6301\u8ba2\u9605 Kerberos \u8ba4\u8bc1\u7684 Kafka \u670d\u52a1\u3002"),(0,l.yg)("p",null,"\u6587\u6863\u4e2d\u641c\u7d22 kerberos\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/data-operate/import/import-way/routine-load-manual"},"https://doris.apache.org/zh-CN/docs/dev/data-operate/import/import-way/routine-load-manual")),(0,l.yg)("h3",{id:"15-new-built-in-function-\u65b0\u589e\u5185\u7f6e\u51fd\u6570"},"15. New built-in-function \u65b0\u589e\u5185\u7f6e\u51fd\u6570"),(0,l.yg)("p",null," \u65b0\u589e\u4ee5\u4e0b\u5185\u7f6e\u51fd\u6570:"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"cbrt"),(0,l.yg)("li",{parentName:"ul"},"sequence_match/sequence_count "),(0,l.yg)("li",{parentName:"ul"},"mask/mask_first_n/mask_last_n"),(0,l.yg)("li",{parentName:"ul"},"elt"),(0,l.yg)("li",{parentName:"ul"},"any/any_value"),(0,l.yg)("li",{parentName:"ul"},"group_bitmap_xor"),(0,l.yg)("li",{parentName:"ul"},"ntile"),(0,l.yg)("li",{parentName:"ul"},"nvl"),(0,l.yg)("li",{parentName:"ul"},"uuid"),(0,l.yg)("li",{parentName:"ul"},"initcap"),(0,l.yg)("li",{parentName:"ul"},"regexp_replace_one/regexp_extract_all"),(0,l.yg)("li",{parentName:"ul"},"multi_search_all_positions/multi_match_any"),(0,l.yg)("li",{parentName:"ul"},"domain/domain_without_www/protocol"),(0,l.yg)("li",{parentName:"ul"},"running_difference"),(0,l.yg)("li",{parentName:"ul"},"bitmap_hash64"),(0,l.yg)("li",{parentName:"ul"},"murmur_hash3_64"),(0,l.yg)("li",{parentName:"ul"},"to_monday"),(0,l.yg)("li",{parentName:"ul"},"not_null_or_empty"),(0,l.yg)("li",{parentName:"ul"},"window_funnel"),(0,l.yg)("li",{parentName:"ul"},"outer combine\n\u4ee5\u53ca\u6240\u6709 Array \u51fd\u6570")),(0,l.yg)("h1",{id:"\u5347\u7ea7\u6ce8\u610f\u4e8b\u9879"},"\u5347\u7ea7\u6ce8\u610f\u4e8b\u9879"),(0,l.yg)("h3",{id:"fe-\u5143\u6570\u636e\u7248\u672c\u53d8\u66f4-\u91cd\u8981"},"FE \u5143\u6570\u636e\u7248\u672c\u53d8\u66f4 \u3010\u91cd\u8981\u3011"),(0,l.yg)("p",null,"FE Meta Version \u7531 107 \u53d8\u66f4\u4e3a 114\uff0c\u56e0\u6b64\u4ece 1.1.x \u4ee5\u53ca\u66f4\u65e9\u7248\u672c\u5347\u7ea7\u81f3 1.2.0 \u7248\u672c\u540e\uff0c\u4e0d\u53ef\u56de\u6eda\u5230\u4e4b\u524d\u7248\u672c\u3002\n\u5347\u7ea7\u8fc7\u7a0b\u4e2d\uff0c\u5efa\u8bae\u901a\u8fc7\u7070\u5ea6\u5347\u7ea7\u7684\u65b9\u5f0f\uff0c\u5148\u5347\u7ea7\u90e8\u5206\u8282\u70b9\u5e76\u89c2\u5bdf\u4e1a\u52a1\u8fd0\u884c\u60c5\u51b5\uff0c\u4ee5\u964d\u4f4e\u5347\u7ea7\u98ce\u9669\uff0c\u82e5\u6267\u884c\u975e\u6cd5\u7684\u56de\u6eda\u64cd\u4f5c\u5c06\u53ef\u80fd\u5bfc\u81f4\u6570\u636e\u4e22\u5931\u4e0e\u635f\u574f\u3002"),(0,l.yg)("h3",{id:"\u884c\u4e3a\u6539\u53d8"},"\u884c\u4e3a\u6539\u53d8"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u6743\u9650\u5c42\u7ea7\u53d8\u66f4\u3002"),(0,l.yg)("p",{parentName:"li"},"\u56e0\u4e3a\u5f15\u5165\u4e86 Catalog \u5c42\u7ea7\uff0c\u6240\u4ee5\u76f8\u5e94\u7684\u7528\u6237\u6743\u9650\u5c42\u7ea7\u4e5f\u4f1a\u81ea\u52a8\u53d8\u66f4\u3002\u89c4\u5219\u5982\u4e0b\uff1a"),(0,l.yg)("ul",{parentName:"li"},(0,l.yg)("li",{parentName:"ul"},"GlobalPrivs \u548c ResourcePrivs \u4fdd\u6301\u4e0d\u53d8"),(0,l.yg)("li",{parentName:"ul"},"\u65b0\u589e CatalogPrivs \u5c42\u7ea7\u3002"),(0,l.yg)("li",{parentName:"ul"},"\u539f DatabasePrivs \u5c42\u7ea7\u589e\u52a0 internal \u524d\u7f00\uff08\u8868\u793a internal catalog \u4e2d\u7684 db\uff09"),(0,l.yg)("li",{parentName:"ul"},"\u539f TablePrivs \u5c42\u7ea7\u589e\u52a0 internal \u524d\u7f00\uff08\u8868\u793ainternal catalog\u4e2d\u7684 tbl\uff09"))),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"GroupBy \u548c Having \u5b50\u53e5\u4e2d\uff0c\u4f18\u5148\u4f7f\u7528\u5217\u540d\u800c\u4e0d\u662f\u522b\u540d\u8fdb\u884c\u5339\u914d\u3002")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},'\u4e0d\u518d\u652f\u6301\u521b\u5efa\u4ee5 "mv',(0,l.yg)("em",{parentName:"p"},'" \u5f00\u5934\u7684\u5217\u3002"mv'),'" \u662f\u7269\u5316\u89c6\u56fe\u4e2d\u7684\u4fdd\u7559\u5173\u952e\u8bcd')),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u79fb\u9664\u4e86 order by \u8bed\u53e5\u9ed8\u8ba4\u6dfb\u52a0\u7684 65535 \u884c\u7684 Limit \u9650\u5236\uff0c\u5e76\u589e\u52a0 Session \u53d8\u91cf ",(0,l.yg)("inlineCode",{parentName:"p"},"default_order_by_limit")," \u53ef\u4ee5\u81ea\u5b9a\u914d\u7f6e\u8fd9\u4e2a\u9650\u5236\u3002")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},'"Create Table As Select" \u751f\u6210\u7684\u8868\uff0c\u6240\u6709\u5b57\u7b26\u4e32\u5217\u7edf\u4e00\u4f7f\u7528 String\u7c7b\u578b\uff0c\u4e0d\u518d\u533a\u5206 varchar/char/string ')),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"audit log \u4e2d\uff0c\u79fb\u9664 db \u548c user \u540d\u79f0\u524d\u7684 ",(0,l.yg)("inlineCode",{parentName:"p"},"default_cluster")," \u5b57\u6837\u3002")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"audit log \u4e2d\u589e\u52a0 sql digest \u5b57\u6bb5")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"union \u5b50\u53e5\u603b order by \u903b\u8f91\u53d8\u52a8\u3002\u65b0\u7248\u672c\u4e2d\uff0corder by \u5b50\u53e5\u5c06\u5728 union \u6267\u884c\u5b8c\u6210\u540e\u6267\u884c\uff0c\u9664\u975e\u901a\u8fc7\u62ec\u53f7\u8fdb\u884c\u663e\u5f0f\u7684\u5173\u8054\u3002")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u8fdb\u884c decommission \u64cd\u4f5c\u65f6\uff0c\u4f1a\u5ffd\u7565\u56de\u6536\u7ad9\u4e2d\u7684 tablet\uff0c\u786e\u4fdd decomission \u80fd\u591f\u5b8c\u6210\u3002")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"Decimal \u7684\u8fd4\u56de\u7ed3\u679c\u5c06\u6309\u7167\u539f\u59cb\u5217\u4e2d\u58f0\u660e\u7684\u7cbe\u5ea6\u8fdb\u884c\u663e\u793a \uff0c\u6216\u8005\u6309\u7167\u663e\u5f0f\u6307\u5b9a\u7684 cast \u51fd\u6570\u4e2d\u7684\u7cbe\u5ea6\u8fdb\u884c\u5c55\u793a\u3002")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u5217\u540d\u7684\u957f\u5ea6\u9650\u5236\u7531 64 \u53d8\u66f4\u4e3a 256")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"FE \u914d\u7f6e\u9879\u53d8\u52a8"),(0,l.yg)("ul",{parentName:"li"},(0,l.yg)("li",{parentName:"ul"},"\u9ed8\u8ba4\u5f00\u542f ",(0,l.yg)("inlineCode",{parentName:"li"},"enable_vectorized_load")," \u53c2\u6570\u3002"),(0,l.yg)("li",{parentName:"ul"},"\u589e\u5927\u4e86 ",(0,l.yg)("inlineCode",{parentName:"li"},"create_table_timeout")," \u503c\u3002\u5efa\u8868\u64cd\u4f5c\u7684\u9ed8\u8ba4\u8d85\u65f6\u65f6\u95f4\u5c06\u589e\u5927\u3002 "),(0,l.yg)("li",{parentName:"ul"},"\u4fee\u6539 ",(0,l.yg)("inlineCode",{parentName:"li"},"stream_load_default_timeout_second")," \u9ed8\u8ba4\u503c\u4e3a 3\u5929\u3002"),(0,l.yg)("li",{parentName:"ul"},"\u4fee\u6539",(0,l.yg)("inlineCode",{parentName:"li"},"alter_table_timeout_second")," \u7684\u9ed8\u8ba4\u503c\u4e3a \u4e00\u4e2a\u6708\u3002"),(0,l.yg)("li",{parentName:"ul"},"\u589e\u52a0\u53c2\u6570 ",(0,l.yg)("inlineCode",{parentName:"li"},"max_replica_count_when_schema_change")," \u7528\u4e8e\u9650\u5236 alter \u4f5c\u4e1a\u4e2d\u6d89\u53ca\u7684 replica\u6570\u91cf\uff0c\u9ed8\u8ba4\u4e3a100000\u3002"),(0,l.yg)("li",{parentName:"ul"},"\u6dfb\u52a0 ",(0,l.yg)("inlineCode",{parentName:"li"},"disable_iceberg_hudi_table"),"\u3002\u9ed8\u8ba4\u7981\u7528\u4e86 iceberg \u548c hudi \u5916\u8868\uff0c\u63a8\u8350\u4f7f\u7528 multi catalog\u529f\u80fd\u3002"))),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"BE \u914d\u7f6e\u9879\u53d8\u52a8"),(0,l.yg)("ul",{parentName:"li"},(0,l.yg)("li",{parentName:"ul"},"\u79fb\u9664\u4e86 ",(0,l.yg)("inlineCode",{parentName:"li"},"disable_stream_load_2pc")," \u53c2\u6570\u30022PC\u7684stream load\u53ef\u76f4\u63a5\u4f7f\u7528\u3002"),(0,l.yg)("li",{parentName:"ul"},"\u4fee\u6539",(0,l.yg)("inlineCode",{parentName:"li"},"tablet_rowset_stale_sweep_time_sec")," \uff0c\u4ece1800\u79d2\u4fee\u6539\u4e3a 300 \u79d2\u3002"))),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"Session\u53d8\u91cf\u53d8\u52a8"),(0,l.yg)("ul",{parentName:"li"},(0,l.yg)("li",{parentName:"ul"},"\u4fee\u6539\u53d8\u91cf ",(0,l.yg)("inlineCode",{parentName:"li"},"enable_insert_strict")," \u9ed8\u8ba4\u4e3a true\u3002\u8fd9\u4f1a\u5bfc\u81f4\u4e00\u4e9b\u4e4b\u524d\u53ef\u4ee5\u6267\u884c\uff0c\u4f46\u662f\u63d2\u5165\u4e86\u975e\u6cd5\u503c\u7684insert\u64cd\u4f5c\uff0c\u4e0d\u518d\u80fd\u591f\u6267\u884c\u3002"),(0,l.yg)("li",{parentName:"ul"},"\u4fee\u6539\u53d8\u91cf ",(0,l.yg)("inlineCode",{parentName:"li"},"enable_local_exchange")," \u9ed8\u8ba4\u4e3a true "),(0,l.yg)("li",{parentName:"ul"},"\u9ed8\u8ba4\u901a\u8fc7 lz4 \u538b\u7f29\u8fdb\u884c\u6570\u636e\u4f20\u8f93\uff0c\u901a\u8fc7\u53d8\u91cf ",(0,l.yg)("inlineCode",{parentName:"li"},"fragment_transmission_compression_codec")," \u63a7\u5236 "),(0,l.yg)("li",{parentName:"ul"},"\u589e\u52a0 ",(0,l.yg)("inlineCode",{parentName:"li"},"skip_storage_engine_merge")," \u53d8\u91cf\uff0c\u7528\u4e8e\u8c03\u8bd5 unique \u6216 agg \u6a21\u578b\u7684\u6570\u636e\n\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"li",href:"https://doris.apache.org/zh-CN/docs/dev/advanced/variables"},"https://doris.apache.org/zh-CN/docs/dev/advanced/variables")))),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"BE \u542f\u52a8\u811a\u672c\u4f1a\u901a\u8fc7 ",(0,l.yg)("inlineCode",{parentName:"p"},"/proc/sys/vm/max_map_count")," \u68c0\u67e5\u6570\u503c\u662f\u5426\u5927\u4e8e200W\uff0c\u5426\u5219\u542f\u52a8\u5931\u8d25\u3002")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u79fb\u9664\u4e86 mini load \u63a5\u53e3"))),(0,l.yg)("h3",{id:"\u5347\u7ea7\u8fc7\u7a0b\u4e2d\u9700\u6ce8\u610f"},"\u5347\u7ea7\u8fc7\u7a0b\u4e2d\u9700\u6ce8\u610f"),(0,l.yg)("ol",null,(0,l.yg)("li",{parentName:"ol"},"\u5347\u7ea7\u51c6\u5907")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"\u9700\u66ff\u6362\uff1alib, bin \u76ee\u5f55\uff08start/stop \u811a\u672c\u5747\u6709\u4fee\u6539\uff09"),(0,l.yg)("li",{parentName:"ul"},"BE \u4e5f\u9700\u8981\u914d\u7f6e JAVA_HOME\uff0c\u5df2\u652f\u6301 JDBC Table \u548c Java UDF\u3002"),(0,l.yg)("li",{parentName:"ul"},"fe.conf \u4e2d\u9ed8\u8ba4 JVM Xmx \u53c2\u6570\u4fee\u6539\u4e3a 8GB\u3002")),(0,l.yg)("ol",{start:2},(0,l.yg)("li",{parentName:"ol"},"\u5347\u7ea7\u8fc7\u7a0b\u4e2d\u53ef\u80fd\u7684\u9519\u8bef")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"repeat \u51fd\u6570\u4e0d\u53ef\u4f7f\u7528\u5e76\u62a5\u9519\uff1a",(0,l.yg)("inlineCode",{parentName:"li"},"vectorized repeat function cannot be executed"),"\uff0c\u53ef\u4ee5\u5728\u5347\u7ea7\u524d\u5148\u5173\u95ed\u5411\u91cf\u5316\u6267\u884c\u5f15\u64ce\u3002"),(0,l.yg)("li",{parentName:"ul"},"schema change \u5931\u8d25\u5e76\u62a5\u9519\uff1a",(0,l.yg)("inlineCode",{parentName:"li"},"desc_tbl is not set. Maybe the FE version is not equal to the BE")),(0,l.yg)("li",{parentName:"ul"},"\u5411\u91cf\u5316 hash join \u4e0d\u53ef\u4f7f\u7528\u5e76\u62a5\u9519\u3002",(0,l.yg)("inlineCode",{parentName:"li"},"vectorized hash join cannot be executed"),"\u3002\u53ef\u4ee5\u5728\u5347\u7ea7\u524d\u5148\u5173\u95ed\u5411\u91cf\u5316\u6267\u884c\u5f15\u64ce\u3002")),(0,l.yg)("p",null,"\u4ee5\u4e0a\u9519\u8bef\u5728\u5b8c\u5168\u5347\u7ea7\u540e\u4f1a\u6062\u590d\u6b63\u5e38\u3002"),(0,l.yg)("h3",{id:"\u6027\u80fd\u5f71\u54cd"},"\u6027\u80fd\u5f71\u54cd"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"\u9ed8\u8ba4\u4f7f\u7528 JeMalloc \u4f5c\u4e3a\u65b0\u7248\u672c BE \u7684\u5185\u5b58\u5206\u914d\u5668\uff0c\u66ff\u6362 TcMalloc \u3002")),(0,l.yg)("p",null,"JeMalloc \u76f8\u6bd4 TcMalloc \u4f7f\u7528\u7684\u5185\u5b58\u66f4\u5c11\u3001\u9ad8\u5e76\u53d1\u573a\u666f\u6027\u80fd\u66f4\u9ad8\uff0c\u4f46\u5728\u5185\u5b58\u5145\u8db3\u7684\u6027\u80fd\u6d4b\u8bd5\u65f6\uff0cTcMalloc \u6bd4 JeMalloc \u6027\u80fd\u9ad85%-10%\uff0c\u8be6\u7ec6\u6d4b\u8bd5\u89c1: ",(0,l.yg)("a",{parentName:"p",href:"https://github.com/apache/doris/pull/12496"},"https://github.com/apache/doris/pull/12496")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"tablet sink \u4e2d\u7684 batch size \u4fee\u6539\u4e3a\u81f3\u5c11 8K\u3002"),(0,l.yg)("li",{parentName:"ul"},"\u9ed8\u8ba4\u5173\u95ed Page Cache \u548c \u51cf\u5c11 Chunk Allocator \u9884\u7559\u5185\u5b58\u5927\u5c0f")),(0,l.yg)("p",null,"Page Cache \u548c Chunk Allocator \u5206\u522b\u7f13\u5b58\u7528\u6237\u6570\u636e\u5757\u548c\u5185\u5b58\u9884\u5206\u914d\uff0c\u8fd9\u4e24\u4e2a\u529f\u80fd\u4f1a\u5360\u7528\u4e00\u5b9a\u6bd4\u4f8b\u7684\u5185\u5b58\u5e76\u4e14\u4e0d\u4f1a\u91ca\u653e\u3002\u7531\u4e8e\u8fd9\u90e8\u5206\u5185\u5b58\u5360\u7528\u65e0\u6cd5\u7075\u6d3b\u8c03\u914d\uff0c\u5bfc\u81f4\u5728\u67d0\u4e9b\u573a\u666f\u4e0b\u53ef\u80fd\u56e0\u8fd9\u90e8\u5206\u5185\u5b58\u5360\u7528\u800c\u5bfc\u81f4\u5176\u4ed6\u4efb\u52a1\u5185\u5b58\u4e0d\u8db3\uff0c\u5f71\u54cd\u7cfb\u7edf\u7a33\u5b9a\u6027\u548c\u53ef\u7528\u6027\uff0c\u56e0\u6b64\u65b0\u7248\u672c\u4e2d\u9ed8\u8ba4\u5173\u95ed\u4e86\u8fd9\u4e24\u4e2a\u529f\u80fd\u3002"),(0,l.yg)("p",null,"\u4f46\u5728\u67d0\u4e9b\u5ef6\u8fdf\u654f\u611f\u7684\u62a5\u8868\u573a\u666f\u4e0b\uff0c\u5173\u95ed\u8be5\u529f\u80fd\u53ef\u80fd\u4f1a\u5bfc\u81f4\u67e5\u8be2\u5ef6\u8fdf\u589e\u52a0\u3002\u5982\u7528\u6237\u62c5\u5fc3\u5347\u7ea7\u540e\u8be5\u529f\u80fd\u5bf9\u4e1a\u52a1\u9020\u6210\u5f71\u54cd\uff0c\u53ef\u4ee5\u901a\u8fc7\u5728 be.conf \u4e2d\u589e\u52a0\u4ee5\u4e0b\u53c2\u6570\u4ee5\u4fdd\u6301\u548c\u4e4b\u524d\u7248\u672c\u884c\u4e3a\u4e00\u81f4\u3002"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre"},"disable_storage_page_cache=false\nchunk_reserved_bytes_limit=10%\n")),(0,l.yg)("h3",{id:"api-\u53d8\u5316"},"API \u53d8\u5316"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"BE \u7684 http api \u9519\u8bef\u8fd4\u56de\u4fe1\u606f\uff0c\u7531 ",(0,l.yg)("inlineCode",{parentName:"p"},'{"status": "Fail", "msg": "xxx"}')," \u53d8\u66f4\u4e3a\u66f4\u5177\u4f53\u7684 ",(0,l.yg)("inlineCode",{parentName:"p"},'{"status": "Not found", "msg": "Tablet not found. tablet_id=1202"}'))),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},(0,l.yg)("inlineCode",{parentName:"p"},"SHOW CREATE TABLE")," \u4e2d\uff0c comment\u7684\u5185\u5bb9\u7531\u53cc\u5f15\u53f7\u5305\u88f9\u53d8\u4e3a\u5355\u5f15\u53f7\u5305\u88f9")),(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("p",{parentName:"li"},"\u652f\u6301\u666e\u901a\u7528\u6237\u901a\u8fc7 http \u547d\u4ee4\u83b7\u53d6 query profile\u3002"))),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/admin-manual/http-actions/fe/manager/query-profile-action"},"https://doris.apache.org/zh-CN/docs/dev/admin-manual/http-actions/fe/manager/query-profile-action")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"\u4f18\u5316\u4e86 sequence \u5217\u7684\u6307\u5b9a\u65b9\u5f0f\uff0c\u53ef\u4ee5\u76f4\u63a5\u6307\u5b9a\u5217\u540d\u3002")),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/data-operate/update-delete/sequence-column-manual"},"https://doris.apache.org/zh-CN/docs/dev/data-operate/update-delete/sequence-column-manual")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},(0,l.yg)("inlineCode",{parentName:"li"},"show backends")," \u548c ",(0,l.yg)("inlineCode",{parentName:"li"},"show tablets")," \u8fd4\u56de\u7ed3\u679c\u4e2d\uff0c\u589e\u52a0\u8fdc\u7aef\u5b58\u50a8\u7684\u7a7a\u95f4\u4f7f\u7528\u60c5\u51b5 (#11450)"),(0,l.yg)("li",{parentName:"ul"},"\u79fb\u9664\u4e86 Num-Based Compaction \u76f8\u5173\u4ee3\u7801(#13409)"),(0,l.yg)("li",{parentName:"ul"},"\u91cd\u6784\u4e86BE\u7684\u9519\u8bef\u7801\u673a\u5236\uff0c\u90e8\u5206\u8fd4\u56de\u7684\u9519\u8bef\u4fe1\u606f\u4f1a\u53d1\u751f\u53d8\u5316(#8855)")),(0,l.yg)("h1",{id:"\u5176\u4ed6"},"\u5176\u4ed6"),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"\u652f\u6301Docker \u5b98\u65b9\u955c\u50cf\u3002"),(0,l.yg)("li",{parentName:"ul"},"\u652f\u6301\u5728 MacOS(x86/M1) \u548c ubuntu-22.04 \u4e0a\u7f16\u8bd1 Doris"),(0,l.yg)("li",{parentName:"ul"},"\u652f\u6301\u8fdb\u884cimage \u6587\u4ef6\u7684\u6821\u9a8c\u3002")),(0,l.yg)("p",null,"\u6587\u6863\u641c\u7d22\u201c--image\u201d\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/admin-manual/maint-monitor/metadata-operation"},"https://doris.apache.org/zh-CN/docs/dev/admin-manual/maint-monitor/metadata-operation")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"\u811a\u672c\u76f8\u5173",(0,l.yg)("ul",{parentName:"li"},(0,l.yg)("li",{parentName:"ul"},"FE\u3001BE \u7684 stop \u811a\u672c\u652f\u6301\u901a\u8fc7 ",(0,l.yg)("inlineCode",{parentName:"li"},"--grace")," \u53c2\u6570\u9000\u51faFE\u3001BE\uff08\u4f7f\u7528 kill -15 \u4fe1\u53f7\u4ee3\u66ff kill -9\uff09"),(0,l.yg)("li",{parentName:"ul"},"FE start \u811a\u672c\u652f\u6301\u901a\u8fc7 --version \u67e5\u770b\u5f53\u524dFE \u7248\u672c(#11563)"))),(0,l.yg)("li",{parentName:"ul"},"\u652f\u6301\u901a\u8fc7 ",(0,l.yg)("inlineCode",{parentName:"li"},"ADMIN COPY TABLET")," \u547d\u4ee4\u83b7\u53d6\u67d0\u4e2a tablet \u7684\u6570\u636e\u548c\u76f8\u5173\u5efa\u8868\u8bed\u53e5\uff0c\u7528\u4e8e\u672c\u5730\u95ee\u9898\u8c03\u8bd5 ")),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Database-Administration-Statements/ADMIN-COPY-TABLET"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Database-Administration-Statements/ADMIN-COPY-TABLET")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"\u652f\u6301\u901a\u8fc7 http api\uff0c\u83b7\u53d6\u4e00\u4e2aSQL\u8bed\u53e5\u76f8\u5173\u7684 \u5efa\u8868\u8bed\u53e5\uff0c\u7528\u4e8e\u672c\u5730\u95ee\u9898\u590d\u73b0")),(0,l.yg)("p",null,"\u6587\u6863\uff1a",(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/admin-manual/http-actions/fe/query-schema-action"},"https://doris.apache.org/zh-CN/docs/dev/admin-manual/http-actions/fe/query-schema-action")),(0,l.yg)("ul",null,(0,l.yg)("li",{parentName:"ul"},"\u652f\u6301\u5efa\u8868\u65f6\u5173\u95ed\u8fd9\u4e2a\u8868\u7684 compaction \u529f\u80fd\uff0c\u7528\u4e8e\u6d4b\u8bd5 ")),(0,l.yg)("p",null,'\u6587\u6863\u4e2d\u641c\u7d22 "disble_auto_compaction"\uff1a',(0,l.yg)("a",{parentName:"p",href:"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Create/CREATE-TABLE"},"https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Create/CREATE-TABLE")),(0,l.yg)("h1",{id:"\u81f4\u8c22"},"\u81f4\u8c22"),(0,l.yg)("p",null,"Apache Doris 1.2.0 \u7248\u672c\u7684\u53d1\u5e03\u79bb\u4e0d\u5f00\u6240\u6709\u793e\u533a\u7528\u6237\u7684\u652f\u6301\uff0c\u5728\u6b64\u5411\u6240\u6709\u53c2\u4e0e\u7248\u672c\u8bbe\u8ba1\u3001\u5f00\u53d1\u3001\u6d4b\u8bd5\u3001\u8ba8\u8bba\u7684\u793e\u533a\u8d21\u732e\u8005\u4eec\u8868\u793a\u611f\u8c22\uff0c\u4ed6\u4eec\u5206\u522b\u662f\uff08\u9996\u5b57\u6bcd\u6392\u5e8f\uff09\uff1a"),(0,l.yg)("pre",null,(0,l.yg)("code",{parentName:"pre"},"@924060929\n@a19920714liou\n@adonis0147\n@Aiden-Dong\n@aiwenmo\n@AshinGau\n@b19mud\n@BePPPower\n@BiteTheDDDDt\n@bridgeDream\n@ByteYue\n@caiconghui\n@CalvinKirs\n@cambyzju\n@caoliang-web\n@carlvinhust2012\n@catpineapple\n@ccoffline\n@chenlinzhong\n@chovy-3012\n@coderjiang\n@cxzl25\n@dataalive\n@dataroaring\n@dependabot\n@dinggege1024\n@DongLiang-0\n@Doris-Extras\n@eldenmoon\n@EmmyMiao87\n@englefly\n@FreeOnePlus\n@Gabriel39\n@gaodayue\n@geniusjoe\n@gj-zhang\n@gnehil\n@GoGoWen\n@HappenLee\n@hello-stephen\n@Henry2SS\n@hf200012\n@huyuanfeng2018\n@jacktengg\n@jackwener\n@jeffreys-cat\n@Jibing-Li\n@JNSimba\n@Kikyou1997\n@Lchangliang\n@LemonLiTree\n@lexoning\n@liaoxin01\n@lide-reed\n@link3280\n@liutang123\n@liuyaolin\n@LOVEGISER\n@lsy3993\n@luozenglin\n@luzhijing\n@madongz\n@morningman\n@morningman-cmy\n@morrySnow\n@mrhhsg\n@Myasuka\n@myfjdthink\n@nextdreamblue\n@pan3793\n@pangzhili\n@pengxiangyu\n@platoneko\n@qidaye\n@qzsee\n@SaintBacchus\n@SeekingYang\n@smallhibiscus\n@sohardforaname\n@song7788q\n@spaces-X\n@ssusieee\n@stalary\n@starocean999\n@SWJTU-ZhangLei\n@TaoZex\n@timelxy\n@Wahno\n@wangbo\n@wangshuo128\n@wangyf0555\n@weizhengte\n@weizuo93\n@wsjz\n@wunan1210\n@xhmz\n@xiaokang\n@xiaokangguo\n@xinyiZzz\n@xy720\n@yangzhg\n@Yankee24\n@yeyudefeng\n@yiguolei\n@yinzhijian\n@yixiutt\n@yuanyuan8983\n@zbtzbtzbt\n@zenoyang\n@zhangboya1\n@zhangstar333\n@zhannngchen\n@ZHbamboo\n@zhengshiJ\n@zhenhb\n@zhqu1148980644\n@zuochunwei\n@zy-kkk\n")))}d.isMDXComponent=!0},864695:(e,a,n)=>{n.d(a,{A:()=>t});const t=n.p+"assets/images/coldrun-14421295f1be41b3c07f50cbf6ca22da.png"},351340:(e,a,n)=>{n.d(a,{A:()=>t});const t=n.p+"assets/images/hotrun-775474e22c7de74f0763c3cbca13e377.png"},272099:(e,a,n)=>{n.d(a,{A:()=>t});const t=n.p+"assets/images/lightschemachange_compare-07aee86928ef33271351a31bec3ed9cf.png"},660265:(e,a,n)=>{n.d(a,{A:()=>t});const t=n.p+"assets/images/mergeonwrite_ssb-f76d6e3636efd5bbf53d0d05fdc7d90d.png"},800846:(e,a,n)=>{n.d(a,{A:()=>t});const t=n.p+"assets/images/ssb_flat-a8cfebbc53e6f2db116876e3d53e19c7.png"},135993:(e,a,n)=>{n.d(a,{A:()=>t});const t=n.p+"assets/images/tpch-2048da37571ef8b1d4b0a49c3fba44ca.png"}}]);