{"id":10006133,"date":"2022-08-08T19:23:34","date_gmt":"2022-08-08T11:23:34","guid":{"rendered":"https:\/\/ityet.com\/?p=10006133"},"modified":"2022-08-08T19:23:34","modified_gmt":"2022-08-08T11:23:34","slug":"400%e5%80%8d%e5%8a%a0%e9%80%9f-polardb-htap%e5%ae%9e%e6%97%b6%e6%95%b0%e6%8d%ae%e5%88%86%e6%9e%90%e6%8a%80%e6%9c%af%e8%a7%a3%e5%af%86","status":"publish","type":"post","link":"https:\/\/itmax.cn\/?p=10006133","title":{"rendered":"400\u500d\u52a0\u901f, PolarDB HTAP\u5b9e\u65f6\u6570\u636e\u5206\u6790\u6280\u672f\u89e3\u5bc6"},"content":{"rendered":"<p>\u7b80\u4ecb\uff1a\u00a0PolarDB MySQL\u662f\u56e0\u4e91\u800c\u751f\u7684\u4e00\u4e2a\u6570\u636e\u5e93\u7cfb\u7edf, \u9664\u4e86\u4e91\u4e0aOLTP\u573a\u666f\uff0c\u5927\u91cf\u5ba2\u6237\u4e5f\u5bf9PolarDB\u63d0\u51fa\u4e86\u5b9e\u65f6\u6570\u636e\u5206\u6790\u7684\u6027\u80fd\u9700\u6c42\u3002\u5bf9\u6b64PolarDB\u6280\u672f\u56e2\u961f\u63d0\u51fa\u4e86In-Memory Column Index(IMCI\uff09\u7684\u6280\u672f\u65b9\u6848\uff0c\u5728\u590d\u6742\u5206\u6790\u67e5\u8be2\u573a\u666f\u83b7\u5f97\u7684\u6570\u767e\u500d\u7684\u52a0\u901f\u6548\u679c\u3002\u672c\u6587\u9610\u8ff0\u4e86IMCI\u80cc\u540e\u6280\u672f\u8def\u7ebf\u7684\u601d\u8003\u548c\u5177\u4f53\u65b9\u6848\u7684\u53d6\u820d\u3002\u524d\u8a00\u8fd1\u671f\u5206\u6790\u578b\u6570\u636e\u5e93\u5728\u8d44\u672c\u5e02\u573a\u548c\u6280\u672f\u793e\u533a\u90fd\u975e\u5e38\u7684\u706b\u70ed\uff0c\u5404\u79cd\u521b\u4e1a\u516c\u53f8\u7684\u521b\u65b0\u578b\u4ea7\u54c1\u5982\u96e8\u540e\u6625\u7b0b\u822c\u51fa\u73b0\u3002\u8fd9\u4e00\u65b9\u9762\u662f\u56e0\u4e3a\u5f53\u524d\u9636\u6bb5\u4f01\u4e1a\u65e5\u76ca\u4f9d\u8d56\u4ece\u6570\u636e\u4e2d\u5bfb\u627e\u589e\u957f\u6f5c\u529b\u5e26\u6765\u9700\u6c42\u7684\u589e\u957f\uff0c\u53e6\u4e00\u65b9\u9762\u4e91\u539f\u751f\u6280\u672f\u7684\u53d1\u5c55\u5e26\u6765\u73b0\u6709\u6280\u672f\u4f53\u7cfb\u7684\u8fdb\u5316\u548c\u53d8\u9769\uff0c\u8bf8\u5982Snowflakes\u8fd9\u7c7b\u4ea7\u54c1\u7684\u6210\u529f\u8bc1\u660e\uff0c\u4f7f\u7528\u4e91\u539f\u751f\u6280\u672f\u518d\u9020\u5206\u6790\u578b\u6570\u636e\u5e93\u6280\u672f\u4f53\u7cfb\u662f\u5fc5\u8981\u7684\u4e14\u5b58\u5728\u5f88\u5927\u7684\u5e02\u573a\u673a\u4f1a\u3002PolarDB MySQL\u662f\u56e0\u4e91\u800c\u751f\u7684\u4e00\u4e2a\u6570\u636e\u5e93\u7cfb\u7edf, \u9664\u4e86\u4e91\u4e0aOLTP\u573a\u666f\uff0c\u5927\u91cf\u5ba2\u6237\u4e5f\u5bf9PolarDB\u63d0\u51fa\u4e86\u5b9e\u65f6\u6570\u636e\u5206\u6790\u7684\u6027\u80fd\u9700\u6c42\u3002\u5bf9\u6b64PolarDB\u6280\u672f\u56e2\u961f\u63d0\u51fa\u4e86In-Memory Column Index(IMCI\uff09\u7684\u6280\u672f\u65b9\u6848\uff0c\u5728\u590d\u6742\u5206\u6790\u67e5\u8be2\u573a\u666f\u83b7\u5f97\u7684\u6570\u767e\u500d\u7684\u52a0\u901f\u6548\u679c\u3002\u672c\u6587\u9610\u8ff0\u4e86IMCI\u80cc\u540e\u6280\u672f\u8def\u7ebf\u7684\u601d\u8003\u548c\u5177\u4f53\u65b9\u6848\u7684\u53d6\u820d\u3002PolarDB MySQL \u5217\u5b58\u5206\u6790\u529f\u80fd\u5373\u5c06\u5728\u963f\u91cc\u4e91\u4e0a\u7ebf\uff0c\u656c\u8bf7\u671f\u5f85\u3002\u4e00 MySQL\u751f\u6001HTAP\u6570\u636e\u5e93\u89e3\u51b3\u65b9\u6848MySQL\u662f\u4e00\u6b3e\u4e3b\u8981\u9762\u5411OLTP\u578b\u573a\u666f\u8bbe\u8ba1\u7684\u5f00\u6e90\u6570\u636e\u5e93\uff0c\u5f00\u6e90\u793e\u533a\u7684\u7814\u53d1\u65b9\u5411\u4fa7\u91cd\u4e8e\u52a0\u5f3a\u5176\u4e8b\u52a1\u5904\u7406\u7684\u80fd\u529b\uff0c\u5982\u63d0\u5347\u5355\u6838\u6027\u80fd\/\u591a\u6838\u6269\u5c55\u6027\/\u589e\u5f3a\u96c6\u7fa4\u80fd\u529b\u4ee5\u63d0\u5347\u53ef\u7528\u6027\u7b49\u3002\u5728\u5904\u7406\u5927\u6570\u636e\u91cf\u4e0b\u590d\u6742\u67e5\u8be2\u6240\u9700\u8981\u7684\u80fd\u529b\u65b9\u9762\uff0c\u5982\u4f18\u5316\u5668\u5904\u7406\u5b50\u67e5\u8be2\u7684\u80fd\u529b\uff0c\u9ad8\u6027\u80fd\u7b97\u5b50HashJoin, SQL\u5e76\u884c\u6267\u884c\u7b49\uff0c\u793e\u533a\u4e00\u76f4\u5c06\u5176\u653e\u5728\u6bd4\u8f83\u4f4e\u4f18\u5148\u7ea7\u4e0a\uff0c\u56e0\u6b64MySQL\u7684\u6570\u636e\u5206\u6790\u80fd\u529b\u63d0\u5347\u8fdb\u5c55\u7f13\u6162\u3002\u968f\u7740MySQL\u53d1\u5c55\u4e3a\u4e16\u754c\u4e0a\u6700\u4e3a\u6d41\u884c\u7684\u5f00\u6e90\u6570\u636e\u5e93\u7cfb\u7edf\uff0c\u7528\u6237\u5728\u5176\u4e2d\u5b58\u50a8\u4e86\u5927\u91cf\u7684\u6570\u636e\uff0c\u5e76\u4e14\u8fd0\u884c\u7740\u5173\u952e\u7684\u4e1a\u52a1\u903b\u8f91\uff0c\u5bf9\u8fd9\u4e9b\u6570\u636e\u8fdb\u884c\u5b9e\u65f6\u5206\u6790\u6210\u4e3a\u4e00\u4e2a\u65e5\u76ca\u589e\u957f\u7684\u9700\u6c42\u3002\u5f53\u5355\u673aMySQL\u4e0d\u80fd\u6ee1\u8db3\u9700\u6c42\u65f6\uff0c\u7528\u6237\u5bfb\u6c42\u4e00\u4e2a\u66f4\u597d\u7684\u89e3\u51b3\u65b9\u6848\u30021 MySQL + \u4e13\u7528AP\u6570\u636e\u5e93\u7684\u642d\u79ef\u6728\u65b9\u6848\u4e13\u7528\u5206\u6790\u578b\u6570\u636e\u5e93\u4ea7\u54c1\u9009\u9879\u4f17\u591a\uff0c\u4e00\u4e2a\u53ef\u9009\u65b9\u6848\u662f\u4f7f\u7528\u4e24\u5957\u7cfb\u7edf\u6765\u5206\u522b\u6ee1\u8db3\u7684OLTP\u548cOLAP\u578b\u9700\u6c42\uff0c\u5728\u4e24\u5957\u7cfb\u7edf\u4e2d\u95f4\u901a\u8fc7\u6570\u636e\u540c\u6b65\u5de5\u5177\u7b49\u8fdb\u884c\u6570\u636e\u7684\u5b9e\u65f6\u540c\u6b65\u3002\u66f4\u8fdb\u4e00\u6b65\uff0c\u7528\u6237\u751a\u81f3\u53ef\u4ee5\u589e\u52a0\u4e00\u5c42proxy\uff0c\u81ea\u52a8\u5c06TP\u578b\u8d1f\u8f7d\u8def\u7531\u5230MySQL\u4e0a\uff0c\u800c\u5c06\u5206\u6790\u578b\u8d1f\u8f7d\u8def\u7531\u5230OLAP\u6570\u636e\u5e93\u4e0a\uff0c\u5bf9\u5e94\u7528\u5c42\u5c4f\u853d\u5e95\u5c42\u6570\u636e\u5e93\u7684\u90e8\u7f72\u62d3\u6251\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878769\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u8fd9\u6837\u7684\u67b6\u6784\u6709\u5176\u7075\u6d3b\u4e4b\u5904\uff0c\u4f8b\u5982\u5bf9\u4e8eTP\u6570\u636e\u5e93\u548cAP\u6570\u636e\u5e93\u90fd\u53ef\u4ee5\u5404\u81ea\u9009\u62e9\u6700\u597d\u7684\u65b9\u6848\uff0c\u800c\u4e14\u5b9e\u73b0\u4e86TP\/AP\u8d1f\u8f7d\u7684\u5b8c\u5168\u9694\u79bb\u3002\u4f46\u662f\u5176\u7f3a\u70b9\u4e5f\u662f\u663e\u800c\u6613\u89c1\u7684\u3002\u9996\u5148\uff0c\u5728\u6280\u672f\u4e0a\u9700\u8981\u7ef4\u62a4\u4e24\u5957\u4e0d\u540c\u6280\u672f\u4f53\u7cfb\u7684\u6570\u636e\u5e93\u7cfb\u7edf\uff0c\u5176\u6b21\u7531\u4e8e\u4e24\u5957\u7cfb\u7edf\u5904\u7406\u673a\u5236\u7684\u5dee\u5f02\uff0c\u7ef4\u62a4\u4e0a\u4e0b\u6e38\u7684\u6570\u636e\u5b9e\u65f6\u4e00\u81f4\u6027\u4e5f\u975e\u5e38\u5177\u6709\u6311\u6218\u3002\u800c\u4e14\u7531\u4e8e\u540c\u6b65\u5ef6\u8fdf\u7684\u5b58\u5728\uff0c\u4e0b\u6e38AP\u7cfb\u7edf\u5b58\u50a8\u7684\u7ecf\u5e38\u662f\u8fc7\u65f6\u7684\u6570\u636e\uff0c\u5bfc\u81f4\u65e0\u6cd5\u6ee1\u8db3\u5b9e\u65f6\u5206\u6790\u7684\u9700\u6c42\u30022 \u57fa\u4e8e\u591a\u526f\u672c\u7684Divergent Design\u65b9\u6cd5\u968f\u7740\u4e92\u8054\u7f51\u800c\u5174\u8d77\u7684\u65b0\u5174\u6570\u636e\u5e93\u4ea7\u54c1\u5f88\u591a\u90fd\u517c\u5bb9\u4e86MySQL\u534f\u8bae\uff0c\u56e0\u6b64\u6210\u4e3a\u66ff\u4ee3MySQL\u7684\u4e00\u4e2a\u53ef\u9009\u9879\u3002\u800c\u8fd9\u4e9b\u5206\u5e03\u5f0f\u6570\u636e\u5e93\u4ea7\u54c1\u5927\u90e8\u5206\u91c7\u7528\u4e86\u5206\u5e03\u5f0fShare Nothing\u7684\u65b9\u6848\uff0c\u5176\u4e00\u4e2a\u6838\u5fc3\u7279\u70b9\u662f\u4f7f\u7528\u5206\u5e03\u5f0f\u4e00\u81f4\u6027\u534f\u8bae\u6765\u4fdd\u969c\u5355\u4e2apartition\u591a\u526f\u672c\u4e4b\u95f4\u7684\u6570\u636e\u4e00\u81f4\u6027\u3002\u7531\u4e8e\u4e00\u4efd\u6570\u636e\u5728\u591a\u4e2a\u526f\u672c\u4e4b\u95f4\u4e0a\u5b8c\u5168\u72ec\u7acb\uff0c\u56e0\u6b64\u5728\u4e0d\u540c\u526f\u672c\u4e0a\u4f7f\u7528\u4e0d\u540c\u683c\u5f0f\u8fdb\u884c\u5b58\u50a8\uff0c\u6765\u670d\u52a1\u4e0d\u540c\u7684\u67e5\u8be2\u8d1f\u8f7d\u662f\u4e00\u4e2a\u6613\u4e8e\u5b9e\u65bd\u7684\u65b9\u6848\u3002\u5178\u578b\u7684\u5982TiDB\uff0c\u5176\u4eceTiDB4.0\u5f00\u59cb\uff0c\u5728\u4e00\u4e2aRaft Group\u4e2d\u7684\u5176\u4e2d\u4e00\u4e2a\u526f\u672c\u4e0a\uff0c\u4f7f\u7528\u5217\u5f0f\u5b58\u50a8(TiFlash)\u6765\u54cd\u5e94AP\u578b\u8d1f\u8f7d, \u5e76\u901a\u8fc7TiDB\u7684\u667a\u80fd\u8def\u7531\u529f\u80fd\u6765\u81ea\u52a8\u9009\u53d6\u6570\u636e\u6765\u6e90\u3002\u8fd9\u6837\u5b9e\u73b0\u4e86\u4e00\u5957\u6570\u636e\u5e93\u7cfb\u7edf\u540c\u65f6\u670d\u52a1OLTP\u578b\u8d1f\u8f7d\u548cOLAP\u578b\u8d1f\u8f7d\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878770\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u8be5\u65b9\u6cd5\u5728\u8bf8\u591aResearch\u53caIndustry\u9886\u57df\u7684\u5de5\u4f5c\u4e2d\u90fd\u88ab\u501f\u9274\u5e76\u4f7f\u7528\uff0c\u5e76\u65e5\u76ca\u6210\u4e3a\u5206\u5e03\u5f0f\u6570\u636e\u9886\u57df\u4e00\u4f53\u5316HTAP\u7684\u4e8b\u5b9e\u6807\u51c6\u65b9\u6848\u3002\u4f46\u662f\u5e94\u7528\u8fd9\u4e2a\u65b9\u6848\u7684\u524d\u63d0\u662f\u7528\u6237\u9700\u8981\u8fc1\u79fb\u5230\u5bf9\u5e94\u7684NewSQL\u6570\u636e\u5e93\u7cfb\u7edf\uff0c\u800c\u8fd9\u5f80\u5f80\u5e26\u6765\u5404\u79cd\u517c\u5bb9\u6027\u9002\u914d\u95ee\u9898\u30023 \u4e00\u4f53\u5316\u7684\u884c\u5217\u6df7\u5408\u5b58\u50a8\u65b9\u6848\u6bd4\u591a\u526f\u672cDivergent Design\u65b9\u6cd5\u66f4\u8fdb\u4e00\u6b65\u7684\uff0c\u662f\u5728\u540c\u4e00\u4e2a\u6570\u636e\u5e93\u5b9e\u4f8b\u4e2d\u91c7\u7528\u884c\u5217\u6df7\u5408\u5b58\u50a8\u7684\u65b9\u6848\uff0c\u540c\u65f6\u54cd\u5e94TP\u578b\u548cAP\u578b\u8d1f\u8f7d\u3002\u8fd9\u662f\u4f20\u7edf\u5546\u7528\u6570\u636e\u5e93Oracle\/SQL Server\/DB2\u7b49\u4e0d\u7ea6\u800c\u540c\u91c7\u7528\u7684\u65b9\u6848\u3002Oracle\u516c\u53f8\u5728\u57282013\u5e74\u53d1\u8868\u7684Oracle 12C\u4e0a\uff0c\u53d1\u5e03\u4e86Database In-Memory\u5957\u4ef6\uff0c\u5176\u6700\u6838\u5fc3\u7684\u529f\u80fd\u5373\u4e3aIn-Memory Column Store\uff0c\u901a\u8fc7\u63d0\u4f9b\u884c\u5217\u6df7\u5408\u5b58\u50a8\/\u9ad8\u7ea7\u67e5\u8be2\u4f18\u5316(\u7269\u5316\u8868\u8fbe\u5f0f\uff0cJoinGroup)\u7b49\u6280\u672f\u63d0\u5347OLAP\u6027\u80fd\u3002\u5fae\u8f6f\u5728SQL Server 2016 SP1\u4e0a\uff0c\u5f00\u59cb\u63d0\u4f9bColumn Store Indexs\u529f\u80fd\uff0c\u7528\u6237\u53ef\u4ee5\u6839\u636e\u8d1f\u8f7d\u7279\u5f81\uff0c\u7075\u6d3b\u7684\u4f7f\u7528\u7eaf\u884c\u5b58\u8868\uff0c\u7eaf\u5217\u5b58\u8868\uff0c\u884c\u5217\u6df7\u5408\u8868\uff0c\u5217\u5b58\u8868+\u884c\u5b58\u7d22\u5f15\u7b49\u591a\u79cd\u6a21\u5f0f\u3002IBM\u57282013\u5e74\u53d1\u5e03\u768410.5\u7248\u672c(Kepler)\u4e2d\uff0c\u589e\u52a0\u4e86DB2 BLU Acceleration\u7ec4\u4ef6\uff0c\u901a\u8fc7\u5217\u5f0f\u6570\u636e\u5b58\u50a8\u914d\u5408\u5185\u5b58\u8ba1\u7b97\u4ee5\u53caDataSkipping\u6280\u672f\uff0c\u5927\u5e45\u63d0\u5347\u5206\u6790\u573a\u666f\u7684\u6027\u80fd\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878771\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u4e09\u5bb6\u9886\u5148\u7684\u5546\u7528\u6570\u636e\u5e93\u5382\u5546\uff0c\u5747\u540c\u65f6\u91c7\u7528\u4e86\u884c\u5217\u6df7\u5408\u5b58\u50a8\u7ed3\u5408\u5185\u5b58\u8ba1\u7b97\u7684\u6280\u672f\u8def\u7ebf\uff0c\u8fd9\u662f\u6709\u5176\u5e95\u5c42\u6280\u672f\u903b\u8f91\u7684\uff1a\u5217\u5f0f\u5b58\u50a8\u7531\u4e8e\u6709\u66f4\u597d\u7684IO\u6548\u7387(\u538b\u7f29,DataSkipping,\u5217\u88c1\u526a)\u4ee5\u53caCPU\u8ba1\u7b97\u6548\u7387(Cache Friendly), \u56e0\u6b64\u8981\u8fbe\u5230\u6700\u6781\u81f4\u7684\u5206\u6790\u6027\u80fd\u5fc5\u987b\u4f7f\u7528\u5217\u5f0f\u5b58\u50a8\uff0c\u800c\u5217\u5f0f\u5b58\u50a8\u4e2d\u7d22\u5f15\u7a00\u758f\u5bfc\u81f4\u7684\u7d22\u5f15\u7cbe\u51c6\u5ea6\u95ee\u9898\u51b3\u5b9a\u5b83\u4e0d\u53ef\u80fd\u6210\u4e3aTP\u573a\u666f\u7684\u5b58\u50a8\u683c\u5f0f\uff0c\u5982\u6b64\u884c\u5217\u6df7\u5408\u5b58\u50a8\u6210\u4e3a\u4e00\u4e2a\u5fc5\u9009\u65b9\u6848\u3002\u4f46\u5728\u884c\u5217\u6df7\u5408\u5b58\u50a8\u67b6\u6784\u4e2d\uff0c\u884c\u5b58\u7d22\u5f15\u548c\u5217\u5b58\u7d22\u5f15\u5728\u5904\u7406\u968f\u673a\u66f4\u65b0\u65f6\u5b58\u5728\u6027\u80fd\u9e3f\u6c9f, \u5fc5\u987b\u501f\u52a9DRAM\u7684\u4f4e\u8bfb\u5199\u5ef6\u65f6\u6765\u5f25\u8865\u5217\u5f0f\u5b58\u50a8\u66f4\u65b0\u6548\u7387\u4f4e\u7684\u95ee\u9898\u3002\u56e0\u6b64\u5728\u4f4e\u5ef6\u65f6\u5728\u7ebf\u4e8b\u52a1\u5904\u7406\u548c\u9ad8\u6027\u80fd\u5b9e\u65f6\u6570\u636e\u5206\u6790\u4e24\u5927\u524d\u63d0\u4e0b\uff0c\u884c\u5217\u6df7\u5408\u5b58\u50a8\u7ed3\u5408\u5185\u5b58\u8ba1\u7b97\u662f\u552f\u4e00\u65b9\u6848\u3002\u5bf9\u6bd4\u4e0a\u8ff0\u4e09\u79cd\u65b9\u6cd5\uff0c\u4ece\u7ec4\u5408\u642d\u79ef\u6728\u7684\u65b9\u6cd5\u5230Divergent Design\u65b9\u6cd5\u518d\u5230\u4e00\u4f53\u5316\u7684\u884c\u5217\u6df7\u5408\u5b58\u50a8\uff0c\u5176\u96c6\u6210\u5ea6\u8d8a\u6765\u8d8a\u9ad8\uff0c\u7528\u6237\u7684\u4f7f\u7528\u4f53\u9a8c\u4e5f\u8d8a\u6765\u8d8a\u597d\u3002\u4f46\u662f\u5176\u5bf9\u5185\u6838\u5de5\u7a0b\u5b9e\u73b0\u4e0a\u7684\u6311\u6218\u4e5f\u4e00\u4e2a\u6bd4\u4e00\u4e2a\u5927\u3002\u57fa\u7840\u8f6f\u4ef6\u7684\u4f5c\u7528\u5c31\u662f\u628a\u590d\u6742\u7559\u7ed9\u81ea\u5df1\u628a\u7b80\u5355\u7559\u7ed9\u7528\u6237\uff0c\u56e0\u6b64\u4e00\u4f53\u5316\u7684\u65b9\u6cd5\u662f\u7b26\u5408\u6280\u672f\u53d1\u5c55\u8d8b\u52bf\u7684\u3002\u4e8c PolarDB MySQL AP\u80fd\u529b\u7684\u6f14\u8fdbPolarDB MySQL\u80fd\u529b\u6808\u4e0e\u5f00\u6e90MySQL\u7c7b\u4f3c\uff0c\u957f\u4e8eTP\u4f46AP\u80fd\u529b\u8f83\u5f31\u3002\u7531\u4e8ePolarDB\u63d0\u4f9b\u4e86\u6700\u5927\u5355\u5b9e\u4f8b100TB\u7684\u5b58\u50a8\u80fd\u529b\uff0c\u540c\u65f6\u5176\u4e8b\u52a1\u5904\u7406\u80fd\u529b\u8fdc\u8d85\u7528\u6237\u81ea\u5efaMySQL\u3002\u56e0\u6b64PolarDB\u7528\u6237\u503e\u5411\u4e8e\u5728\u5355\u5b9e\u4f8b\u4e0a\u5b58\u50a8\u66f4\u591a\u7684\u6570\u636e\uff0c\u540c\u65f6\u4f1a\u5728\u8fd9\u4e9b\u6570\u636e\u4e0a\u8fd0\u884c\u4e00\u4e9b\u590d\u6742\u805a\u5408\u67e5\u8be2\u3002\u501f\u52a9\u4e8ePolarDB\u4e00\u5199\u591a\u8bfb\u7684\u67b6\u6784\uff0c\u7528\u6237\u53ef\u4ee5\u589e\u52a0\u53ea\u8bfb\u7684RO\u8282\u70b9\u4ee5\u8fd0\u884c\u590d\u6742\u53ea\u8bfb\u67e5\u8be2\uff0c\u4ece\u800c\u907f\u514d\u5206\u6790\u578b\u67e5\u8be2\u5bf9TP\u8d1f\u8f7d\u7684\u5e72\u6270\u30021 MySQL\u7684\u67b6\u6784\u5728AP\u573a\u666f\u7684\u7f3a\u9677MySQL\u7684\u5b9e\u73b0\u67b6\u6784\u5728\u6267\u884c\u590d\u6742\u67e5\u8be2\u65f6\u6027\u80fd\u5dee\u6709\u591a\u4e2a\u65b9\u9762\u7684\u539f\u56e0\uff0c\u5bf9\u6bd4\u4e13\u7528\u7684OLAP\u7cfb\u7edf\uff0c\u5176\u6027\u80fd\u74f6\u9888\u4f53\u73b0\u591a\u4e2a\u65b9\u9762\uff1aMySQL\u7684SQL\u6267\u884c\u5f15\u64ce\u57fa\u4e8e\u6d41\u5f0f\u8fed\u4ee3\u5668\u6a21\u578b(Volcano Iterator)\u5b9e\u73b0, \u8fd9\u4e2a\u67b6\u6784\u5728\u5de5\u7a0b\u5b9e\u73b0\u4e0a\u4f9d\u8d56\u5927\u91cf\u6df1\u5c42\u6b21\u7684\u51fd\u6570\u5d4c\u5957\u53ca\u865a\u51fd\u6570\u8c03\u7528\uff0c\u5728\u5904\u7406\u6d77\u91cf\u6570\u636e\u65f6\uff0c\u8fd9\u79cd\u67b6\u6784\u4f1a\u5f71\u54cd\u73b0\u4ee3CPU\u6d41\u6c34\u7ebf\u7684pipline\u6548\u7387\uff0c\u5bfc\u81f4CPU Cache\u6548\u7387\u4f4e\u4e0b\u3002\u540c\u65f6Iterator\u6267\u884c\u6a21\u578b\u4e5f\u65e0\u6cd5\u5145\u5206\u53d1\u6325\u73b0\u4ee3CPU\u63d0\u4f9b\u7684SIMD\u6307\u4ee4\u6765\u505a\u6267\u884c\u52a0\u901f\u3002\u6267\u884c\u5f15\u64ce\u53ea\u80fd\u4e32\u884c\u6267\u884c\uff0c\u65e0\u6cd5\u53d1\u6325\u73b0\u4ee3\u591a\u6838CPU\u7684\u5e76\u884c\u8bdd\u80fd\u529b\u3002\u5b98\u65b9\u4eceMySQL 8.0\u5f00\u59cb\uff0c\u5728\u4e00\u4e9bcount(*)\u7b49\u57fa\u672c\u67e5\u8be2\u4e0a\u589e\u52a0\u5e76\u884c\u6267\u884c\u7684\u80fd\u529b\uff0c\u4f46\u662f\u590d\u6742SQL\u7684\u5e76\u884c\u6267\u884c\u80fd\u529b\u6784\u5efa\u4f9d\u7136\u4efb\u91cd\u9053\u8fdc\u3002MySQL\u6700\u5e38\u7528\u7684\u5b58\u50a8\u5f15\u64ce\u90fd\u662f\u6309\u884c\u5b58\u50a8\uff0c\u5728\u6309\u5217\u8fdb\u884c\u6d77\u91cf\u6570\u636e\u5206\u6790\u65f6\uff0c\u6309\u884c\u4ece\u78c1\u76d8\u8bfb\u53d6\u6570\u636e\u5b58\u5728\u975e\u5e38\u5927\u7684IO\u5e26\u5bbd\u6d6a\u8d39\u3002\u5176\u6b21\u884c\u5f0f\u5b58\u50a8\u683c\u5f0f\u5728\u5904\u7406\u5927\u91cf\u6570\u636e\u65f6\u5927\u91cf\u62f7\u8d1d\u4e0d\u5fc5\u8981\u7684\u5217\u6570\u636e\uff0c\u5bf9\u5185\u5b58\u8bfb\u5199\u6548\u7387\u4e5f\u5b58\u5728\u51b2\u51fb\u30022 PolarDB \u5e76\u884c\u67e5\u8be2\u7a81\u7834CPU\u74f6\u9888PolarDB\u56e2\u961f\u5f00\u53d1\u7684\u5e76\u884c\u67e5\u8be2\u6846\u67b6\uff08Parallel Query), \u53ef\u4ee5\u5728\u5f53\u67e5\u8be2\u6570\u636e\u91cf\u5230\u8fbe\u4e00\u5b9a\u9608\u503c\u65f6\uff0c\u81ea\u52a8\u542f\u52a8\u5e76\u884c\u6267\u884c\uff0c\u5728\u5b58\u50a8\u5c42\u5c06\u6570\u636e\u5206\u7247\u5230\u4e0d\u540c\u7684\u7ebf\u7a0b\u4e0a\uff0c\u591a\u4e2a\u7ebf\u7a0b\u5e76\u884c\u8ba1\u7b97\uff0c\u5c06\u7ed3\u679c\u6d41\u6c34\u7ebf\u6c47\u603b\u5230\u603b\u7ebf\u7a0b\uff0c\u6700\u540e\u603b\u7ebf\u7a0b\u505a\u4e9b\u7b80\u5355\u5f52\u5e76\u8fd4\u56de\u7ed9\u7528\u6237\uff0c\u63d0\u9ad8\u67e5\u8be2\u6548\u7387\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878772\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u5e76\u884c\u67e5\u8be2\u7684\u52a0\u5165\u4f7f\u5f97PolarDB\u7a81\u7834\u4e86\u5355\u6838\u6267\u884c\u6027\u80fd\u7684\u9650\u5236\uff0c\u5229\u7528\u591a\u6838CPU\u7684\u5e76\u884c\u5904\u7406\u80fd\u529b\uff0c\u5728PolarDB\u4e0a\u90e8\u5206SQL\u67e5\u8be2\u8017\u65f6\u6210\u6307\u6570\u7ea7\u4e0b\u964d\u30023 Why We Need Column-Store\u5e76\u884c\u6267\u884c\u6846\u67b6\u7a81\u7834\u4e86CPU\u6269\u5c55\u80fd\u529b\u7684\u9650\u5236\uff0c\u5e26\u6765\u4e86\u663e\u8457\u7684\u6027\u80fd\u63d0\u5347\u3002\u7136\u800c\u53d7\u9650\u4e8e\u884c\u5f0f\u5b58\u50a8\u53ca\u884c\u5f0f\u6267\u884c\u5668\u7684\u6548\u7387\u9650\u5236\uff0c\u5355\u6838\u6267\u884c\u6027\u80fd\u5b58\u5728\u5929\u82b1\u677f\uff0c\u5176\u5cf0\u503c\u6027\u80fd\u4f9d\u7136\u4e0e\u4e13\u7528\u7684OLAP\u7cfb\u7edf\u5b58\u5728\u5dee\u8ddd\u3002\u8981\u66f4\u8fdb\u4e00\u6b65\u7684\u63d0\u5347PolarDB MySQL\u7684\u5206\u6790\u6027\u80fd\uff0c\u6211\u4eec\u9700\u8981\u5f15\u5165\u5217\u5f0f\u5b58\u50a8\uff1a\u5728\u5206\u6790\u573a\u666f\u7ecf\u5e38\u9700\u8981\u8bbf\u95ee\u67d0\u4e2a\u5217\u7684\u5927\u91cf\u8bb0\u5f55\uff0c\u800c\u5217\u5b58\u6309\u5217\u62c6\u5206\u5b58\u50a8\u7684\u65b9\u5f0f\u4f1a\u907f\u514d\u8bfb\u53d6\u4e0d\u9700\u8981\u7684\u5217\u3002\u5176\u6b21\u5217\u5b58\u7531\u4e8e\u628a\u76f8\u540c\u5c5e\u6027\u7684\u5217\u8fde\u7eed\u4fdd\u5b58\uff0c\u5176\u538b\u7f29\u6548\u7387\u4e5f\u8fdc\u8d85\u884c\u5b58\uff0c\u901a\u5e38\u53ef\u4ee5\u8fbe\u523010\u500d\u4ee5\u4e0a\u3002\u6700\u540e\u5217\u5b58\u4e2d\u5927\u5757\u5b58\u50a8\u7684\u7ed3\u6784\uff0c\u7ed3\u5408MIN\/MAX\u7b49\u7c97\u7cd9\u7d22\u5f15\u4fe1\u606f\u53ef\u4ee5\u5b9e\u73b0\u5927\u8303\u56f4\u7684\u6570\u636e\u8fc7\u6ee4\u3002\u6240\u6709\u8fd9\u4e9b\u884c\u4e3a\u90fd\u6781\u5927\u7684\u63d0\u5347\u4e86IO\u7684\u6548\u7387\u3002\u5728\u73b0\u4eca\u5b58\u50a8\u8ba1\u7b97\u5206\u79bb\u7684\u67b6\u6784\u4e0b\uff0c\u51cf\u5c11\u901a\u8fc7\u7f51\u7edc\u8bfb\u53d6\u7684\u6570\u636e\u91cf\u53ef\u4ee5\u5bf9\u67e5\u8be2\u5904\u7406\u7684\u54cd\u5e94\u65f6\u95f4\u5e26\u6765\u7acb\u7aff\u89c1\u5f71\u7684\u63d0\u5347\u3002\u5217\u5f0f\u5b58\u50a8\u540c\u6837\u80fd\u63d0\u9ad8CPU\u5728\u5904\u7406\u6570\u636e\u65f6\u7684\u6267\u884c\u6548\u7387\uff0c\u9996\u5148\u5217\u5b58\u7684\u7d27\u51d1\u6392\u5217\u65b9\u5f0f\u53ef\u63d0\u5347CPU\u8bbf\u95ee\u5185\u5b58\u6548\u7387\uff0c\u51cf\u5c11L1\/L2 Cache miss\u5bfc\u81f4\u7684\u6267\u884c\u505c\u987f\u3002\u5176\u6b21\u5728\u5217\u5f0f\u5b58\u50a8\u4e0a\u53ef\u4ee5\u4f7f\u7528\u5e94\u7528SIMD\u6280\u672f\u8fdb\u4e00\u6b65\u63d0\u5347\u5355\u6838\u541e\u5410\u80fd\u529b\uff0c\u800c\u8fd9\u662f\u73b0\u4ee3\u9ad8\u6027\u80fd\u5206\u6790\u6267\u884c\u5f15\u64ce\u7684\u901a\u7528\u6280\u672f\u8def\u7ebf\uff08Oracle\/SQL Server\/ClickHouse).<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878773\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u4e09 PolarDB In-Memory Column IndexPolarDB In-Memory Column Index\u529f\u80fd\u4e3aPolarDB\u5e26\u6765\u5217\u5f0f\u5b58\u50a8\u4ee5\u53ca\u5185\u5b58\u8ba1\u7b97\u80fd\u529b\uff0c\u8ba9\u7528\u6237\u53ef\u4ee5\u5728\u4e00\u5957PolarDB\u6570\u636e\u5e93\u4e0a\u540c\u65f6\u8fd0\u884cTP\u548cAP\u578b\u6df7\u5408\u8d1f\u8f7d\uff0c\u5728\u4fdd\u8bc1\u73b0\u6709PolarDB\u4f18\u5f02\u7684OLTP\u6027\u80fd\u7684\u540c\u65f6\uff0c\u5927\u5e45\u63d0\u5347PolarDB\u5728\u5927\u6570\u636e\u91cf\u4e0a\u8fd0\u884c\u590d\u6742\u67e5\u8be2\u7684\u6027\u80fd\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878774\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>In-Memory Column Index\u4f7f\u7528\u884c\u5217\u6df7\u5408\u5b58\u50a8\u6280\u672f\uff0c\u540c\u65f6\u7ed3\u5408\u4e86PolarDB\u57fa\u4e8e\u5171\u4eab\u5b58\u50a8\u4e00\u5199\u591a\u8bfb\u7684\u67b6\u6784\u7279\u5f81\uff0c\u5176\u5305\u542b\u5982\u4e0b\u51e0\u4e2a\u5173\u952e\u7684\u6280\u672f\u521b\u65b0\u70b9\uff1a\u5728PolarDB\u7684\u5b58\u50a8\u5f15\u64ce\uff08InnoDB)\u4e0a\u65b0\u589e\u5bf9\u5217\u5f0f\u7d22\u5f15\uff08Columnar Index\uff09\u7684\u652f\u6301\uff0c\u7528\u6237\u53ef\u4ee5\u9009\u62e9\u901a\u8fc7DDL\u5c06\u4e00\u5f20\u8868\u7684\u5168\u90e8\u5217\u6216\u8005\u90e8\u5206\u5217\u521b\u5efa\u4e3a\u5217\u7d22\u5f15\uff0c\u5217\u7d22\u5f15\u91c7\u7528\u5217\u538b\u7f29\u5b58\u50a8\uff0c\u5176\u5b58\u50a8\u7a7a\u95f4\u6d88\u8017\u4f1a\u8fdc\u5c0f\u4e8e\u884c\u5b58\u683c\u5f0f\u3002\u9ed8\u8ba4\u5217\u7d22\u5f15\u4f1a\u5168\u90e8\u5e38\u9a7b\u5185\u5b58\u4ee5\u5b9e\u73b0\u6700\u5927\u5316\u5206\u6790\u6027\u80fd\uff0c\u4f46\u662f\u5f53\u5185\u5b58\u4e0d\u591f\u65f6\u4e5f\u652f\u6301\u5c06\u5176\u6301\u4e45\u5316\u5230\u5171\u4eab\u5b58\u50a8\u4e0a\u3002\u5728PolarDB\u7684SQL\u6267\u884c\u5668\u5c42\uff0c\u6211\u4eec\u91cd\u5199\u4e86\u4e00\u5957\u9762\u5411\u5217\u5b58\u7684\u6267\u884c\u5668\u5f15\u64ce\u6846\u67b6(Column-oriented), \u8be5\u6267\u884c\u5668\u6846\u67b6\u5145\u5206\u5229\u7528\u5217\u5f0f\u5b58\u50a8\u7684\u4f18\u52bf\uff0c\u5982\u4ee54096\u884c\u7684\u4e00\u4e2aBatch\u4e3a\u5355\u4f4d\u8bbf\u95ee\u5b58\u50a8\u5c42\u7684\u6570\u636e\uff0c\u4f7f\u7528SIMD\u6307\u4ee4\u63d0\u5347CPU\u5355\u6838\u5fc3\u5904\u7406\u6570\u636e\u7684\u541e\u5410\uff0c\u6240\u6709\u5173\u952e\u7b97\u5b50\u5747\u652f\u6301\u5e76\u884c\u6267\u884c\u3002\u5728\u5217\u5f0f\u5b58\u50a8\u4e0a\uff0c\u65b0\u7684\u6267\u884c\u5668\u5bf9\u6bd4MySQL\u539f\u6709\u7684\u884c\u5b58\u6267\u884c\u5668\u6027\u6709\u51e0\u4e2a\u6570\u91cf\u7ea7\u7684\u6027\u80fd\u63d0\u5347\u3002\u652f\u6301\u884c\u5217\u6df7\u5408\u6267\u884c\u7684\u4f18\u5316\u5668\u6846\u67b6\uff0c\u8be5\u4f18\u5316\u5668\u6846\u67b6\u4f1a\u6839\u636e\u4e0b\u53d1\u7684SQL\u662f\u5426\u80fd\u5728\u5217\u7d22\u5f15\u4e0a\u6267\u884c\u8986\u76d6\u67e5\u8be2\uff0c\u5e76\u4e14\u5176\u6240\u4f9d\u8d56\u7684\u7684\u51fd\u6570\u53ca\u7b97\u5b50\u80fd\u88ab\u5217\u5f0f\u6267\u884c\u5668\u6240\u652f\u6301\u6765\u51b3\u5b9a\u662f\u5426\u542f\u52a8\u5217\u5f0f\u6267\u884c\u3002\u4f18\u5316\u5668\u4f1a\u540c\u65f6\u5bf9\u884c\u5b58\u6267\u884c\u8ba1\u5212\u548c\u5217\u5b58\u6267\u884c\u8ba1\u5212\u505a\u4ee3\u4ef7\u4f30\u7b97\uff0c\u5e76\u9009\u4e2d\u4ee3\u4ef7\u4ea4\u4ee3\u7684\u6267\u884c\u8ba1\u5212\u3002\u7528\u6237\u53ef\u4ee5\u4f7f\u7528PolarDB\u96c6\u7fa4\u4e2d\u7684\u4e00\u4e2aRO\u8282\u70b9\u4f5c\u4e3a\u5206\u6790\u578b\u8282\u70b9\uff0c\u5728\u8be5RO\u8282\u70b9\u4e0a\u914d\u7f6e\u751f\u6210\u5217\u5b58\u7d22\u5f15\uff0c\u590d\u6742\u67e5\u8be2\u8fd0\u884c\u5728\u5217\u5b58\u7d22\u5f15\u4e0a\u5e76\u4f7f\u7528\u6240\u6709\u53ef\u7528CPU\u7684\u8ba1\u7b97\u80fd\u529b\uff0c\u5728\u83b7\u5f97\u6700\u5927\u6267\u884c\u6027\u80fd\u7684\u540c\u65f6\u4e0d\u5f71\u54cd\u8be5\u96c6\u7fa4\u4e0a\u7684TP\u578b\u8d1f\u8f7d\u7684\u53ef\u7528\u5185\u5b58\u548cCPU\u8d44\u6e90\u3002\u51e0\u4e2a\u5173\u952e\u5173\u952e\u6280\u672f\u7ed3\u5408\u4f7f\u5f97PolarDB\u6210\u4e3a\u4e86\u4e00\u4e2a\u771f\u6b63\u7684HTAP\u6570\u636e\u5e93\u7cfb\u7edf\uff0c\u5176\u5728\u5927\u6570\u636e\u91cf\u4e0a\u8fd0\u884c\u590d\u6742\u67e5\u8be2\u7684\u6027\u80fd\u53ef\u4ee5\u4e0eOracle\/SQL Server\u7b49\u4e1a\u754c\u6700\u9876\u5c16\u7684\u5546\u7528\u6570\u636e\u5e93\u7cfb\u7edf\u5904\u5728\u540c\u4e00\u6c34\u5e73\u3002\u56db In-Memory Column Index\u7684\u6280\u672f\u67b6\u67841 \u884c\u5217\u6df7\u5408\u7684\u4f18\u5316\u5668PolarDB\u539f\u751f\u6709\u4e00\u5957\u9762\u5411\u884c\u5b58\u7684\u4f18\u5316\u5668\u7ec4\u4ef6\uff0c\u5728\u5f15\u64ce\u5c42\u589e\u52a0\u5bf9\u5217\u5b58\u529f\u80fd\u652f\u6301\u4e4b\u540e\uff0c\u6b64\u90e8\u5206\u9700\u8981\u8fdb\u884c\u529f\u80fd\u589e\u5f3a\uff0c\u4f18\u5316\u5668\u9700\u8981\u80fd\u591f\u5224\u65ad\u4e00\u4e2a\u67e5\u8be2\u5e94\u8be5\u88ab\u8c03\u5ea6\u5230\u884c\u5b58\u6267\u884c\u8fd8\u662f\u5217\u5b58\u6267\u884c\u3002\u6211\u4eec\u901a\u8fc7\u4e00\u5957\u767d\u540d\u5355\u673a\u5236\u548c\u6267\u884c\u4ee3\u4ef7\u8ba1\u7b97\u6846\u67b6\u6765\u5b8c\u6210\u6b64\u9879\u4efb\u52a1\u3002\u7cfb\u7edf\u4fdd\u8bc1\u5bf9\u652f\u6301\u7684SQL\u8fdb\u884c\u6027\u52a0\u901f\uff0c\u540c\u65f6\u517c\u5bb9\u8fd0\u884c\u4e0d\u652f\u6301\u7684SQL.\u5982\u4f55\u5b9e\u73b0100%\u7684MySQL\u517c\u5bb9\u6027\u6211\u4eec\u901a\u8fc7\u4e00\u5957\u767d\u540d\u5355\u673a\u5236\u6765\u5b9e\u73b0\u517c\u5bb9\u6027\u76ee\u6807\u3002\u4f7f\u7528\u767d\u540d\u5355\u673a\u5236\u662f\u57fa\u4e8e\u5982\u4e0b\u51e0\u70b9\u8003\u91cf\u3002\u7b2c\u4e00\u70b9\u8003\u8651\u5230\u7cfb\u7edf\u53ef\u7528\u8d44\u6e90\uff08\u4e3b\u8981\u662f\u5185\u5b58\uff09\u7684\u9650\u5236\uff0c\u4e00\u822c\u4e0d\u4f1a\u5728\u6240\u6709\u7684\u8868\u7684\u6240\u6709\u4e0a\u90fd\u521b\u5efa\u5217\u7d22\u5f15\uff0c\u5f53\u4e00\u4e2a\u67e5\u8be2\u8bed\u53e5\u9700\u8981\u4f7f\u7528\u5230\u5217\u4e0d\u5728\u5217\u5b58\u4e2d\u5b58\u5728\u65f6\uff0c\u5176\u4e0d\u80fd\u5728\u5217\u5b58\u4e0a\u6267\u884c\u3002\u7b2c\u4e8c\u70b9\uff0c\u57fa\u4e8e\u6027\u80fd\u7684\u7684\u8003\u91cf\uff0c\u6211\u4eec\u5b8c\u5168\u91cd\u5199\u4e86\u4e00\u5957\u9762\u5411\u5217\u5b58\u7684SQL\u6267\u884c\u5f15\u64ce\uff0c\u5305\u62ec\u5176\u4e2d\u6240\u6709\u7684\u7269\u7406\u6267\u884c\u7b97\u5b50\u548c\u8868\u8fbe\u5f0f\u8ba1\u7b97\uff0c\u5176\u6240\u8986\u76d6\u7684\u573a\u666f\u76f8\u5bf9MySQL\u539f\u751f\u884c\u5b58\u80fd\u591f\u652f\u6301\u7684\u8303\u56f4\u6709\u6b20\u7f3a\u3002\u5f53\u4e0b\u53d1\u7684SQL\u4e2d\u5305\u542b\u4e00\u4e9bIMCI\u6267\u884c\u5f15\u64ce\u4e0d\u80fd\u652f\u6301\u7684\u7b97\u5b50\u7247\u6bb5\u6216\u8005\u5217\u7c7b\u578b\u65f6\uff0c\u9700\u8981\u80fd\u80fd\u591f\u8bc6\u522b\u62e6\u622a\u5e76\u5207\u6362\u56de\u884c\u5b58\u6267\u884c\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878775\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u67e5\u8be2\u8ba1\u5212\u8f6c\u6362Plan\u8f6c\u6362\u7684\u76ee\u7684\u662f\u5c06MySQL\u7684\u539f\u751f\u903b\u8f91\u6267\u884c\u8ba1\u5212\u8868\u793a\u65b9\u5f0fAST\u8f6c\u6362\u4e3aIMCI\u7684Logical Plan\u3002\u5728\u751f\u6210IMCI\u7684Logical Plan\u4e4b\u540e\uff0c\u4f1a\u7ecf\u8fc7\u4e00\u8f6eOptimize\u8fc7\u7a0b\uff0c\u751f\u6210Physical Plan\u3002Plan\u8f6c\u6362\u7684\u65b9\u6cd5\u7b80\u5355\u76f4\u63a5\uff0c\u53ea\u9700\u8981\u904d\u5386\u8fd9\u4e2a\u6267\u884c\u8ba1\u5212\u6811\uff0c\u5c06 mysql \u4f18\u5316\u540e\u7684 AST \u8f6c\u6362\u6210IMCI \u4ee5 relation operator \u4f4d\u8282\u70b9\u7684\u6811\u72b6\u7ed3\u6784\u5373\u53ef\uff0c\u662f\u4e00\u4e2a\u6bd4\u8f83\u76f4\u63a5\u7684\u7ffb\u8bd1\u8fc7\u7a0b\u3002\u4e0d\u8fc7\u5728\u8fd9\u4e2a\u8fc7\u7a0b\u4e2d\uff0c\u4e5f\u4f1a\u505a\u4e00\u90e8\u5206\u989d\u5916\u7684\u4e8b\u60c5\uff0c\u5982\u8fdb\u884c\u7c7b\u578b\u7684\u9690\u5f0f\u8f6c\u6362\uff0c\u4ee5\u517c\u5bb9MySQL\u7075\u6d3b\u7684\u7c7b\u578b\u7cfb\u7edf\u3002\u517c\u987e\u884c\u5217\u6df7\u5408\u6267\u884c\u7684\u4f18\u5316\u5668\u6709\u884c\u5b58\u548c\u5217\u5b58\u4e24\u5957\u6267\u884c\u5f15\u64ce\u7684\u5b58\u5728\uff0c\u4f18\u5316\u5668\u5728\u9009\u62e9\u6267\u884c\u8ba1\u5212\u65f6\u6709\u4e86\u66f4\u591a\u7684\u9009\u62e9\uff0c\u5176\u53ef\u4ee5\u5bf9\u6bd4\u884c\u5b58\u6267\u884c\u8ba1\u5212\u7684Cost\u548c\u5217\u5b58\u6267\u884c\u8ba1\u5212\u7684Cost\uff0c\u5e76\u4f7f\u7528\u4ee3\u4ef7\u6700\u4f4e\u7684\u90a3\u4e2a\u6267\u884c\u8ba1\u5212.\u5728PolarDB\u4e2d\u9664\u4e86\u6709\u539f\u751fMySQL\u7684\u884c\u5b58\u4e32\u884c\u6267\u884c\uff0c\u8fd8\u6709\u80fd\u591f\u53d1\u6325\u591a\u6838\u8ba1\u7b97\u80fd\u529b\u7684\u57fa\u4e8e\u884c\u5b58\u7684Paralle Query\u529f\u80fd\u3002\u56e0\u6b64\u5b9e\u9645\u4f18\u5316\u5668\u4f1a\u57281)\u884c\u5b58\u4e32\u884c\u6267\u884c\uff0c2\uff09\u884c\u5b58Paralle Query 3)IMCI \u4e09\u4e2a\u9009\u9879\u4e4b\u4e2d\u9009\u62e9\u3002\u5728\u76ee\u524d\u7684\u8fed\u4ee3\u9636\u6bb5\uff0c\u4f18\u5316\u5668\u6309\u5982\u4e0b\u7684\u6d41\u7a0b\u64cd\u4f5c\uff1a\u6267\u884cSQL\u7684Parse\u8fc7\u7a0b\u5e76\u751f\u6210LogicalPlan\uff0c\u7136\u540e\u8c03\u7528MySQL\u539f\u751f\u4f18\u5316\u5668\u6309\u7167\u6267\u884c\u4e00\u5b9a\u4f18\u5316\u64cd\u4f5c\uff0c\u5982join order\u8c03\u6574\u7b49\u3002\u540c\u65f6\u8be5\u9636\u6bb5\u83b7\u5f97\u7684\u903b\u8f91\u6267\u884c\u8ba1\u5212\u4f1a\u8f6c\u7ed9IMCI\u7684\u6267\u884c\u8ba1\u5212\u7f16\u8bd1\u6a21\u5757,\u5c1d\u8bd5\u751f\u6210\u4e00\u4e2a\u5217\u5b58\u7684\u6267\u884c\u8ba1\u5212(\u6b64\u5904\u53ef\u80fd\u4f1a\u88ab\u767d\u540d\u5355\u62e6\u622a\u5e76fallback\u56de\u884c\u5b58\uff09\u3002PolarDB\u7684Optimizer\u4f1a\u6839\u636e\u884c\u5b58\u7684Plan,\u8ba1\u7b97\u5f97\u51fa\u4e00\u4e2a\u9762\u5411\u884c\u5b58\u7684\u6267\u884cCost\u3002\u5982\u679c\u6b64Cost\u8d85\u8fc7\u4e00\u5b9a\u9608\u503c\uff0c\u5219\u4f1a\u5c1d\u8bd5\u4e0b\u63a8\u5230IMCI\u6267\u884c\u5668\u4f7f\u7528IMCI_Plan\u8fdb\u884c\u6267\u884c\u3002\u5982\u679cIMCI\u65e0\u6cd5\u6267\u884c\u6b64SQL\uff0c\u5219PolarDB\u4f1a\u5c1d\u8bd5\u7f16\u8bd1\u51fa\u4e00\u4e2aParallel Query\u7684\u6267\u884c\u8ba1\u5212\u5e76\u6267\u884c\u3002\u5982\u679c\u65e0\u6cd5\u751f\u6210PQ\u7684\u6267\u884c\u8ba1\u5212\uff0c\u5219\u8bf4\u660eIMCI\u548cPQ\u5747\u65e0\u6cd5\u652f\u6301\u6b64SQL\uff0cfallback\u56de\u884c\u5b58\u6267\u884c\u3002\u4e0a\u8ff0\u7b56\u7565\u662f\u57fa\u4e8e\u8fd9\u6837\u4e00\u4e2a\u5224\u65ad\uff0c\u4ece\u6267\u884c\u6027\u80fd\u5bf9\u6bd4\uff0c\u884c\u5b58\u4e32\u884c\u6267\u884c &lt; \u884c\u5b58\u5e76\u884c\u6267\u884c &lt; IMCI\u3002\u4eceSQL\u517c\u5bb9\u6027\u4e0a\u770b\uff0cIMCI &lt; \u884c\u5b58\u5e76\u884c\u6267\u884c &lt; \u884c\u5b58\u4e32\u884c\u6267\u884c\u3002\u4f46\u662f\u5b9e\u9645\u60c5\u51b5\u4f1a\u66f4\u590d\u6742\uff0c\u4f8b\u5982\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u57fa\u4e8e\u884c\u5b58\u6709\u5e8f\u7d22\u5f15\u8986\u76d6\u7684\u5e76\u884cIndex Join\u4f1a\u6bd4\u57fa\u4e8e\u5217\u5b58\u7684Sort Merge join\u6709\u66f4\u4f4e\u7684Cost. \u76ee\u524d\u7684\u7b56\u7565\u4e0b\u53ef\u80fd\u5c31\u9009\u62e9\u4e86IMCI \u5217\u5b58\u6267\u884c\u30022 \u9762\u5411\u5217\u5f0f\u5b58\u50a8\u7684\u6267\u884c\u5f15\u64ceIMCI\u6267\u884c\u5f15\u64ce\u662f\u4e00\u5957\u9762\u5411\u5217\u5b58\u4f18\u5316,\u5e76\u5b8c\u5168\u72ec\u7acb\u4e8e\u73b0\u6709MySQL\u884c\u5f0f\u6267\u884c\u5668\u7684\u4e00\u4e2a\u5b9e\u73b0\uff0c\u91cd\u5199\u6267\u884c\u5668\u7684\u76ee\u7684\u662f\u4e3a\u4e86\u6d88\u9664\u73b0\u6709\u884c\u5b58\u6267\u884c\u5f15\u64ce\u5728\u6267\u884c\u5206\u6790\u578bSQL\u65f6\u6548\u7387\u4f4e\u4e24\u4e2a\u5173\u952e\u74f6\u9888\u70b9\uff1a\u6309\u884c\u8bbf\u95ee\u5bfc\u81f4\u7684\u865a\u51fd\u6570\u8bbf\u95ee\u5f00\u9500\u4ee5\u53ca\u65e0\u6cd5\u5e76\u884c\u6267\u884c\u3002\u652f\u6301BATCH\u5e76\u884c\u7684\u7b97\u5b50IMCI\u6267\u884c\u5668\u5f15\u64ce\u4f7f\u7528\u7ecf\u5178\u7684\u706b\u5c71\u6a21\u578b\uff0c\u4f46\u662f\u501f\u52a9\u4e86\u5217\u5b58\u5b58\u50a8\u4ee5\u53ca\u5411\u91cf\u6267\u884c\u6765\u63d0\u5347\u6267\u884c\u6027\u80fd\u3002\u706b\u5c71\u6a21\u578b\u91cc\uff0cSQL\u751f\u6210\u7684\u8bed\u6cd5\u6811\u6240\u5bf9\u5e94\u7684\u5173\u7cfb\u4ee3\u6570\u4e2d\uff0c\u6bcf\u4e00\u79cd\u64cd\u4f5c\u4f1a\u62bd\u8c61\u4e3a\u4e00\u4e2a Operator\uff0c\u6267\u884c\u5f15\u64ce\u4f1a\u5c06\u6574\u4e2a SQL \u6784\u5efa\u6210\u4e00\u4e2a Operator \u6811\uff0c\u67e5\u8be2\u6811\u81ea\u9876\u5411\u4e0b\u7684\u8c03\u7528Next()\u63a5\u53e3\uff0c\u6570\u636e\u5219\u81ea\u5e95\u5411\u4e0a\u7684\u88ab\u62c9\u53d6\u5904\u7406\u3002\u8be5\u65b9\u6cd5\u7684\u4f18\u70b9\u662f\u5176\u8ba1\u7b97\u6a21\u578b\u7b80\u5355\u76f4\u63a5\uff0c\u901a\u8fc7\u628a\u4e0d\u540c\u7269\u7406\u7b97\u5b50\u62bd\u8c61\u6210\u4e00\u4e2a\u4e2a\u8fed\u4ee3\u5668\u3002\u6bcf\u4e00\u4e2a\u7b97\u5b50\u53ea\u5173\u5fc3\u81ea\u5df1\u5185\u90e8\u7684\u903b\u8f91\u5373\u53ef\uff0c\u8ba9\u5404\u4e2a\u7b97\u5b50\u4e4b\u95f4\u7684\u8026\u5408\u6027\u964d\u4f4e\uff0c\u4ece\u800c\u6bd4\u8f83\u5bb9\u6613\u5199\u51fa\u4e00\u4e2a\u903b\u8f91\u6b63\u786e\u7684\u6267\u884c\u5f15\u64ce\u3002\u5728IMCI\u7684\u6267\u884c\u5f15\u64ce\u4e2d\uff0c\u6bcf\u4e2aOperator\u4e5f\u4f7f\u7528\u8fed\u4ee3\u5668\u51fd\u6570\u6765\u8bbf\u95ee\u6570\u636e\uff0c\u4f46\u4e0d\u540c\u7684\u662f\u6bcf\u6b21\u8c03\u7528\u8fed\u4ee3\u5668\u4f1a\u8fd4\u56de\u4e00\u6279\u7684\u6570\u636e\uff0c\u800c\u4e0d\u662f\u4e00\u884c\uff0c\u53ef\u4ee5\u8ba4\u4e3a\u8fd9\u662f\u4e00\u4e2a\u652f\u6301batch\u5904\u7406\u7684\u706b\u5c71\u6a21\u578b\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878776\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u4e32\u884c\u6267\u884c\u53d7\u5236\u4e8e\u5355\u6838\u8ba1\u7b97\u6548\u7387\uff0c\u8bbf\u5b58\u5ef6\u65f6\uff0cIO\u5ef6\u8fdf\u7b49\u9650\u5236\uff0c\u6267\u884c\u80fd\u529b\u6709\u9650\u3002\u800cIMCI\u6267\u884c\u5668\u5728\u51e0\u4e2a\u5173\u952e\u7269\u7406\u7b97\u5b50\uff08Scan\/Join\/Agg\u7b49)\u4e0a\u5747\u652f\u6301\u5e76\u884c\u6267\u884c\u3002\u9664\u7269\u7406\u7b97\u5b50\u9700\u8981\u652f\u6301\u5e76\u884c\u5916\uff0cIMCI\u7684\u4f18\u5316\u5668\u9700\u8981\u652f\u6301\u751f\u6210\u5e76\u884c\u6267\u884c\u8ba1\u5212\uff0c\u4f18\u5316\u5668\u5728\u786e\u5b9a\u4e00\u4e2a\u8868\u7684\u8bbf\u95ee\u65b9\u5f0f\u65f6\uff0c\u4f1a\u6839\u636e\u9700\u8981\u8bbf\u95ee\u7684\u6570\u636e\u91cf\u6765\u51b3\u5b9a\u662f\u5426\u542f\u7528\u5e76\u884c\u6267\u884c\uff0c\u5982\u679c\u786e\u5b9a\u542f\u7528\u5e76\u884c\u6267\u884c\uff0c\u5219\u4f1a\u53c2\u8003\u4e00\u7cfb\u5217\u72b6\u6001\u6570\u636e\u51b3\u5b9a\u5e76\u884c\u5ea6\uff1a\u5305\u62ec\u5f53\u524d\u7cfb\u7edf\u53ef\u7528\u7684CPU\/Memory\/IO\u8d44\u6e90, \u76ee\u524d\u5df2\u7ecf\u8c03\u5ea6\u548c\u5728\u6392\u961f\u7684\u4efb\u52a1\u4fe1\u606f, \u7edf\u8ba1\u4fe1\u606f, query \u7684\u590d\u6742\u7a0b\u5ea6, \u7528\u6237\u53ef\u914d\u7f6e\u7684\u53c2\u6570\u7b49\u3002\u6839\u636e\u8fd9\u4e9b\u6570\u636e\u8ba1\u7b97\u51fa\u4e00\u4e2a\u63a8\u8350\u7684DOP\u503c\u7ed9\u7b97\u5b50, \u800c\u4e00\u4e2a\u7b97\u5b50\u5185\u90e8\u4f1a\u4f7f\u7528\u76f8\u540c\u7684DOP\u3002\u540c\u65f6DOP\u4e5f\u652f\u6301\u7528\u6237\u4f7f\u7528Hint\u7684\u65b9\u5f0f\u8fdb\u884c\u8bbe\u5b9a\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878777\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u5411\u91cf\u5316\u6267\u884c\u89e3\u51b3\u4e86\u5355\u6838\u6267\u884c\u6548\u7387\u7684\u95ee\u9898\uff0c\u800c\u5e76\u884c\u6267\u884c\u7a81\u7834\u4e86\u5355\u6838\u7684\u8ba1\u7b97\u74f6\u9888\u3002\u4e8c\u8005\u7ed3\u5408\u4f7f\u5f97IMCI\u6267\u884c\u901f\u5ea6\u76f8\u6bd4\u4f20\u7edfMySQL\u884c\u5f0f\u6267\u884c\u6709\u4e86\u6570\u91cf\u7ea7\u7684\u901f\u5ea6\u63d0\u5347\u3002SIMD\u5411\u91cf\u5316\u8ba1\u7b97\u52a0\u901fAP\u578b\u573a\u666f\uff0cSQL\u4e2d\u7ecf\u5e38\u4f1a\u5305\u542b\u5f88\u591a\u6d89\u53ca\u5230\u4e00\u4e2a\u6216\u8005\u591a\u4e2a\u503c\/\u8fd0\u7b97\u7b26\/\u51fd\u6570\u7ec4\u6210\u7684\u8ba1\u7b97\u8fc7\u7a0b\uff0c\u8fd9\u90fd\u662f\u5c5e\u4e8e\u8868\u8fbe\u5f0f\u8ba1\u7b97\u7684\u8303\u7574\u3002\u8868\u8fbe\u5f0f\u7684\u6c42\u503c\u662f\u4e00\u4e2a\u8ba1\u7b97\u5bc6\u96c6\u578b\u7684\u4efb\u52a1\uff0c\u56e0\u6b64\u8868\u8fbe\u5f0f\u7684\u8ba1\u7b97\u6548\u7387\u662f\u5f71\u54cd\u6574\u4f53\u6027\u80fd\u7684\u4e00\u4e2a\u5173\u952e\u7684\u56e0\u7d20\u3002\u4f20\u7edfMySQL\u7684\u8868\u8fbe\u5f0f\u8ba1\u7b97\u4f53\u7cfb\u4ee5\u4e00\u884c\u4e3a\u4e00\u4e2a\u5355\u4f4d\u7684\u9010\u884c\u8fd0\u7b97\uff0c\u4e00\u822c\u79f0\u5176\u4e3a\u8fed\u4ee3\u5668\u6a21\u578b\u5b9e\u73b0\u3002\u7531\u4e8e\u8fed\u4ee3\u5668\u5bf9\u6574\u5f20\u8868\u8fdb\u884c\u4e86\u62bd\u8c61\uff0c\u6574\u4e2a\u8868\u8fbe\u5f0f\u5b9e\u73b0\u4e3a\u4e00\u4e2a\u6811\u5f62\u7ed3\u6784\uff0c\u5176\u5b9e\u73b0\u4ee3\u7801\u6613\u4e8e\u7406\u89e3\uff0c\u6574\u4e2a\u5904\u7406\u7684\u8fc7\u7a0b\u975e\u5e38\u6e05\u6670\u3002\u4f46\u8fd9\u79cd\u62bd\u8c61\u4f1a\u540c\u65f6\u5e26\u6765\u6027\u80fd\u4e0a\u7684\u635f\u8017\uff0c\u56e0\u4e3a\u5728\u8fed\u4ee3\u5668\u8fdb\u884c\u8fed\u4ee3\u7684\u8fc7\u7a0b\u4e2d\uff0c\u6bcf\u4e00\u884c\u6570\u636e\u7684\u83b7\u53d6\u90fd\u4f1a\u5f15\u53d1\u591a\u5c42\u7684\u51fd\u6570\u8c03\u7528\uff0c\u540c\u65f6\u9010\u884c\u5730\u83b7\u53d6\u6570\u636e\u4f1a\u5e26\u6765\u8fc7\u591a\u7684 I\/O\uff0c\u5bf9\u7f13\u5b58\u4e5f\u4e0d\u53cb\u597d\u3002MySQL\u91c7\u7528\u6811\u5f62\u8fed\u4ee3\u5668\u6a21\u578b\uff0c\u662f\u53d7\u5230\u5b58\u50a8\u5f15\u64ce\u8bbf\u95ee\u65b9\u6cd5\u7684\u9650\u5236\uff0c\u8fd9\u5bfc\u81f4\u5176\u5f88\u96be\u5bf9\u590d\u6742\u7684\u903b\u8f91\u8ba1\u7b97\u8fdb\u884c\u4f18\u5316\u3002\u5728\u5217\u5b58\u683c\u5f0f\u4e0b\uff0c\u7531\u4e8e\u6bcf\u4e00\u5217\u7684\u6570\u636e\u90fd\u5355\u72ec\u987a\u5e8f\u5b58\u50a8\uff0c\u6d89\u53ca\u5230\u67d0\u4e00\u4e2a\u7279\u5b9a\u5217\u4e0a\u7684\u8868\u8fbe\u5f0f\u8ba1\u7b97\u8fc7\u7a0b\u90fd\u53ef\u4ee5\u6279\u91cf\u8fdb\u884c\u3002\u5bf9\u6bcf\u4e00\u4e2a\u8ba1\u7b97\u8868\u8fbe\u5f0f\uff0c\u5176\u8f93\u5165\u548c\u8f93\u51fa\u90fd\u4ee5Batch\u4e3a\u5355\u4f4d\uff0c\u5728Batch\u7684\u5904\u7406\u6a21\u5f0f\u4e0b\uff0c\u8ba1\u7b97\u8fc7\u7a0b\u53ef\u4ee5\u4f7f\u7528SIMD\u6307\u4ee4\u8fdb\u884c\u52a0\u901f\u3002\u65b0\u8868\u8fbe\u5f0f\u7cfb\u7edf\u6709\u4e24\u9879\u5173\u952e\u4f18\u5316\uff1a\u5145\u5206\u5229\u7528\u5217\u5f0f\u5b58\u50a8\u7684\u4f18\u52bf\uff0c\u4f7f\u7528\u5206\u6279\u5904\u7406\u7684\u6a21\u578b\u4ee3\u66ff\u8fed\u4ee3\u5668\u6a21\u578b\uff0c\u6211\u4eec\u4f7f\u7528SIMD\u6307\u4ee4\u91cd\u5199\u4e86\u5927\u90e8\u5206\u5e38\u7528\u6570\u636e\u7c7b\u578b\u7684\u8868\u8fbe\u5f0f\u5185\u6838\u5b9e\u73b0\uff0c\u4f8b\u5982\u6240\u6709\u6570\u5b57\u7c7b\u578b(int, decimal, double)\u7684\u57fa\u672c\u6570\u5b66\u8fd0\u7b97(+, -, *, \/, abs)\uff0c\u5168\u90e8\u90fd\u6709\u5bf9\u5e94\u7684SIMD\u6307\u4ee4\u5b9e\u73b0\u3002\u5728AVX512\u6307\u4ee4\u96c6\u7684\u52a0\u6301\u4e0b, \u5355\u6838\u8fd0\u7b97\u6027\u80fd\u83b7\u5f97\u4f1a\u6570\u500d\u7684\u63d0\u5347\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878778\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u91c7\u7528\u4e86\u4e0ePostgres\u7c7b\u4f3c\u8868\u8fbe\u5f0f\u5b9e\u73b0\u65b9\u6cd5\uff1a\u5728SQL\u7f16\u8bd1\u53ca\u4f18\u5316\u9636\u6bb5\uff0cIMCI\u7684\u8868\u8fbe\u5f0f\u4ee5\u4e00\u4e2a\u6811\u5f62\u7ed3\u6784\u6765\u5b58\u50a8(\u4e0e\u73b0\u6709\u884c\u5f0f\u8fed\u4ee3\u5668\u6a21\u578b\u7684\u8868\u73b0\u65b9\u6cd5\u7c7b\u4f3c)\uff0c\u4f46\u662f\u5728\u6267\u884c\u4e4b\u524d\u4f1a\u5bf9\u8be5\u8868\u8fbe\u5f0f\u6811\u8fdb\u884c\u4e00\u4e2a\u540e\u5e8f\u904d\u5386\uff0c\u5c06\u5176\u8f6c\u6362\u4e3a\u4e00\u7ef4\u6570\u7ec4\u6765\u5b58\u50a8\uff0c\u5728\u540e\u7eed\u8ba1\u7b97\u65f6\u53ea\u9700\u8981\u904d\u5386\u8be5\u4e00\u7ef4\u6570\u7ec4\u7ed3\u6784\u5373\u53ef\u4ee5\u5b8c\u6210\u8fd0\u7b97\u3002\u7531\u4e8e\u6d88\u9664\u4e86\u6811\u5f62\u8fed\u4ee3\u5668\u6a21\u578b\u4e2d\u7684\u9012\u5f52\u8fc7\u7a0b\uff0c\u8ba1\u7b97\u6548\u7387\u66f4\u9ad8\u3002\u540c\u65f6\u8be5\u65b9\u6cd5\u5bf9\u8ba1\u7b97\u8fc7\u7a0b\u63d0\u4f9b\u7b80\u6d01\u7684\u62bd\u8c61\uff0c\u5c06\u6570\u636e\u548c\u8ba1\u7b97\u8fc7\u7a0b\u5206\u79bb\uff0c\u5929\u7136\u9002\u5408\u5e76\u884c\u8ba1\u7b97\u30023 \u652f\u6301\u884c\u5217\u6df7\u5408\u5b58\u50a8\u7684\u5b58\u50a8\u5f15\u64ce\u4e8b\u52a1\u578b\u5e94\u7528\u548c\u5206\u6790\u578b\u5e94\u7528\u5bf9\u5b58\u50a8\u5f15\u64ce\u6709\u7740\u622a\u7136\u4e0d\u540c\u7684\u8981\u6c42\uff0c\u524d\u8005\u8981\u6c42\u7d22\u5f15\u53ef\u4ee5\u7cbe\u786e\u5b9a\u4f4d\u5230\u6bcf\u4e00\u884c\u5e76\u652f\u6301\u9ad8\u6548\u7684\u589e\u5220\u6539\uff0c\u800c\u540e\u8005\u5219\u9700\u8981\u652f\u6301\u9ad8\u6548\u6279\u91cf\u626b\u63cf\u5904\u7406\uff0c\u8fd9\u4e24\u4e2a\u573a\u666f\u5bf9\u5b58\u50a8\u5f15\u64ce\u7684\u8bbe\u8ba1\u8981\u6c42\u5b8c\u5168\u4e0d\u540c\uff0c\u6709\u65f6\u751a\u81f3\u662f\u77db\u76fe\u7684\u3002\u56e0\u6b64\u8bbe\u8ba1\u4e00\u4e2a\u4e00\u4f53\u5316\u7684\u5b58\u50a8\u5f15\u64ce\u80fd\u540c\u65f6\u670d\u52a1OLTP\u578b\u548cOLAP\u578b\u8d1f\u8f7d\u975e\u5e38\u5177\u6709\u6311\u6218\u6027\u3002\u76ee\u524d\u5e02\u573a\u4e0aHTAP\u5b58\u50a8\u5f15\u64ce\u505a\u7684\u6bd4\u8f83\u597d\u7684\u53ea\u6709\u51e0\u5bb6\u6709\u51e0\u5341\u5e74\u7814\u53d1\u79ef\u7d2f\u7684\u5927\u5382\uff0c\u5982Oracle (In-Memory Column Store\uff09\/Sql Server(In Memory Column index\uff09\/DB2\uff08BLU)\u7b49\u3002\u5982TiDB\u7b49\u53ea\u80fd\u901a\u8fc7\u5c06\u591a\u526f\u672c\u96c6\u7fa4\u4e2d\u7684\u4e00\u4e2a\u526f\u672c\u8c03\u6574\u4e3a\u5217\u5b58\u6765\u652f\u6301HTAP\u9700\u6c42\u3002\u4e00\u4f53\u5316\u7684HTAP\u5b58\u50a8\u5f15\u64ce\u4e00\u822c\u4f7f\u7528\u884c\u5217\u6df7\u5408\u7684\u5b58\u50a8\u65b9\u6848\uff0c\u5373\u5f15\u64ce\u4e2d\u540c\u65f6\u5b58\u5728\u884c\u5b58\u548c\u5217\u5b58\uff0c\u884c\u5b58\u670d\u52a1\u4e8eTP\uff0c\u5217\u5b58\u670d\u52a1\u4e8eAP\u3002\u76f8\u6bd4\u4e8e\u90e8\u7f72\u72ec\u7acb\u4e00\u5957OLTP\u6570\u636e\u5e93 \u52a0\u4e00\u5957OLAP\u6570\u636e\u5e93\u6765\u6ee1\u8db3\u4e1a\u52a1\u9700\u6c42\uff0c\u5355\u4e00HTAP\u5f15\u64ce\u5177\u6709\u5982\u4e0b\u7684\u4f18\u52bf\uff1a\u884c\u5b58\u6570\u636e\u548c\u5217\u5b58\u6570\u636e\u5177\u6709\u5b9e\u65f6\u4e00\u81f4\u6027\uff0c\u80fd\u6ee1\u8db3\u5f88\u591a\u82db\u523b\u7684\u4e1a\u52a1\u9700\u6c42\uff0c\u6240\u6709\u6570\u636e\u5199\u5165\u5373\u53ef\u89c1\u4e8e\u5206\u6790\u578b\u67e5\u8be2\u3002\u66f4\u4f4e\u7684\u6210\u672c\uff0c\u7528\u6237\u53ef\u4ee5\u975e\u5e38\u65b9\u4fbf\u7684\u6307\u5b9a\u54ea\u4e9b\u5217\u751a\u81f3\u4e00\u5f20\u8868\u54ea\u4e2a\u8303\u56f4\u7684\u5b58\u50a8\u4e3a\u5217\u5b58\u683c\u5f0f\u7528\u4e8e\u5206\u6790\u3002\u5168\u91cf\u6570\u636e\u7ee7\u7eed\u4ee5\u884c\u5b58\u5b58\u50a8\u3002\u7ba1\u7406\u8fd0\u7ef4\u65b9\u4fbf\uff0c\u7528\u6237\u65e0\u9700\u5173\u6ce8\u6570\u636e\u5728\u4e24\u5957\u7cfb\u7edf\u4e4b\u95f4\u540c\u6b65\u53ca\u6570\u636e\u4e00\u81f4\u6027\u95ee\u9898\u3002PolarDB \u91c7\u7528\u4e86\u548cOracle\/Sql Server\u7b49\u5546\u7528\u6570\u636e\u5e93\u7c7b\u4f3c\u7684\u884c\u5217\u6df7\u5408\u5b58\u50a8\u6280\u672f\uff0c\u6211\u4eec\u79f0\u4e4b\u4e3aIn-Memory Column Index\uff1a\u5efa\u8868\u65f6\u53ef\u4ee5\u6307\u5b9a\u90e8\u5206\u8868\u6216\u8005\u5217\u4e3a\u5217\u5b58\u683c\u5f0f\uff0c\u6216\u8005\u5bf9\u5df2\u6709\u7684\u8868\u53ef\u4ee5\u4f7f\u7528Alter table\u8bed\u53e5\u4e3a\u5176\u589e\u52a0\u5217\u5b58\u5c5e\u6027\uff0c\u5206\u6790\u578b\u67e5\u8be2\u4f1a\u81ea\u52a8\u4f7f\u7528\u5217\u5b58\u683c\u5f0f\u6765\u8fdb\u884c\u67e5\u8be2\u52a0\u901f\u3002\u5217\u5b58\u6570\u636e\u9ed8\u8ba4\u538b\u7f29\u683c\u5f0f\u5b58\u50a8\u5728\u78c1\u76d8\u4e0a\uff0c\u5e76\u53ef\u4ee5\u4f7f\u7528In-Memory Columbia Store Area\u6765\u505a\u7f13\u5b58\u52a0\u901f\u5e76\u52a0\u901f\u67e5\u8be2\uff0c\u4f20\u7edf\u7684\u884c\u683c\u5f0f\u4f9d\u7136\u4fdd\u5b58\u5728BufferPool\u4e2d\u4f9bOLTP\u6027\u8d1f\u8f7d\u4f7f\u7528\u3002\u6240\u6709\u4e8b\u52a1\u7684\u589e\u5220\u6539\u64cd\u4f5c\u90fd\u4f1a\u5b9e\u65f6\u53cd\u5e94\u5230\u5217\u5b58\u5b58\u50a8\u4e0a\uff0c\u4fdd\u8bc1\u4e8b\u52a1\u7ea7\u522b\u7684\u6570\u636e\u4e00\u81f4\u6027\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878779\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u5b9e\u73b0\u4e00\u4e2a\u884c\u5217\u6df7\u5408\u7684\u5b58\u50a8\u5f15\u64ce\u6280\u672f\u4e0a\u975e\u5e38\u56f0\u96be\uff0c\u4f46\u662f\u5728InnoDB\u8fd9\u6837\u4e00\u4e2a\u6210\u719f\u7684\u9762\u5411OLTP\u8d1f\u8f7d\u4f18\u5316\u7684\u5b58\u50a8\u5f15\u64ce\u4e2d\u589e\u52a0\u5217\u5b58\u652f\u6301\uff0c\u53c8\u9762\u4e34\u4e0d\u540c\u7684\u60c5\u51b5\uff1a\u6ee1\u8db3OLTP\u4e1a\u52a1\u7684\u9700\u6c42\u662f\u7b2c\u4e00\u4f18\u5148\u7684\uff0c\u56e0\u6b64\u589e\u52a0\u5217\u5b58\u652f\u6301\u4e0d\u80fd\u5bf9TP\u6027\u80fd\u592a\u5927\u5f71\u54cd\u3002\u8fd9\u8981\u6c42\u6211\u4eec\u7ef4\u62a4\u5217\u5b58\u5fc5\u987b\u8db3\u591f\u8f7b\u91cf\uff0c\u5fc5\u8981\u65f6\u9700\u8981\u727a\u7272AP\u6027\u80fd\u4fddTP\u6027\u80fd\u3002\u5217\u5b58\u7684\u8bbe\u8ba1\u65e0\u9700\u8003\u8651\u4e8b\u52a1\u5e76\u53d1\u5bf9\u6570\u636e\u7684\u4fee\u6539, \u6570\u636e\u7684unique check\u7b49\u95ee\u9898\uff0c\u8fd9\u4e9b\u95ee\u9898\u5728\u884c\u5b58\u7cfb\u7edf\u4e2d\u5df2\u7ecf\u88ab\u89e3\u51b3\uff0c\u800c\u8fd9\u4e9b\u95ee\u9898\u5bf9ClickHouse\u7b49\u5355\u72ec\u7684\u5217\u5b58\u5f15\u64ce\u662f\u975e\u5e38\u96be\u4ee5\u5904\u7406\u7684\u3002\u7531\u4e8e\u6709\u4e00\u4e2a\u4e45\u7ecf\u8003\u9a8c\u7684\u884c\u5b58\u7cfb\u7edf\u7684\u5b58\u5728\uff0c\u5217\u5b58\u7cfb\u7edf\u51fa\u73b0\u4efb\u4f55\u95ee\u9898\uff0c\u90fd\u53ef\u4ee5\u5207\u6362\u56de\u884c\u5b58\u7cfb\u7edf\u54cd\u5e94\u67e5\u8be2\u8bf7\u6c42\u3002\u4e0a\u8ff0\u6761\u4ef6\u53ef\u8c13\u6709\u5229\u6709\u5f0a\uff0c\u8fd9\u4e5f\u5f71\u54cd\u4e86\u5bf9PolarDB\u6574\u4e2a\u884c\u5217\u6df7\u5408\u5b58\u50a8\u7684\u65b9\u6848\u8bbe\u8ba1\u3002\u8868\u73b0\u4e3aIndex\u7684\u5217\u5b58\u5728MySQL\u63d2\u4ef6\u5f0f\u7684\u5b58\u50a8\u5f15\u64ce\u6846\u67b6\u7684\u67b6\u6784\u4e0b\uff0c\u589e\u52a0\u5217\u5b58\u652f\u6301\u6700\u7b80\u5355\u65b9\u6848\u662f\u5b9e\u73b0\u4e00\u4e2a\u5355\u72ec\u7684\u5b58\u50a8\u5f15\u64ce\uff0c\u5982Inforbright\u4ee5\u53caMarinaDB\u7684ColumnStore\u90fd\u91c7\u7528\u4e86\u8fd9\u79cd\u65b9\u6848\u3002\u800cPolarDB\u91c7\u7528\u4e86\u5c06\u5217\u5b58\u5b9e\u73b0\u4e3aInnoDB\u7684\u4e8c\u7ea7\u7d22\u5f15\u7684\u65b9\u6848\uff0c\u4e3b\u8981\u57fa\u4e8e\u5982\u4e0b\u51e0\u70b9\u8003\u91cf\uff1aInnoDB\u539f\u751f\u662f\u652f\u6301\u591a\u7d22\u5f15\u7684\uff0cInsert\/Update\/Delete\u64cd\u4f5c\u90fd\u4f1a\u4ee5\u884c\u7c92\u5ea6apply\u5230Primary Index\u548c\u6240\u6709\u7684Secondary Index\u4e0a\uff0c\u5e76\u4e14\u4fdd\u8bc1\u4e8b\u52a1\u3002\u5c06\u5217\u5b58\u5b9e\u73b0\u4e3a\u4e00\u4e2a\u4e8c\u7ea7\u7d22\u5f15\u53ef\u4ee5\u590d\u7528\u8fd9\u5957\u4e8b\u52a1\u5904\u7406\u6846\u67b6\u3002\u5728\u6570\u636e\u7f16\u7801\u683c\u5f0f\u4e0a\uff0c\u5b9e\u73b0\u4e3a\u4e8c\u7ea7\u7d22\u5f15\u7684\u5217\u5b58\u53ef\u4ee5\u548c\u5176\u4ed6\u884c\u5b58\u7d22\u5f15\u4f7f\u7528\u5b8c\u5168\u4e00\u6837\u7684\u5185\u683c\u5f0f\uff0c\u76f4\u63a5\u5185\u5b58\u62f7\u8d1d\u5373\u53ef\uff0c\u4e0d\u9700\u8981\u8003\u8651charset\u548ccollation\u7b49\u4fe1\u606f\uff0c\u8fd9\u5bf9\u4e0a\u5c42\u6267\u884c\u5668\u4e5f\u662f\u5b8c\u5168\u900f\u660e\u7684\u3002\u4e8c\u7ea7\u7d22\u5f15\u64cd\u4f5c\u975e\u5e38\u7075\u6d3b\uff0c\u53ef\u4ee5\u5728\u5efa\u8868\u65f6\u5373\u6307\u5b9a\u7d22\u5f15\u6240\u5305\u542b\u7684\u5217\uff0c\u4e5f\u53ef\u4ee5\u540e\u7eed\u901a\u8fc7DDL\u8bed\u53e5\u5bf9\u4e00\u4e2a\u4e8c\u7ea7\u7d22\u5f15\u4e2d\u5305\u542b\u7684\u5217\u8fdb\u884c\u589e\u52a0\u6216\u8005\u5220\u9664\u64cd\u4f5c\u3002\u4f8b\u5982\u7528\u6237\u53ef\u4ee5\u5c06\u9700\u8981\u5206\u6790\u7684int\/float\/Double\u5217\u52a0\u5165\u5217\u7d22\u5f15\uff0c\u800c\u5bf9\u4e8e\u4e00\u822c\u53ea\u9700\u8981\u70b9\u67e5\u4f46\u662f\u53c8\u5360\u7528\u5927\u91cf\u7a7a\u95f4\u7684text\/blob\u5b57\u6bb5\uff0c\u5219\u53ef\u4ee5\u4fdd\u7559\u5728\u884c\u5b58\u4e2d\u3002\u5d29\u6e83\u6062\u590d\u8fc7\u7a0b\u53ef\u4ee5\u590d\u7528InnoDB\u7684Redo\u4e8b\u52a1\u65e5\u5fd7\u6a21\u5757, \u4e0e\u73b0\u6709\u5b9e\u73b0\u65e0\u7f1d\u517c\u5bb9\u3002\u540c\u65f6\u4e5f\u65b9\u4fbf\u652f\u6301PolarDB\u7684\u7269\u7406\u590d\u5236\u8fc7\u7a0b\uff0c\u652f\u6301\u5728\u72ec\u7acbRO\u8282\u70b9\u6216\u8005Standby\u8282\u70b9\u4e0a\u751f\u6210\u5217\u5b58\u7d22\u5f15\u63d0\u4f9b\u5206\u6790\u670d\u52a1\u3002\u540c\u65f6\u4e8c\u7ea7\u7d22\u5f15\u4e0e\u4e3b\u8868\u6709\u4e00\u6837\u7684\u751f\u547d\u5468\u671f\uff0c\u65b9\u4fbf\u7ba1\u7406\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878780\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u5982\u4e0a\u56fe\u6240\u793a\uff0c\u5728PolarDB\u4e2d\u6240\u6709Primary Index\u548cSeconary Index\u90fd\u5b9e\u73b0\u4e3a\u4e00\u4e2aB+Tree\u3002\u800c\u5217\u7d22\u5f15\u5728\u5b9a\u4e49\u4e0a\u662f\u4e00\u4e2aIndex\uff0c\u4f46\u5176\u5b9e\u662f\u4e00\u4e2a\u865a\u62df\u7684\u7d22\u5f15\uff0c\u7528\u4e8e\u6355\u83b7\u5bf9\u8be5\u7d22\u5f15\u8986\u76d6\u5217\u7684\u589e\u5220\u6539\u64cd\u4f5c\u3002\u5bf9\u4e8e\u4e0a\u9762\u7684\u8868\u5176\u4e3b\u8868(Primary Index\uff09\u5305\u542b\uff08C1,C2,C3,C4,C5) 5\u5217\u6570\u636e, Seconary Index\u7d22\u5f15\u5305\u542b(C2,C1) \u4e24\u5217\u6570\u636e, \u5728\u666e\u901a\u4e8c\u7ea7\u7d22\u5f15\u4e2d\uff0cC2\u4e0eC1\u7f16\u7801\u6210\u4e00\u884c\u4fdd\u5b58\u5728B+tree\u4e2d\u3002\u800c\u5176\u4e2d\u7684\u5217\u5b58\u7d22\u5f15\u5305\u542b(C2,C3,C4)\u4e09\u5217\u6570\u636e. \u5728\u5b9e\u9645\u7269\u7406\u5b58\u50a8\u65f6\uff0c\u4f1a\u5bf9\u4e09\u5217\u8fdb\u884c\u62c6\u5206\u72ec\u7acb\u5b58\u50a8\uff0c\u6bcf\u4e00\u5217\u90fd\u4f1a\u6309\u5199\u5165\u987a\u5e8f\u8f6c\u6210\u5217\u5b58\u683c\u5f0f\u3002\u5217\u5b58\u5b9e\u73b0\u4e3a\u4e8c\u7ea7\u7d22\u5f15\u7684\u53e6\u4e00\u4e2a\u597d\u5904\u662f\u6267\u884c\u5668\u7684\u5de5\u7a0b\u5b9e\u73b0\u975e\u5e38\u7b80\u5355\uff0c\u5728MySQL\u4e2d\u5df2\u7ecf\u5b58\u5728\u8986\u76d6\u7d22\u5f15\u7684\u6982\u5ff5\uff0c\u5373\u4e00\u4e2a\u67e5\u8be2\u6240\u9700\u8981\u7684\u5217\u90fd\u5728\u4e00\u4e2a\u4e8c\u7ea7\u7d22\u5f15\u4e2d\u5b58\u50a8\uff0c\u5219\u53ef\u4ee5\u76f4\u63a5\u5229\u7528\u8fd9\u4e2a\u4e8c\u7ea7\u7d22\u5f15\u4e2d\u7684\u6570\u636e\u6ee1\u8db3\u67e5\u8be2\u9700\u6c42\uff0c\u4f7f\u7528\u4e8c\u7ea7\u7d22\u5f15\u76f8\u5bf9\u4e8e\u4f7f\u7528Primary Index\u53ef\u4ee5\u6781\u5927\u51cf\u5c11\u8bfb\u53d6\u7684\u6570\u636e\u91cf\u8fdb\u800c\u63d0\u5347\u67e5\u8be2\u6027\u80fd\u3002\u5f53\u4e00\u4e2a\u67e5\u8be2\u6240\u9700\u8981\u7684\u5217\u90fd\u88ab\u5217\u7d22\u5f15\u8986\u76d6\u65f6\uff0c\u501f\u52a9\u5217\u5b58\u7684\u52a0\u901f\u4f5c\u7528\uff0c\u53ef\u4ee5\u6570\u5341\u500d\u751a\u81f3\u6570\u767e\u500d\u7684\u63d0\u5347\u67e5\u8be2\u6027\u80fd\u3002\u5217\u5b58\u6570\u636e\u7ec4\u7ec7\u5bf9ColumnIndex\u4e2d\u6bcf\u4e00\u5217\uff0c\u5176\u5b58\u50a8\u90fd\u4f7f\u7528\u4e86\u65e0\u5e8f\u4e14\u8ffd\u52a0\u5199\u7684\u683c\u5f0f\uff0c\u7ed3\u5408\u6807\u8bb0\u5220\u9664\u53ca\u540e\u53f0\u5f02\u6b65compaction\u5b9e\u73b0\u7a7a\u95f4\u56de\u6536\u3002\u5176\u5177\u4f53\u5b9e\u73b0\u4e0a\u6709\u5982\u4e0b\u51e0\u4e2a\u5173\u952e\u70b9\uff1a\u5217\u7d22\u5f15\u4e2d\u8bb0\u5f55\u6309RowGroup\u8fdb\u884c\u7ec4\u7ec7\uff0c\u6bcf\u4e2aRowGroup\u4e2d\u4e0d\u540c\u7684\u5217\u4f1a\u5404\u81ea\u6253\u5305\u5f62\u6210DataPack\u3002\u6bcf\u4e2aRowGroup\u90fd\u91c7\u7528\u8ffd\u52a0\u5199\uff0c\u5206\u5c5e\u6bcf\u4e2a\u5217\u7684DataPack\u4e5f\u662f\u91c7\u7528\u8ffd\u52a0\u5199\u6a21\u5f0f\u3002\u5bf9\u4e8e\u4e00\u4e2a\u5217\u7d22\u5f15\uff0c\u53ea\u6709\u4e2aActive RowGroup\u8d1f\u8d23\u63a5\u53d7\u65b0\u7684\u5199\u5165\u3002\u5f53\u8be5RowGroup\u5199\u6ee1\u4e4b\u540e\u5373\u51bb\u7ed3\uff0c\u5176\u5305\u542b\u7684\u6240\u6709Datapack\u4f1a\u8f6c\u4e3a\u538b\u7f29\u683c\u4fdd\u5b58\u5230\u78c1\u76d8\u4e0a\uff0c\u540c\u65f6\u8bb0\u5f55\u6bcf\u4e2a\u6570\u636e\u5757\u7684\u7edf\u8ba1\u4fe1\u606f\u4fbf\u4e8e\u8fc7\u6ee4\u3002\u5217\u5b58RowGroup\u4e2d\u6bcf\u65b0\u5199\u5165\u4e00\u884c\u90fd\u4f1a\u5206\u914d\u4e00\u4e2aRowID\u7528\u4f5c\u5b9a\u4f4d\uff0c\u5c5e\u4e8e\u4e00\u884c\u7684\u6240\u6709\u5217\u90fd\u53ef\u4ee5\u7528\u8be5RowID\u8ba1\u7b97\u5b9a\u4f4d\uff0c\u540c\u65f6\u7cfb\u7edf\u7ef4\u62a4PK\u5230RowID\u7684\u6620\u5c04\u7d22\u5f15\uff0c\u4ee5\u652f\u6301\u540e\u7eed\u7684\u5220\u9664\u548c\u4fee\u6539\u64cd\u4f5c\u3002\u66f4\u65b0\u64cd\u4f5c\u91c7\u7528\u6807\u8bb0\u5220\u9664\u7684\u65b9\u5f0f\u6765\u652f\u6301\uff0c\u5bf9\u4e8e\u66f4\u65b0\u64cd\u4f5c\uff0c\u9996\u5148\u6839\u636eRowID\u8ba1\u7b97\u51fa\u5176\u539f\u59cb\u4f4d\u7f6e\u5e76\u8bbe\u7f6e\u5220\u9664\u6807\u8bb0\uff0c\u7136\u540e\u5728ActiveRowGroup\u4e2d\u5199\u5165\u65b0\u7684\u6570\u636e\u7248\u672c\u3002\u5f53\u4e00\u4e2aRowGroup\u4e2d\u7684\u65e0\u6548\u8bb0\u5f55\u8d85\u8fc7\u4e00\u5b9a\u9608\u503c\uff0c\u5219\u4f1a\u89e6\u53d1\u540e\u53f0\u5f02\u6b65compaction\u64cd\u4f5c\uff0c\u5176\u4f5c\u7528\u4e00\u65b9\u9762\u662f\u56de\u6536\u7a7a\u95f4\uff0c\u53e6\u4e00\u65b9\u9762\u53ef\u4ee5\u8ba9\u6709\u6548\u6570\u636e\u5b58\u50a8\u66f4\u52a0\u7d27\u51d1\uff0c\u63d0\u5347\u5206\u6790\u578b\u67e5\u8be2\u5355\u7684\u6548\u7387\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878781\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u91c7\u7528\u8fd9\u79cd\u6570\u636e\u7ec4\u7ec7\u65b9\u5f0f\u4e00\u65b9\u9762\u6ee1\u8db3\u4e86\u5206\u6790\u578b\u67e5\u8be2\u6309\u5217\u8fdb\u884c\u6279\u91cf\u626b\u63cf\u8fc7\u6ee4\u7684\u8981\u6c42\u3002\u53e6\u4e00\u65b9\u9762\u5bf9\u4e8eTP\u578b\u4e8b\u52a1\u64cd\u4f5c\u5f71\u54cd\u975e\u5e38\u5c0f\uff0c\u5199\u5165\u64cd\u4f5c\u53ea\u9700\u8981\u6309\u5217\u8ffd\u52a0\u5199\u5230\u5185\u5b58\u5373\u53ef\uff0c\u5220\u9664\u64cd\u4f5c\u53ea\u9700\u8981\u8bbe\u7f6e\u4e00\u4e2a\u5220\u9664\u6807\u8bb0\u4f4d\u3002\u800c\u66f4\u65b0\u64cd\u4f5c\u5219\u662f\u4e00\u4e2a\u6807\u8bb0\u5220\u9664\u9644\u52a0\u4e00\u4e2a\u8ffd\u52a0\u5199\u3002\u5217\u5b58\u53ef\u4ee5\u505a\u5230\u652f\u6301\u4e8b\u52a1\u7ea7\u522b\u7684\u66f4\u65b0\u540c\u65f6\uff0c\u505a\u5230\u51e0\u4e4e\u4e0d\u5f71\u54cdOLTP\u7684\u6027\u80fd\u3002\u5168\u91cf\u53ca\u589e\u91cf\u884c\u8f6c\u5217\u884c\u8f6c\u5217\u64cd\u4f5c\u5728\u4e24\u79cd\u60c5\u51b5\u4e0b\u4f1a\u53d1\u751f\uff0c\u7b2c\u4e00\u79cd\u60c5\u51b5\u662f\u4f7f\u7528DDL\u8bed\u53e5\u5bf9\u90e8\u5206\u5217\u521b\u5efa\u5217\u7d22\u5f15(\u4e00\u822c\u662f\u4e1a\u52a1\u5bf9\u4e00\u4e2a\u5df2\u6709\u7684\u8868\u6709\u65b0\u589e\u5206\u6790\u578b\u9700\u6c42)\uff0c\u6b64\u65f6\u9700\u8981\u626b\u63cf\u5168\u8868\u6570\u636e\u4ee5\u521b\u5efa\u5217\u7d22\u5f15\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\u5728\u4e8b\u52a1\u64cd\u4f5c\u8fc7\u7a0b\u4e2d\u5bf9\u4e8e\u6d89\u53ca\u5230\u7684\u5217\u5b9e\u65f6\u884c\u4e13\u5217\u3002\u5bf9\u4e8e\u5168\u8868\u884c\u8f6c\u5217\u7684\u60c5\u5f62\uff0c\u6211\u4eec\u4f7f\u7528\u5e76\u884c\u626b\u63cf\u7684\u65b9\u5f0f\u5bf9InnoDB\u7684Primary Key\u8fdb\u884c\u626b\u63cf\uff0c\u5e76\u4f9d\u6b21\u5c06\u6240\u6709\u6d89\u53ca\u5230\u7684\u5217\u8f6c\u6362\u4e3a\u5217\u5b58\u5f62\u5f0f\uff0c\u8fd9\u4e00\u64cd\u4f5c\u7684\u901f\u5ea6\u975e\u5e38\u5feb\uff0c\u5176\u57fa\u672c\u53ea\u53d7\u9650\u4e8e\u670d\u52a1\u5668\u53ef\u7528\u7684IO\u541e\u5410\u901f\u5ea6\u548c\u53ef\u7528CPU\u8d44\u6e90\u3002\u8be5\u64cd\u4f5c\u662f\u4e00\u4e2aonline-DDL\u8fc7\u7a0b\uff0c\u4e0d\u4f1a\u963b\u585e\u5728\u7ebf\u4e1a\u52a1\u7684\u8fd0\u884c\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878782\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u5728\u4e00\u4e2a\u8868\u4e0a\u5efa\u7acb\u5217\u7d22\u5f15\u4e4b\u540e\uff0c\u6240\u6709\u7684\u66f4\u65b0\u4e8b\u52a1\u5c06\u4f1a\u540c\u6b65\u66f4\u65b0\u884c\u5b58\u548c\u5217\u5b58\u6570\u636e\uff0c\u4ee5\u4fdd\u8bc1\u4e8c\u8005\u7684\u4e8b\u52a1\u4e00\u81f4\u6027\u3002\u4e0b\u56fe\u6f14\u793a\u4e86\u5728IMCI\u529f\u80fd\u5173\u95ed\u548c\u5f00\u542f\u4e4b\u95f4\u7684\u5dee\u5f02\u6027\u3002\u5728\u672a\u5f00\u542fIMCI\u529f\u80fd\u65f6\uff0c\u4e8b\u52a1\u5bf9\u6240\u6709\u884c\u7684\u66f4\u65b0\u90fd\u4f1a\u5148\u52a0\u9501\uff0c\u7136\u540e\u518d\u5bf9\u6570\u636e\u9875\u8fdb\u884c\u4fee\u6539\uff0c\u5728\u4e8b\u52a1\u63d0\u4ea4\u4e4b\u524d\u4f1a\u5bf9\u6240\u6709\u52a0\u9501\u7684\u8bb0\u5f55\u4e00\u6b21\u6027\u65b9\u6240\u3002\u5728\u5f00\u542fIMCI\u529f\u80fd\u4e4b\u540e\uff0c\u4e8b\u52a1\u7cfb\u7edf\u4f1a\u521b\u5efa\u4e00\u4e2a\u5217\u5b58\u66f4\u65b0\u7f13\u5b58\uff0c\u5728\u6240\u6709\u6570\u636e\u9875\u88ab\u4fee\u6539\u7684\u540c\u65f6\uff0c\u4f1a\u8bb0\u5f55\u6240\u6d89\u53ca\u5230\u7684\u5217\u5b58\u7684\u4fee\u6539\u64cd\u4f5c\uff0c\u5728\u4e8b\u52a1\u63d0\u4ea4\u7ed3\u675f\u524d\uff0c\u8be5\u66f4\u65b0\u7f13\u5b58\u4f1a\u5e94\u7528\u5230\u5217\u5b58\u7cfb\u7edf\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878783\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u5728\u6b64\u5b9e\u73b0\u4e0b\uff0c\u5217\u5b58\u5b58\u50a8\u63d0\u4f9b\u4e86\u4e0e\u884c\u5b58\u4e00\u6837\u7684\u4e8b\u52a1\u9694\u79bb\u7ea7\u522b\u3002\u5bf9\u4e8e\u6bcf\u4e2a\u5199\u64cd\u4f5c, RowGroup\u4e2d\u7684\u6bcf\u4e00\u884c\u90fd\u4f1a\u8bb0\u5f55\u4fee\u6539\u8be5\u884c\u7684\u4e8b\u52a1\u7f16\u53f7\uff0c\u800c\u5bf9\u4e8e\u6bcf\u4e2a\u6807\u8bb0\u5220\u9664\u64cd\u4f5c\u4e5f\u4f1a\u8bb0\u5f55\u8be5\u8bbe\u7f6e\u52a8\u4f5c\u7684\u4e8b\u52a1\u7f16\u53f7\u3002\u501f\u52a9\u5199\u5165\u4e8b\u52a1\u53f7\u548c\u5220\u9664\u4e8b\u52a1\u53f7\uff0cAP\u578b\u67e5\u8be2\u53ef\u4ee5\u7528\u975e\u5e38\u8f7b\u91cf\u7ea7\u7684\u65b9\u5f0f\u83b7\u5f97\u4e00\u4e2a\u5168\u5c40\u4e00\u81f4\u6027\u7684\u5feb\u7167\u3002\u5217\u7d22\u5f15\u7c97\u7cd9\u7d22\u5f15\u7531\u524d\u8ff0\u5217\u7684\u5b58\u50a8\u683c\u5f0f\u53ef\u4ee5\u770b\u51fa, IMCI\u4e2d\u6240\u6709\u7684Datapack\u90fd\u91c7\u7528\u65e0\u5e8f\u4e14\u8ffd\u52a0\u5199\u7684\u65b9\u5f0f, \u56e0\u6b64\u65e0\u6cd5\u50cfInnoDB\u7684\u666e\u901a\u6709\u5e8f\u7d22\u5f15\u90a3\u6837\u7684\u53ef\u4ee5\u7cbe\u51c6\u7684\u8fc7\u6ee4\u6389\u4e0d\u7b26\u5408\u8981\u6c42\u7684\u6570\u636e\u3002\u5728IMCI\u4e2d\uff0c\u6211\u4eec\u501f\u52a9\u7edf\u8ba1\u4fe1\u606f\u6765\u8fdb\u884c\u6570\u636e\u5757\u8fc7\u6ee4\uff0c\u4ee5\u6b64\u6765\u8fbe\u5230\u964d\u4f4e\u6570\u636e\u8bbf\u95ee\u5355\u4ef7\u7684\u76ee\u7684\u3002\u5728\u6bcf\u4e2aActive Datapack\u7ec8\u7ed3\u5199\u5165\u7684\u65f6\u5019\uff0c\u4f1a\u9884\u5148\u8fdb\u884c\u8ba1\u7b97\uff0c\u5e76\u751f\u6210Datapack\u6240\u5305\u542b\u6570\u636e\u7684\u6700\u5c0f\u503c\/\u6700\u5927\u503c\/\u6570\u503c\u7684\u603b\u548c\/\u7a7a\u503c\u7684\u4e2a\u6570\/\u8bb0\u5f55\u603b\u6761\u6570\u7b49\u4fe1\u606f\u3002\u6240\u6709\u8fd9\u4e9b\u4fe1\u606f\u4f1a\u7ef4\u62a4\u5728DataPacks Meta\u5143\u4fe1\u606f\u533a\u57df\u5e76\u5e38\u9a7b\u5185\u5b58\u3002\u7531\u4e8e\u51bb\u7ed3\u7684Datapack\u4e2d\u8fd8\u4f1a\u5b58\u5728\u6570\u636e\u7684\u5220\u9664\u64cd\u4f5c\uff0c\u56e0\u6b64\u7edf\u8ba1\u4fe1\u606f\u7684\u66f4\u65b0\u7ef4\u62a4\u4f1a\u653e\u5230\u540e\u53f0\u5b8c\u6210\u3002\u5bf9\u4e8e\u67e5\u8be2\u8bf7\u6c42\uff0c\u4f1a\u6839\u636e\u67e5\u8be2\u6761\u4ef6\u5c06Datapacks\u5206\u4e3a\u76f8\u5173\u3001\u4e0d\u76f8\u5173\u3001\u53ef\u80fd\u76f8\u5173\u4e09\u5927\u7c7b\uff0c\u4ece\u800c\u51cf\u5c11\u5b9e\u9645\u7684\u6570\u636e\u5757\u8bbf\u95ee\u3002\u800c\u5bf9\u4e8e\u4e00\u4e9b\u805a\u5408\u67e5\u8be2\u64cd\u4f5c\uff0c\u5982count\/sum\u7b49\uff0c\u53ef\u4ee5\u901a\u8fc7\u9884\u5148\u8ba1\u7b97\u597d\u7684\u7edf\u8ba1\u503c\u8fdb\u884c\u7b80\u5355\u7684\u8fd0\u7b97\u5f97\u51fa\uff0c\u8fd9\u4e9b\u6570\u636e\u5757\u751a\u81f3\u90fd\u4e0d\u9700\u8981\u8fdb\u884c\u89e3\u538b\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878784\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u91c7\u7528\u57fa\u4e8e\u7edf\u8ba1\u4fe1\u606f\u7684\u7c97\u7cd9\u7d22\u5f15\u65b9\u6848\u5bf9\u4e8e\u4e00\u4e9b\u9700\u8981\u7cbe\u51c6\u5b9a\u4f4d\u90e8\u5206\u6570\u636e\u7684\u67e5\u8be2\u5e76\u4e0d\u662f\u5f88\u53cb\u597d\u3002\u4f46\u662f\u5728\u4e00\u4e2a\u884c\u5217\u6df7\u5408\u5b58\u50a8\u5f15\u64ce\u4e2d\uff0c\u5217\u7d22\u5f15\u53ea\u9700\u8981\u8f85\u52a9\u52a0\u901f\u90a3\u4e9b\u4f1a\u6d89\u53ca\u5230\u5927\u91cf\u6570\u636e\u626b\u63cf\u7684\u67e5\u8be2\uff0c\u5728\u8fd9\u4e2a\u573a\u666f\u4e0b\u4f7f\u7528\u5217\u4f1a\u5177\u6709\u663e\u8457\u7684\u4f18\u52bf\u3002\u800c\u5bf9\u4e8e\u90a3\u4e9b\u53ea\u4f1a\u8bbf\u95ee\u5230\u5c11\u91cf\u6570\u636e\u7684SQL\uff0c\u4f18\u5316\u5668\u901a\u5e38\u4f1a\u57fa\u4e8e\u4ee3\u4ef7\u6a21\u578b\u8ba1\u7b97\u5f97\u51fa\u57fa\u4e8e\u884c\u5b58\u4f1a\u5f97\u5230\u4e00\u4e2a\u6210\u672c\u66f4\u4f4e\u7684\u65b9\u6848\u3002\u884c\u5217\u6df7\u5408\u5b58\u50a8\u4e0b\u7684TP\u548cAP\u8d44\u6e90\u9694\u79bbPolarDB\u884c\u5217\u6df7\u5408\u5b58\u50a8\u53ef\u4ee5\u652f\u6301\u5728\u4e00\u4e2a\u5b9e\u4f8b\u4e2d\u540c\u65f6\u652f\u6301AP\u578b\u67e5\u8be2\u548cTP\u578b\u67e5\u8be2\u3002\u4f46\u5f88\u591a\u4e1a\u52a1\u6709\u5f88\u9ad8\u7684OLTP\u578b\u8d1f\u8f7d\uff0c\u800c\u7a81\u53d1\u6027\u7684OLAP\u6027\u8d1f\u8f7d\u53ef\u80fd\u5e72\u6270\u5230TP\u578b\u4e1a\u52a1\u7684\u54cd\u5e94\u65f6\u5ef6\u3002\u56e0\u6b64\u652f\u6301\u8d1f\u8f7d\u9694\u79bb\u5728HTAP\u6570\u636e\u5e93\u4e2d\u662f\u4e00\u4e2a\u5fc5\u987b\u652f\u6301\u7684\u529f\u80fd\u3002\u501f\u52a9PolarDB\u4e00\u5199\u591a\u8bfb\u7684\u67b6\u6784\uff0c\u6211\u4eec\u53ef\u4ee5\u975e\u5e38\u65b9\u4fbf\u5bf9AP\u578b\u8d1f\u8f7d\u548cTP\u578b\u8d1f\u8f7d\u8fdb\u884c\u9694\u79bb\u3002\u5728PolarDB\u7684\u6280\u672f\u67b6\u6784\u4e0b\uff0c\u6211\u4eec\u6709\u5982\u4e0b\u51e0\u4e2a\u90e8\u7f72\u65b9\u5f0f\uff1a\u7b2c\u4e00\u79cd\u65b9\u5f0f\uff0cRW\u4e0a\u5f00\u542f\u884c\u5217\u6df7\u5408\u5b58\u50a8\uff0c\u6b64\u79cd\u6a21\u5f0f\u90e8\u7f72\u53ef\u4ee5\u652f\u6301\u8f7b\u91cf\u7ea7\u7684AP\u67e5\u8be2\uff0c\u5728\u4e3b\u8981\u4e3aTP\u8d1f\u8f7d\uff0c\u4e14AP\u578b\u8bf7\u6c42\u6bd4\u8f83\u5c11\u65f6\u53ef\u4ee5\u91c7\u7528\u3002\u6216\u8005\u4f7f\u7528PolarDB\u8fdb\u884c\u62a5\u8868\u67e5\u8be2\uff0c\u4f46\u662f\u6570\u636e\u6765\u81ea\u6279\u91cf\u6570\u636e\u5bfc\u5165\u7684\u573a\u666f\u3002\u7b2c\u4e8c\u79cd\u65b9\u5f0f\uff0cRW\u652f\u6301OLTP\u578b\u8d1f\u8f7d\uff0c\u5e76\u542f\u52a8\u4e00\u4e2aAP\u578bRO\u5f00\u542f\u884c\u5217\u6df7\u5408\u5b58\u50a8\u4ee5\u652f\u6301\u67e5\u8be2\uff0c\u6b64\u79cd\u90e8\u7f72\u6a21\u5f0f\u4e0bCPU\u8d44\u6e90\u53ef\u4ee5\u5b9e\u73b0100%\u9694\u79bb\uff0c\u540c\u65f6\u8be5AP\u578bRO\u8282\u70b9\u4e0a\u7684\u5185\u5b58\u53ef\u4ee5100%\u5206\u914d\u7ed9\u5217\u5b58\u5b58\u50a8\u548c\u6267\u884c\u5668\u3002\u4f46\u662f\u7531\u4e8e\u4f7f\u7528\u7684\u76f8\u540c\u7684\u5171\u4eab\u5b58\u50a8\uff0c\u56e0\u6b64\u5728IO\u4e0a\u4f1a\u76f8\u4e92\u4ea7\u751f\u4e00\u5b9a\u5f71\u54cd\uff0c\u5bf9\u4e8e\u8fd9\u4e2a\u95ee\u9898\u6211\u4eec\u5728\u672a\u6765\u4f1a\u652f\u6301\u5c06\u5217\u5b58\u6570\u636e\u5199\u5165\u5230\u5916\u90e8\u5b58\u50a8\u5982OSS\u7b49\uff0c\u5b9e\u73b0IO\u7684\u8d44\u6e90\u9694\u79bb\uff0c\u540c\u65f6\u63d0\u5347AP\u578bRO\u4e0a\u7684IO\u541e\u5410\u901f\u7387\u3002\u7b2c\u4e09\u79cd\u65b9\u5f0f\uff0cRW\/RO\u652f\u6301OLTP\u578b\u8d1f\u8f7d\uff0c\u5728\u5355\u72ec\u7684Standby\u8282\u70b9\u5f00\u542f\u884c\u5217\u6df7\u5408\u5b58\u50a8\u4ee5\u652f\u6301AP\u578b\u67e5\u8be2\uff0c\u7531\u4e8estandby\u662f\u4f7f\u7528\u72ec\u7acb\u7684\u5171\u4eab\u5b58\u50a8\u96c6\u7fa4\uff0c\u8fd9\u79cd\u65b9\u6848\u5728\u7b2c\u4e8c\u79cd\u65b9\u6848\u652f\u6301CPU\u548c\u5185\u5b58\u8d44\u6e90\u9694\u79bb\u7684\u57fa\u7840\u4e0a\uff0c\u8fd8\u53ef\u4ee5\u5b9e\u73b0IO\u8d44\u6e90\u7684\u9694\u79bb\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878785\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u9664\u4e86\u4e0a\u8ff0\u90e8\u7f72\u67b6\u6784\u4e0a\u4e0d\u540c\u53ef\u4ee5\u652f\u6301\u7684\u8d44\u6e90\u5c40\u9694\u79bb\u4e4b\u5916\u3002\u5728PolarDB\u5185\u90e8\u5bf9\u4e8e\u4e00\u4e9b\u9700\u8981\u4f7f\u7528\u5e76\u884c\u6267\u884c\u7684\u5927\u67e5\u8be2\u652f\u6301\u52a8\u6001\u5e76\u884c\u5ea6\u8c03\u6574(Auto DOP)\uff0c\u8fd9\u4e2a\u673a\u5236\u4f1a\u7efc\u5408\u8003\u8651\u5f53\u524d\u7cfb\u7edf\u7684\u8d1f\u8f7d\u4ee5\u53ca\u53ef\u7528\u7684CPU\u548c\u5185\u5b58\u8d44\u6e90\uff0c\u5bf9\u5355\u4e2a\u67e5\u8be2\u6240\u7528\u7684\u8d44\u6e90\u8fdb\u884c\u9650\u5236\uff0c\u4ee5\u907f\u514d\u5355\u4e2a\u67e5\u8be2\u6d88\u8017\u7684\u8d44\u6e90\u592a\u591a\uff0c\u5f71\u54cd\u5176\u4ed6\u8bf7\u6c42\u7684\u5904\u7406\u3002\u4e94 PolarDB IMCI\u7684OLAP\u6027\u80fd\u4e3a\u4e86\u9a8c\u8bc1IMCI\u6280\u672f\u7684\u6548\u679c\uff0c \u6211\u4eec\u5bf9PolarDB MySQL IMCI\u7684\u8fdb\u884c\u4e86TPC-H\u573a\u666f\u7684\u6d4b\u8bd5\u3002\u540c\u65f6\u5728\u76f8\u540c\u7684\u573a\u666f\u4e0b\u5c06\u5176\u4e0e\u539f\u751fMySQL\u7684\u884c\u5b58\u6267\u884c\u5f15\u64ce\u4ee5\u53ca\u5f53\u524dOLAP\u5f15\u64ce\u5355\u673a\u6027\u80fd\u6700\u5f3a\u7684ClickHouse\u8fdb\u884c\u4e86\u5bf9\u6bd4\u3002\u6d4b\u8bd5\u53c2\u6570\u7b80\u8981\u4ecb\u7ecd\u5982\u4e0b:\u6570\u636e\u91cfTPC-H 100GB, 22\u6761QueryCPU Intel(R) Xeon(R) CPU E5-2682 2 socket\u5185\u5b58 512G, \u542f\u52a8\u540e\u6570\u636e\u90fd\u704c\u8fdb\u5185\u5b58\u30021 PolarDB IMCI VS MySQL\u4e32\u884c\u5728TPC-H\u573a\u666f\u4e0b\uff0c\u6240\u670922\u6761Query \uff0cIMCI\u5904\u7406\u5ef6\u65f6\u76f8\u5bf9\u6bd4\u539f\u751fMySQL\u90fd\u6709\u6570\u5341\u500d\u5230\u6570\u767e\u500d\u4e0d\u7b49\u7684\u52a0\u901f\u6548\u679c\u3002\u5176\u4e2dQ6\u7684\u7684\u6548\u679c\u5c06\u8fd1400\u500d\u3002\u4f53\u73b0\u51fa\u4e86IMCI\u7684\u5de8\u5927\u4f18\u52bf\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878786\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>2 PolarDB IMCI VS ClickHouse\u800c\u5728\u5bf9\u6bd4\u5f53\u524d\u793e\u533a\u6700\u706b\u70ed\u7684\u5206\u6790\u578b\u6570\u636e\u5e93ClickHouse\u65f6, IMCI\u5728TPC-H\u573a\u666f\u4e0b\u7684\u6027\u80fd\u4e5f\u4e0e\u5176\u57fa\u672c\u5728\u540c\u4e00\u6c34\u5e73\u3002\u90e8\u5206SQL\u7684\u5904\u7406\u5ef6\u65f6\u5404\u6709\u4f18\u52a3\u3002\u7528\u6237\u5b8c\u5168\u53ef\u4ee5\u4f7f\u7528IMCI\u66ff\u4ee3ClickHouse\u4f7f\u7528\uff0c\u540c\u65f6\u5176\u6570\u636e\u7ba1\u7406\u4e5f\u66f4\u52a0\u65b9\u4fbf\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000040878787\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>FutureWorkIMCI\u662fPolarDB\u8fc8\u5411\u6570\u636e\u5206\u6790\u5e02\u573a\u7684\u7b2c\u4e00\u6b65\uff0c\u5b83\u8fed\u4ee3\u811a\u6b65\u4e0d\u4f1a\u505c\u6b62\uff0c\u63a5\u4e0b\u91cc\u6211\u4eec\u4f1a\u5728\u5982\u4e0b\u51e0\u4e2a\u65b9\u5411\u8fdb\u4e00\u6b65\u7814\u7a76\u548c\u63a2\u7d22\uff0c\u7ed9\u5ba2\u6237\u5e26\u6765\u66f4\u597d\u7684\u4f7f\u7528\u4f53\u9a8c\uff1a\u81ea\u52a8\u5316\u7684\u7d22\u5f15\u63a8\u8350\u7cfb\u7edf\uff0c\u76ee\u524d\u5217\u5b58\u7684\u521b\u5efa\u548c\u5220\u9664\u9700\u8981\u7528\u6237\u624b\u52a8\u6307\u5b9a\uff0c\u8fd9\u589e\u52a0\u4e86DBA\u7684\u5de5\u4f5c\u91cf\uff0c\u76ee\u524d\u6211\u4eec\u6b63\u5728\u7814\u7a76\u5f15\u5165\u81ea\u52a8\u5316\u63a8\u8350\u6280\u672f\uff0c\u6839\u636e\u7528\u6237\u7684SQL\u8bf7\u6c42\u7279\u5f81\uff0c\u81ea\u52a8\u521b\u5efa\u5217\u5b58\u7d22\u5f15\uff0c\u964d\u4f4e\u7ef4\u62a4\u8d1f\u62c5\u3002\u5355\u72ec\u7684\u5217\u5b58\u8868\u4ee5\u53caOSS\u5b58\u50a8\uff0c\u76ee\u524dIMCI\u53ea\u662f\u4e00\u4e2a\u7d22\u5f15\uff0c\u5bf9\u7eaf\u5206\u6790\u578b\u573a\u666f\uff0c\u53bb\u9664\u884c\u5b58\u53ef\u4ee5\u66f4\u8fdb\u4e00\u6b65\u7684\u964d\u4f4e\u5b58\u50a8\u5927\u5c0f\uff0c\u800cIMCI\u6267\u884c\u5668\u652f\u6301\u8bfb\u5199OSS\u5bf9\u8c61\u5b58\u50a8\u80fd\u5c06\u5b58\u50a8\u6210\u672c\u964d\u5230\u6700\u4f4e\u3002\u884c\u5217\u6df7\u5408\u6267\u884c\uff0c\u5373\u4e00\u4e2aSQl\u7684\u6267\u884c\u8ba1\u5212\u90e8\u5206\u7247\u6bb5\u5728\u884c\u5b58\u6267\u884c\uff0c\u90e8\u5206\u7247\u6bb5\u5728\u5217\u5b58\u6267\u884c\u3002\u4ee5\u83b7\u5f97\u6700\u5927\u5316\u7684\u6267\u884c\u52a0\u901f\u6548\u679c\u3002\u00a0\u539f\u6587\u94fe\u63a5\uff1a<a href=\"https:\/\/link.segmentfault.com\/?enc=WU50XLqDSjj4El4jEGkpmw%3D%3D.4h4qqJg3jWtnIfeeXXMvhG%2BRf4j9GpHPfc28V%2F7lM2%2B7ihxvW2qZH9Ob4zJmTjq4\" rel=\"nofollow\">https:\/\/click.aliyun.com\/m\/10&#8230;<\/a>\u672c\u6587\u4e3a\u963f\u91cc\u4e91\u539f\u521b\u5185\u5bb9\uff0c\u672a\u7ecf\u5141\u8bb8\u4e0d\u5f97\u8f6c\u8f7d\u3002<\/p>\n<p><a href=\"https:\/\/segmentfault.com\/a\/1190000042285216\">https:\/\/segmentfault.com\/a\/1190000042285216<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u7b80\u4ecb\uff1a\u00a0PolarDB MySQL\u662f\u56e0\u4e91\u800c\u751f\u7684\u4e00\u4e2a\u6570\u636e\u5e93\u7cfb\u7edf, \u9664\u4e86\u4e91\u4e0aOLTP\u573a\u666f\uff0c\u5927\u91cf\u5ba2\u6237\u4e5f\u5bf9PolarD [&hellip;]<\/p>\n","protected":false},"author":0,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[],"tags":[],"class_list":["post-10006133","post","type-post","status-publish","format-standard","hentry"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/itmax.cn\/index.php?rest_route=\/wp\/v2\/posts\/10006133","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/itmax.cn\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/itmax.cn\/index.php?rest_route=\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/itmax.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=10006133"}],"version-history":[{"count":0,"href":"https:\/\/itmax.cn\/index.php?rest_route=\/wp\/v2\/posts\/10006133\/revisions"}],"wp:attachment":[{"href":"https:\/\/itmax.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=10006133"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itmax.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=10006133"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itmax.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=10006133"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}