{"kind": "storage", "major": "18", "item": {"slug": "storage-toast", "name": "TOAST", "name_zh": "", "category": "\u7269\u7406\u7ed3\u6784", "summary": "\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002", "aliases": [], "content_hash": "cd3a2a63d2ab549468921d3cca20a1446493c4a7c0124f80f08e8c9491437bbe", "versions": {"10": {"facts": [{"label": "\u5b9a\u4e49\u8303\u56f4", "value": "\u540c\u7248\u672c\u6838\u5fc3\u7269\u7406\u5b58\u50a8\u6587\u6863"}], "tables": [], "related": [{"url": "/wiki/relopts/?v=10", "label": "\u5b58\u50a8\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v10.23/postgresql-10.23.tar.bz2", "label": "10.23", "major": "10", "channel": "stable", "revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "sources": [{"url": "https://pg.center/docs/10/storage-toast.html", "path": "storage-toast.html", "label": "PostgreSQL 10 English manual", "sha256": "5b9121265c5eec33a4c2118334e89f95325f456f8bda802b606665187654a23a", "language": "en", "original_url": "/docs/10/storage-toast.html"}], "sections": [], "signature": "", "description": ["\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002"], "manual_html": "<div class=\"sect1\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h2 class=\"title\">67.2.\u00a0TOAST</h2>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08<acronym class=\"acronym\">TOAST</acronym>, The Oversized-Attribute Storage Technique\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"productname\">PostgreSQL</span> \u4f7f\u7528\u56fa\u5b9a\u9875\u9762\u5927\u5c0f\uff08\u901a\u5e38\u4e3a 8 kB\uff09\uff0c\u5e76\u4e14\u4e0d\u5141\u8bb8\u5143\u7ec4\u8de8\u8d8a\u591a\u4e2a\u9875\u9762\u3002\u56e0\u6b64\uff0c\u65e0\u6cd5\u76f4\u63a5\u5b58\u50a8\u975e\u5e38\u5927\u7684\u5b57\u6bb5\u503c\u3002\u4e3a\u514b\u670d\u8fd9\u4e00\u9650\u5236\uff0c\u5927\u5b57\u6bb5\u503c\u4f1a\u88ab\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u62c6\u5206\u6210\u591a\u4e2a\u7269\u7406\u884c\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u5bf9\u7528\u6237\u662f\u900f\u660e\u7684\uff0c\u800c\u4e14\u5bf9\u5927\u90e8\u5206\u540e\u7aef\u4ee3\u7801\u7684\u5f71\u54cd\u5f88\u5c0f\u3002\u8fd9\u9879\u6280\u672f\u88ab\u4eb2\u5207\u5730\u79f0\u4e3a <acronym class=\"acronym\">TOAST</acronym>\uff08\u6216\u8005<span class=\"quote\">\u201c<span class=\"quote\">\u81ea\u5207\u7247\u9762\u5305\u95ee\u4e16\u4ee5\u6765\u6700\u68d2\u7684\u4e1c\u897f</span>\u201d</span>\uff09\u3002<acronym class=\"acronym\">TOAST</acronym> \u57fa\u7840\u8bbe\u65bd\u4e5f\u88ab\u7528\u4e8e\u6539\u8fdb\u5185\u5b58\u4e2d\u5927\u578b\u6570\u636e\u503c\u7684\u5904\u7406\u3002</p>\n<p lang=\"zh\">\u53ea\u6709\u90e8\u5206\u6570\u636e\u7c7b\u578b\u652f\u6301 TOAST\uff1b\u65e0\u9700\u8ba9\u4e0d\u4f1a\u4ea7\u751f\u5927\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u627f\u62c5\u989d\u5916\u5f00\u9500\u3002\u8981\u652f\u6301 TOAST\uff0c\u7c7b\u578b\u5fc5\u987b\u91c7\u7528\u53d8\u957f\uff08varlena\uff09\u8868\u793a\uff0c\u901a\u5e38\u5176\u5b58\u50a8\u503c\u7684\u7b2c\u4e00\u4e2a\u56db\u5b57\u8282\u5b57\u8bb0\u5f55\u603b\u5b57\u8282\u957f\u5ea6\uff0c\u5305\u62ec\u8be5\u957f\u5ea6\u5b57\u672c\u8eab\u3002TOAST \u4e0d\u9650\u5236\u7c7b\u578b\u8868\u793a\u7684\u5176\u4f59\u90e8\u5206\u3002\u7edf\u79f0\u4e3a TOAST \u503c\u7684\u7279\u6b8a\u8868\u793a\u901a\u8fc7\u4fee\u6539\u6216\u91cd\u65b0\u89e3\u91ca\u8fd9\u4e2a\u9996\u90e8\u957f\u5ea6\u5b57\u5de5\u4f5c\u3002\u56e0\u6b64\uff0c\u652f\u6301 TOAST \u7c7b\u578b\u7684 C \u5c42\u51fd\u6570\u5fc5\u987b\u8c28\u614e\u5904\u7406\u53ef\u80fd\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u8f93\u5165\uff1a\u5728\u89e3\u9664 TOAST \u8868\u793a\u524d\uff0c\u8f93\u5165\u53ef\u80fd\u5e76\u4e0d\u7531\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u52a0\u5b9e\u9645\u5185\u5bb9\u7ec4\u6210\u3002\u901a\u5e38\u5e94\u5728\u4efb\u4f55\u5904\u7406\u4e4b\u524d\u8c03\u7528 PG_DETOAST_DATUM\uff0c\u4f46\u67d0\u4e9b\u60c5\u5f62\u53ef\u91c7\u7528\u66f4\u9ad8\u6548\u7684\u65b9\u6cd5\uff0c\u8be6\u60c5\u53c2\u89c1\u7b2c 37.11.1 \u8282\u3002</p>\n<p lang=\"zh\">TOAST \u5360\u7528 varlena \u957f\u5ea6\u5b57\u7684\u4e24\u4e2a\u4f4d\uff1a\u5927\u7aef\u673a\u5668\u4f7f\u7528\u9ad8\u4f4d\uff0c\u5c0f\u7aef\u673a\u5668\u4f7f\u7528\u4f4e\u4f4d\uff0c\u56e0\u6b64\u652f\u6301 TOAST \u7684\u7c7b\u578b\u4e2d\uff0c\u4efb\u4f55\u503c\u7684\u903b\u8f91\u5927\u5c0f\u90fd\u9650\u4e8e 1 GB\uff082^30 - 1 \u5b57\u8282\uff09\u3002\u4e24\u4f4d\u5747\u4e3a\u96f6\u65f6\uff0c\u8be5\u503c\u662f\u666e\u901a\u7684\u672a\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u503c\uff0c\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u672c\u8eab\u5728\u5185\u7684\u603b\u5b57\u8282\u6570\u3002\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u7f6e\u4f4d\u65f6\uff0c\u8be5\u503c\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u800c\u975e\u901a\u5e38\u7684\u56db\u5b57\u8282\u9996\u90e8\uff0c\u8be5\u5b57\u8282\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u8282\u5728\u5185\u7684\u603b\u5927\u5c0f\u3002\u8fd9\u4f7f\u5c0f\u4e8e 127 \u5b57\u8282\u7684\u503c\u80fd\u591f\u7d27\u51d1\u5b58\u50a8\uff0c\u540c\u65f6\u4ecd\u5141\u8bb8\u7c7b\u578b\u5728\u9700\u8981\u65f6\u589e\u957f\u5230 1 GB\u3002\u5355\u5b57\u8282\u9996\u90e8\u7684\u503c\u65e0\u9700\u6309\u7279\u5b9a\u8fb9\u754c\u5bf9\u9f50\uff1b\u56db\u5b57\u8282\u9996\u90e8\u7684\u503c\u5219\u81f3\u5c11\u6309\u56db\u5b57\u8282\u8fb9\u754c\u5bf9\u9f50\u3002\u7701\u7565\u5bf9\u9f50\u586b\u5145\u8fd8\u80fd\u8282\u7701\u7a7a\u95f4\uff0c\u5bf9\u4e8e\u77ed\u503c\u5c24\u5176\u660e\u663e\u3002\u4e00\u4e2a\u7279\u6b8a\u60c5\u51b5\u662f\uff1a\u5982\u679c\u5355\u5b57\u8282\u9996\u90e8\u7684\u5176\u4f59\u4f4d\u5168\u4e3a\u96f6\u2014\u2014\u8fd9\u4e0d\u53ef\u80fd\u662f\u5305\u542b\u81ea\u8eab\u7684\u957f\u5ea6\u2014\u2014\u8be5\u503c\u5c31\u662f\u6307\u5411\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u5177\u4f53\u5f62\u5f0f\u89c1\u4e0b\u6587\u3002\u6307\u9488\u7684\u7c7b\u578b\u548c\u5927\u5c0f\u7531\u6570\u636e\u7b2c\u4e8c\u4e2a\u5b57\u8282\u4e2d\u7684\u4ee3\u7801\u51b3\u5b9a\u3002\u6700\u540e\uff0c\u5982\u679c\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u6e05\u96f6\uff0c\u800c\u76f8\u90bb\u4f4d\u7f6e\u4f4d\uff0c\u6570\u636e\u5185\u5bb9\u5c31\u5df2\u538b\u7f29\uff0c\u4f7f\u7528\u524d\u5fc5\u987b\u89e3\u538b\u3002\u6b64\u65f6\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u538b\u7f29\u540e\u6570\u636e\u7684\u603b\u5927\u5c0f\uff0c\u800c\u975e\u539f\u59cb\u6570\u636e\u5927\u5c0f\u3002\u884c\u5916\u6570\u636e\u4e5f\u53ef\u80fd\u538b\u7f29\uff0c\u4f46 varlena \u9996\u90e8\u4e0d\u8868\u660e\u8fd9\u4e00\u70b9\uff0c\u9700\u67e5\u770b TOAST \u6307\u9488\u7684\u5185\u5bb9\u3002</p>\n<p lang=\"zh\">\u5982\u524d\u6240\u8ff0\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u6709\u591a\u79cd\u7c7b\u578b\u3002\u6700\u65e9\u3001\u4e5f\u6700\u5e38\u89c1\u7684\u4e00\u79cd\uff0c\u662f\u6307\u5411\u5b58\u50a8\u5728 <em class=\"firstterm\"><acronym class=\"acronym\">TOAST</acronym> \u8868</em>\u4e2d\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u8be5\u8868\u4e0e\u5305\u542b\u8be5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u672c\u8eab\u7684\u8868\u76f8\u5173\u8054\uff0c\u4f46\u4e0e\u4e4b\u5206\u79bb\u5b58\u50a8\u3002\u5f53\u4e00\u4e2a\u8981\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u7684\u5143\u7ec4\u8fc7\u5927\u800c\u65e0\u6cd5\u539f\u6837\u5b58\u50a8\u65f6\uff0c\u8fd9\u4e9b<em class=\"firstterm\">\u78c1\u76d8\u4e0a\u7684</em>\u6307\u9488 datum \u4f1a\u7531 <acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\uff08\u4f4d\u4e8e <code class=\"filename\">access/heap/tuptoaster.c</code>\uff09\u521b\u5efa\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/10/storage-toast.html#STORAGE-TOAST-ONDISK\" title=\"67.2.1.\u00a0\u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a067.2.1\u00a0\u8282</a>\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u53ef\u4ee5\u5305\u542b\u6307\u5411\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\u3002\u8fd9\u7c7b datum \u5fc5\u7136\u662f\u77ed\u547d\u7684\uff0c\u6c38\u8fdc\u4e0d\u4f1a\u51fa\u73b0\u5728\u78c1\u76d8\u4e0a\uff0c\u4f46\u5b83\u4eec\u5bf9\u4e8e\u907f\u514d\u5927\u578b\u6570\u636e\u503c\u7684\u590d\u5236\u548c\u5197\u4f59\u5904\u7406\u975e\u5e38\u6709\u7528\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/10/storage-toast.html#STORAGE-TOAST-INMEMORY\" title=\"67.2.2.\u00a0\u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a067.2.2\u00a0\u8282</a>\u3002</p>\n<p lang=\"zh\">\u65e0\u8bba\u662f\u884c\u5185\u538b\u7f29\u6570\u636e\u8fd8\u662f\u884c\u5916\u538b\u7f29\u6570\u636e\uff0c\u5176\u6240\u7528\u7684\u538b\u7f29\u6280\u672f\u90fd\u662f LZ \u538b\u7f29\u6280\u672f\u65cf\u4e2d\u4e00\u79cd\u76f8\u5f53\u7b80\u5355\u4e14\u975e\u5e38\u5feb\u901f\u7684\u65b9\u6cd5\u3002\u8be6\u60c5\u89c1 <code class=\"filename\">src/common/pg_lzcompress.c</code>\u3002</p>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/10/storage-toast.html#STORAGE-TOAST-ONDISK\">67.2.1. \u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u5982\u679c\u8868\u4e2d\u6709\u5217\u652f\u6301 TOAST\uff0c\u8868\u5c31\u4f1a\u5173\u8054\u4e00\u4e2a TOAST \u8868\uff0c\u5176 OID \u5b58\u50a8\u5728 pg_class.reltoastrelid \u4e2d\u3002\u78c1\u76d8\u4e0a\u7684 TOAST \u503c\u5b58\u653e\u5728\u8be5 TOAST \u8868\u4e2d\uff0c\u8be6\u60c5\u89c1\u4e0b\u6587\u3002</p>\n<p lang=\"zh\">\u884c\u5916\u503c\u5728\u538b\u7f29\u540e\uff08\u5982\u679c\u4f7f\u7528\u538b\u7f29\uff09\u62c6\u6210\u6700\u591a TOAST_MAX_CHUNK_SIZE \u5b57\u8282\u7684\u5757\u3002\u9ed8\u8ba4\u9009\u62e9\u6b64\u503c\uff0c\u4f7f\u4e00\u4e2a\u9875\u9762\u80fd\u88c5\u4e0b\u56db\u4e2a\u5757\u884c\uff0c\u56e0\u6b64\u7ea6\u4e3a 2000 \u5b57\u8282\u3002\u6bcf\u5757\u4f5c\u4e3a\u72ec\u7acb\u7684\u4e00\u884c\u5b58\u5165\u6240\u5c5e\u8868\u7684 TOAST \u8868\u3002\u6bcf\u4e2a TOAST \u8868\u90fd\u6709 chunk_id\uff08\u6807\u8bc6\u7279\u5b9a TOAST \u503c\u7684 OID\uff09\u3001chunk_seq\uff08\u8be5\u5757\u5728\u503c\u4e2d\u7684\u5e8f\u53f7\uff09\u548c chunk_data\uff08\u5b9e\u9645\u5757\u6570\u636e\uff09\u4e09\u5217\u3002chunk_id \u4e0e chunk_seq \u4e0a\u7684\u552f\u4e00\u7d22\u5f15\u7528\u4e8e\u5feb\u901f\u68c0\u7d22\u503c\u3002\u56e0\u6b64\uff0c\u8868\u793a\u78c1\u76d8\u884c\u5916 TOAST \u503c\u7684\u6307\u9488\u9700\u8981\u5b58\u50a8 TOAST \u8868\u7684 OID\uff0c\u4ee5\u53ca\u7279\u5b9a\u503c\u7684 OID\uff0c\u5373 chunk_id\u3002\u4e3a\u65b9\u4fbf\u4f7f\u7528\uff0c\u6307\u9488\u8fd8\u5b58\u50a8\u903b\u8f91\u6570\u636e\u5927\u5c0f\uff08\u539f\u59cb\u672a\u538b\u7f29\u957f\u5ea6\uff09\u548c\u7269\u7406\u5b58\u50a8\u5927\u5c0f\uff08\u4f7f\u7528\u538b\u7f29\u65f6\u4e0e\u539f\u59cb\u5927\u5c0f\u4e0d\u540c\uff09\u3002\u7b97\u4e0a varlena \u9996\u90e8\u5b57\u8282\uff0c\u78c1\u76d8 TOAST \u6307\u9488\u7684\u603b\u5927\u5c0f\u4e3a 18 \u5b57\u8282\uff0c\u4e0e\u5176\u8868\u793a\u7684\u503c\u7684\u5b9e\u9645\u5927\u5c0f\u65e0\u5173\u3002</p>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u53ea\u6709\u5728\u8981\u5b58\u5165\u8868\u4e2d\u7684\u884c\u503c\u5bbd\u4e8e <code class=\"symbol\">TOAST_TUPLE_THRESHOLD</code> \u5b57\u8282\uff08\u901a\u5e38\u4e3a 2 kB\uff09\u65f6\u624d\u4f1a\u88ab\u89e6\u53d1\u3002<acronym class=\"acronym\">TOAST</acronym> \u4ee3\u7801\u4f1a\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u628a\u5b57\u6bb5\u503c\u79fb\u5230\u884c\u5916\uff0c\u76f4\u5230\u8be5\u884c\u503c\u77ed\u4e8e <code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u5b57\u8282\uff08\u901a\u5e38\u4e5f\u4e3a 2 kB\uff09\uff0c\u6216\u8005\u5df2\u7ecf\u65e0\u6cd5\u518d\u83b7\u5f97\u66f4\u591a\u6536\u76ca\u3002\u5728 UPDATE \u64cd\u4f5c\u4e2d\uff0c\u672a\u66f4\u6539\u5b57\u6bb5\u7684\u503c\u901a\u5e38\u4f1a\u539f\u6837\u4fdd\u7559\uff1b\u56e0\u6b64\uff0c\u5982\u679c\u66f4\u65b0\u4e00\u884c\u65f6\u5176\u884c\u5916\u503c\u90fd\u6ca1\u6709\u53d8\u5316\uff0c\u4fbf\u4e0d\u4f1a\u4ea7\u751f <acronym class=\"acronym\">TOAST</acronym> \u6210\u672c\u3002</p>\n<p lang=\"zh\">TOAST \u7ba1\u7406\u4ee3\u7801\u652f\u6301\u56db\u79cd\u5c06\u53ef TOAST \u5217\u5b58\u50a8\u5230\u78c1\u76d8\u7684\u7b56\u7565\uff1a</p>\n<div class=\"itemizedlist\">\n<ul class=\"itemizedlist\">\n<li class=\"listitem\" lang=\"zh\">PLAIN \u7981\u6b62\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u5e76\u7981\u6b62 varlena \u7c7b\u578b\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u3002\u5bf9\u4e8e\u4e0d\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\uff0c\u8fd9\u662f\u552f\u4e00\u53ef\u7528\u7684\u5217\u5b58\u50a8\u7b56\u7565\u3002</li>\n<li class=\"listitem\" lang=\"zh\">EXTENDED \u540c\u65f6\u5141\u8bb8\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u662f\u5927\u591a\u6570\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u7684\u9ed8\u8ba4\u7b56\u7565\u3002\u5148\u5c1d\u8bd5\u538b\u7f29\uff1b\u5982\u679c\u884c\u4ecd\u7136\u8fc7\u5927\uff0c\u518d\u4f7f\u7528\u884c\u5916\u5b58\u50a8\u3002</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">EXTERNAL</code> \u5141\u8bb8\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u4e0d\u5141\u8bb8\u538b\u7f29\u3002\u4f7f\u7528 <code class=\"literal\">EXTERNAL</code> \u4f1a\u8ba9\u5bbd <code class=\"type\">text</code> \u548c <code class=\"type\">bytea</code> \u5217\u4e0a\u7684\u5b50\u4e32\u64cd\u4f5c\u66f4\u5feb\uff08\u4ee3\u4ef7\u662f\u5360\u7528\u66f4\u591a\u5b58\u50a8\u7a7a\u95f4\uff09\uff0c\u56e0\u4e3a\u5728\u503c\u672a\u538b\u7f29\u65f6\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u7ecf\u8fc7\u4f18\u5316\uff0c\u53ea\u9700\u63d0\u53d6\u884c\u5916\u503c\u4e2d\u6240\u9700\u7684\u90e8\u5206\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">MAIN</code> \u5141\u8bb8\u538b\u7f29\uff0c\u4f46\u4e0d\u5141\u8bb8\u884c\u5916\u5b58\u50a8\u3002\uff08\u5b9e\u9645\u4e0a\uff0c\u5bf9\u4e8e\u8fd9\u7c7b\u5217\uff0c\u4ecd\u7136\u53ef\u80fd\u8fdb\u884c\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u53ea\u6709\u5728\u522b\u65e0\u4ed6\u6cd5\u3001\u5fc5\u987b\u8fd9\u6837\u505a\u624d\u80fd\u8ba9\u884c\u8db3\u591f\u5c0f\u4ee5\u653e\u5165\u9875\u9762\u65f6\uff0c\u624d\u4f1a\u628a\u5b83\u4f5c\u4e3a\u6700\u540e\u624b\u6bb5\u3002\uff09</p>\n</li>\n</ul>\n</div>\n<p lang=\"zh\">\u6bcf\u79cd\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u90fd\u4e3a\u5176\u5217\u6307\u5b9a\u9ed8\u8ba4\u7b56\u7565\uff0c\u4f46\u5177\u4f53\u8868\u5217\u7684\u7b56\u7565\u53ef\u901a\u8fc7 ALTER TABLE ... SET STORAGE \u4fee\u6539\u3002</p>\n<p lang=\"zh\">\u4e0e\u8ba9\u884c\u503c\u8de8\u9875\u7b49\u66f4\u76f4\u63a5\u7684\u505a\u6cd5\u76f8\u6bd4\uff0c\u6b64\u65b9\u6848\u6709\u591a\u9879\u4f18\u52bf\u3002\u5047\u8bbe\u67e5\u8be2\u901a\u5e38\u6309\u8f83\u5c0f\u952e\u503c\u8fdb\u884c\u6bd4\u8f83\u7b5b\u9009\uff0c\u6267\u884c\u5668\u7684\u5927\u90e8\u5206\u5de5\u4f5c\u5c31\u53ef\u53ea\u4f7f\u7528\u4e3b\u884c\u6570\u636e\u3002TOAST \u5c5e\u6027\u7684\u5927\u503c\u4ec5\u5728\u5c06\u7ed3\u679c\u53d1\u9001\u7ed9\u5ba2\u6237\u7aef\u65f6\u624d\u8bfb\u53d6\uff0c\u800c\u4e14\u524d\u63d0\u662f\u67e5\u8be2\u786e\u5b9e\u9009\u62e9\u4e86\u8fd9\u4e9b\u503c\u3002\u56e0\u800c\u4e3b\u8868\u663e\u8457\u7f29\u5c0f\uff0c\u5171\u4eab\u7f13\u51b2\u533a\u53ef\u5bb9\u7eb3\u66f4\u591a\u884c\uff1b\u6392\u5e8f\u6570\u636e\u96c6\u4e5f\u4f1a\u7f29\u5c0f\uff0c\u66f4\u5bb9\u6613\u5b8c\u5168\u5728\u5185\u5b58\u4e2d\u6392\u5e8f\u3002\u539f\u6587\u4e2d\u7684\u4e00\u4e2a\u5c0f\u6d4b\u8bd5\u8868\u660e\uff1a\u5305\u542b\u5178\u578b HTML \u9875\u9762\u53ca URL \u7684\u8868\u8fde\u540c TOAST \u8868\uff0c\u5360\u7528\u7ea6\u4e3a\u539f\u59cb\u6570\u636e\u7684\u4e00\u534a\uff1b\u4e3b\u8868\u53ea\u5360\u603b\u6570\u636e\u7ea6 10%\uff0c\u5305\u62ec URL \u548c\u5c11\u91cf\u5c0f HTML \u9875\u9762\u3002\u4e0e\u5c06\u6240\u6709 HTML \u9875\u9762\u622a\u77ed\u81f3 7 kB \u4ee5\u4fbf\u88c5\u5165\u884c\u5185\u3001\u672a\u4f7f\u7528 TOAST \u7684\u5bf9\u7167\u8868\u76f8\u6bd4\uff0c\u8fd0\u884c\u65f6\u95f4\u6ca1\u6709\u5dee\u5f02\u3002</p>\n</div>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/10/storage-toast.html#STORAGE-TOAST-INMEMORY\">67.2.2. \u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ef\u4ee5\u6307\u5411\u4e0d\u5728\u78c1\u76d8\u4e0a\u3001\u800c\u4f4d\u4e8e\u5f53\u524d\u670d\u52a1\u5668\u8fdb\u7a0b\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u6570\u636e\u3002\u8fd9\u7c7b\u6307\u9488\u663e\u7136\u4e0d\u53ef\u80fd\u957f\u671f\u5b58\u5728\uff0c\u4f46\u4ecd\u7136\u5f88\u6709\u7528\u3002\u76ee\u524d\u6709\u4e24\u4e2a\u5b50\u60c5\u51b5\uff1a\u6307\u5411<em class=\"firstterm\">\u95f4\u63a5</em>\u6570\u636e\u7684\u6307\u9488\uff0c\u4ee5\u53ca\u6307\u5411<em class=\"firstterm\">\u5c55\u5f00</em>\u6570\u636e\u7684\u6307\u9488\u3002</p>\n<p lang=\"zh\">\u95f4\u63a5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ea\u662f\u7b80\u5355\u5730\u6307\u5411\u67d0\u5904\u5185\u5b58\u4e2d\u5b58\u653e\u7684\u4e00\u4e2a\u975e\u95f4\u63a5 varlena \u503c\u3002\u8fd9\u4e00\u60c5\u51b5\u6700\u521d\u53ea\u662f\u4f5c\u4e3a\u6982\u5ff5\u9a8c\u8bc1\u800c\u521b\u5efa\uff0c\u4f46\u76ee\u524d\u5728\u903b\u8f91\u89e3\u7801\u671f\u95f4\u4f1a\u7528\u5230\u5b83\uff0c\u4ee5\u907f\u514d\u53ef\u80fd\u4e0d\u5f97\u4e0d\u521b\u5efa\u8d85\u8fc7 1 GB \u7684\u7269\u7406\u5143\u7ec4\uff08\u628a\u6240\u6709\u884c\u5916\u5b57\u6bb5\u503c\u90fd\u62c9\u5165\u5143\u7ec4\u5c31\u53ef\u80fd\u5bfc\u81f4\u8fd9\u79cd\u60c5\u51b5\uff09\u3002\u8fd9\u79cd\u673a\u5236\u7684\u7528\u9014\u6709\u9650\uff0c\u56e0\u4e3a\u521b\u5efa\u8be5\u6307\u9488 datum \u7684\u4e00\u65b9\u5fc5\u987b\u5b8c\u5168\u8d1f\u8d23\u786e\u4fdd\u88ab\u5f15\u7528\u6570\u636e\u5728\u6307\u9488\u53ef\u80fd\u5b58\u5728\u7684\u6574\u4e2a\u671f\u95f4\u90fd\u4fdd\u6301\u6709\u6548\uff0c\u800c\u4e14\u7cfb\u7edf\u5e76\u6ca1\u6709\u4efb\u4f55\u57fa\u7840\u8bbe\u65bd\u6765\u5e2e\u52a9\u505a\u5230\u8fd9\u4e00\u70b9\u3002</p>\n<p lang=\"zh\">\u5c55\u5f00\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5bf9\u90a3\u4e9b\u78c1\u76d8\u8868\u793a\u5f62\u5f0f\u5e76\u4e0d\u7279\u522b\u9002\u5408\u8ba1\u7b97\u7528\u9014\u7684\u590d\u6742\u6570\u636e\u7c7b\u578b\u5f88\u6709\u7528\u3002\u4ee5\u6807\u51c6\u7684 <span class=\"productname\">PostgreSQL</span> \u6570\u7ec4 varlena \u8868\u793a\u4e3a\u4f8b\uff0c\u5b83\u5305\u542b\u7ef4\u5ea6\u4fe1\u606f\u3001\u4e00\u4e2a\u7a7a\u503c\u4f4d\u56fe\uff08\u5982\u679c\u5b58\u5728\u7a7a\u503c\u5143\u7d20\uff09\uff0c\u7136\u540e\u4f9d\u6b21\u4fdd\u5b58\u6240\u6709\u5143\u7d20\u7684\u503c\u3002\u5f53\u5143\u7d20\u7c7b\u578b\u672c\u8eab\u4e5f\u662f\u53d8\u957f\u65f6\uff0c\u5b9a\u4f4d\u7b2c <em class=\"replaceable\"><code>N</code></em> \u4e2a\u5143\u7d20\u7684\u552f\u4e00\u529e\u6cd5\u5c31\u662f\u626b\u63cf\u5b83\u524d\u9762\u7684\u6240\u6709\u5143\u7d20\u3002\u8fd9\u79cd\u8868\u793a\u5f62\u5f0f\u56e0\u5176\u7d27\u51d1\u6027\u800c\u9002\u5408\u78c1\u76d8\u5b58\u50a8\uff0c\u4f46\u5bf9\u4e8e\u6570\u7ec4\u8ba1\u7b97\u800c\u8a00\uff0c\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u5c55\u5f00</span>\u201d</span>\u6216<span class=\"quote\">\u201c<span class=\"quote\">\u89e3\u6784</span>\u201d</span>\u7684\u8868\u793a\u4f1a\u66f4\u597d\uff0c\u56e0\u4e3a\u5176\u4e2d\u6240\u6709\u5143\u7d20\u7684\u8d77\u59cb\u4f4d\u7f6e\u90fd\u5df2\u8bc6\u522b\u51fa\u6765\u3002<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u673a\u5236\u901a\u8fc7\u5141\u8bb8\u6309\u5f15\u7528\u4f20\u9012\u7684 Datum \u6307\u5411\u6807\u51c6 varlena \u503c\uff08\u5373\u78c1\u76d8\u8868\u793a\uff09\u6216\u8005\u6307\u5411\u5185\u5b58\u4e2d\u67d0\u5904\u5c55\u5f00\u8868\u793a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c\u6765\u6ee1\u8db3\u8fd9\u4e00\u9700\u8981\u3002\u8fd9\u79cd\u5c55\u5f00\u8868\u793a\u7684\u5177\u4f53\u7ec6\u8282\u7531\u6570\u636e\u7c7b\u578b\u81ea\u884c\u51b3\u5b9a\uff0c\u4e0d\u8fc7\u5b83\u5fc5\u987b\u5177\u6709\u6807\u51c6\u5934\u90e8\uff0c\u5e76\u6ee1\u8db3 <code class=\"filename\">src/include/utils/expandeddatum.h</code> \u4e2d\u7ed9\u51fa\u7684\u5176\u4ed6 API \u8981\u6c42\u3002\u5904\u7406\u8be5\u6570\u636e\u7c7b\u578b\u7684 C \u7ea7\u51fd\u6570\u53ef\u4ee5\u9009\u62e9\u652f\u6301\u4efb\u4e00\u79cd\u8868\u793a\u3002\u4e0d\u77e5\u9053\u5c55\u5f00\u8868\u793a\u3001\u4f46\u53ea\u662f\u5bf9\u8f93\u5165\u5e94\u7528 <code class=\"function\">PG_DETOAST_DATUM</code> \u7684\u51fd\u6570\uff0c\u4f1a\u81ea\u52a8\u83b7\u5f97\u4f20\u7edf\u7684 varlena \u8868\u793a\uff1b\u56e0\u6b64\uff0c\u5bf9\u5c55\u5f00\u8868\u793a\u7684\u652f\u6301\u53ef\u4ee5\u9010\u6b65\u5f15\u5165\uff0c\u4e00\u6b21\u589e\u52a0\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\u3002</p>\n<p lang=\"zh\">\u6307\u5411\u5c55\u5f00\u503c\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u8fd8\u53ef\u8fdb\u4e00\u6b65\u5206\u4e3a<em class=\"firstterm\">\u53ef\u8bfb\u5199\uff08read-write\uff09</em>\u548c<em class=\"firstterm\">\u53ea\u8bfb\uff08read-only\uff09</em>\u6307\u9488\u3002\u65e0\u8bba\u54ea\u79cd\u65b9\u5f0f\uff0c\u88ab\u6307\u5411\u7684\u8868\u793a\u662f\u76f8\u540c\u7684\uff1b\u4f46\u6536\u5230\u53ef\u8bfb\u5199\u6307\u9488\u7684\u51fd\u6570\u53ef\u4ee5\u539f\u5730\u4fee\u6539\u6240\u5f15\u7528\u7684\u503c\uff0c\u800c\u6536\u5230\u53ea\u8bfb\u6307\u9488\u7684\u51fd\u6570\u5219\u4e0d\u53ef\u4ee5\uff0c\u5982\u679c\u5b83\u60f3\u751f\u6210\u8be5\u503c\u7684\u4fee\u6539\u7248\u672c\uff0c\u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u526f\u672c\u3002\u8fd9\u79cd\u533a\u5206\u4ee5\u53ca\u4e00\u4e9b\u76f8\u5173\u7ea6\u5b9a\uff0c\u4f7f\u5f97\u5728\u67e5\u8be2\u6267\u884c\u671f\u95f4\u53ef\u4ee5\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u5c55\u5f00\u503c\u590d\u5236\u3002</p>\n<p lang=\"zh\">\u5bf9\u4e8e\u6240\u6709\u7c7b\u578b\u7684\u5185\u5b58\u4e2d <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c<acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u90fd\u4f1a\u786e\u4fdd\u8fd9\u7c7b\u6307\u9488 datum \u4e0d\u4f1a\u610f\u5916\u5730\u88ab\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u3002\u5185\u5b58\u4e2d\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5728\u5b58\u50a8\u524d\u4f1a\u81ea\u52a8\u5c55\u5f00\u4e3a\u666e\u901a\u7684\u884c\u5185 varlena \u503c\uff0c\u5982\u679c\u8fd9\u6837\u4f1a\u4f7f\u627f\u8f7d\u5b83\u7684\u5143\u7ec4\u8fc7\u5927\uff0c\u8fd8\u53ef\u80fd\u8fdb\u4e00\u6b65\u8f6c\u6362\u4e3a\u78c1\u76d8\u4e0a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u3002</p>\n</div>\n</div>", "manual_path": "/docs/10/storage-toast.html", "localization": {"status": "complete", "sources": [{"url": "/docs/10/storage-toast.html", "method": "same-major semantic node", "sha256": "6cc2465116d43f0e8ba4608a61dcc32449c0cc2d393c007b8f1680ad307e713b", "language": "zh", "matched_nodes": ["#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[2]", "#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[3]", "#STORAGE-TOAST/div[10]/p[3]", "#STORAGE-TOAST/div[11]/p[1]", "#STORAGE-TOAST/div[11]/p[2]", "#STORAGE-TOAST/div[11]/p[3]", "#STORAGE-TOAST/div[11]/p[4]", "#STORAGE-TOAST/div[11]/p[5]", "#STORAGE-TOAST/div[1]/dl[0]/dt[0]", "#STORAGE-TOAST/div[1]/dl[0]/dt[1]", "#STORAGE-TOAST/p[4]", "#STORAGE-TOAST/p[5]", "#STORAGE-TOAST/p[8]", "#STORAGE-TOAST/p[9]"]}], "language": "zh", "original_text": {"/versions/10/description/0": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/versions/10/facts/0/label": "Definition scope", "/versions/10/facts/0/value": "Same-version core physical storage documentation", "/versions/10/related/0/label": "Storage Parameters"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "882612902588bb5ad441f7d636a6e715a0f79cd93fad6dd818ff39d0e6abb2bc"}, "comparison_data": {"layouts": []}, "comparison_hash": "27341929154bfb55531f03501322b65af719c5561f3c4ddc9528a14aa4df69b5", "manual_language": "zh"}, "11": {"facts": [{"label": "\u5b9a\u4e49\u8303\u56f4", "value": "\u540c\u7248\u672c\u6838\u5fc3\u7269\u7406\u5b58\u50a8\u6587\u6863"}], "tables": [], "related": [{"url": "/wiki/relopts/?v=11", "label": "\u5b58\u50a8\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v11.22/postgresql-11.22.tar.bz2", "label": "11.22", "major": "11", "channel": "stable", "revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "sources": [{"url": "https://pg.center/docs/11/storage-toast.html", "path": "storage-toast.html", "label": "PostgreSQL 11 English manual", "sha256": "461ebc6741983aff478a63132a4d7ce43b56e990b4cd31b28ccc6b2ecc9b3b06", "language": "en", "original_url": "/docs/11/storage-toast.html"}], "sections": [], "signature": "", "description": ["\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002"], "manual_html": "<div class=\"sect1\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h2 class=\"title\">69.2.\u00a0TOAST</h2>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08<acronym class=\"acronym\">TOAST</acronym>, The Oversized-Attribute Storage Technique\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"productname\">PostgreSQL</span> \u4f7f\u7528\u56fa\u5b9a\u9875\u9762\u5927\u5c0f\uff08\u901a\u5e38\u4e3a 8 kB\uff09\uff0c\u5e76\u4e14\u4e0d\u5141\u8bb8\u5143\u7ec4\u8de8\u8d8a\u591a\u4e2a\u9875\u9762\u3002\u56e0\u6b64\uff0c\u65e0\u6cd5\u76f4\u63a5\u5b58\u50a8\u975e\u5e38\u5927\u7684\u5b57\u6bb5\u503c\u3002\u4e3a\u514b\u670d\u8fd9\u4e00\u9650\u5236\uff0c\u5927\u5b57\u6bb5\u503c\u4f1a\u88ab\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u62c6\u5206\u6210\u591a\u4e2a\u7269\u7406\u884c\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u5bf9\u7528\u6237\u662f\u900f\u660e\u7684\uff0c\u800c\u4e14\u5bf9\u5927\u90e8\u5206\u540e\u7aef\u4ee3\u7801\u7684\u5f71\u54cd\u5f88\u5c0f\u3002\u8fd9\u9879\u6280\u672f\u88ab\u4eb2\u5207\u5730\u79f0\u4e3a <acronym class=\"acronym\">TOAST</acronym>\uff08\u6216\u8005<span class=\"quote\">\u201c<span class=\"quote\">\u81ea\u5207\u7247\u9762\u5305\u95ee\u4e16\u4ee5\u6765\u6700\u68d2\u7684\u4e1c\u897f</span>\u201d</span>\uff09\u3002<acronym class=\"acronym\">TOAST</acronym> \u57fa\u7840\u8bbe\u65bd\u4e5f\u88ab\u7528\u4e8e\u6539\u8fdb\u5185\u5b58\u4e2d\u5927\u578b\u6570\u636e\u503c\u7684\u5904\u7406\u3002</p>\n<p lang=\"zh\">\u53ea\u6709\u90e8\u5206\u6570\u636e\u7c7b\u578b\u652f\u6301 TOAST\uff1b\u65e0\u9700\u8ba9\u4e0d\u4f1a\u4ea7\u751f\u5927\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u627f\u62c5\u989d\u5916\u5f00\u9500\u3002\u8981\u652f\u6301 TOAST\uff0c\u7c7b\u578b\u5fc5\u987b\u91c7\u7528\u53d8\u957f\uff08varlena\uff09\u8868\u793a\uff0c\u901a\u5e38\u5176\u5b58\u50a8\u503c\u7684\u7b2c\u4e00\u4e2a\u56db\u5b57\u8282\u5b57\u8bb0\u5f55\u603b\u5b57\u8282\u957f\u5ea6\uff0c\u5305\u62ec\u8be5\u957f\u5ea6\u5b57\u672c\u8eab\u3002TOAST \u4e0d\u9650\u5236\u7c7b\u578b\u8868\u793a\u7684\u5176\u4f59\u90e8\u5206\u3002\u7edf\u79f0\u4e3a TOAST \u503c\u7684\u7279\u6b8a\u8868\u793a\u901a\u8fc7\u4fee\u6539\u6216\u91cd\u65b0\u89e3\u91ca\u8fd9\u4e2a\u9996\u90e8\u957f\u5ea6\u5b57\u5de5\u4f5c\u3002\u56e0\u6b64\uff0c\u652f\u6301 TOAST \u7c7b\u578b\u7684 C \u5c42\u51fd\u6570\u5fc5\u987b\u8c28\u614e\u5904\u7406\u53ef\u80fd\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u8f93\u5165\uff1a\u5728\u89e3\u9664 TOAST \u8868\u793a\u524d\uff0c\u8f93\u5165\u53ef\u80fd\u5e76\u4e0d\u7531\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u52a0\u5b9e\u9645\u5185\u5bb9\u7ec4\u6210\u3002\u901a\u5e38\u5e94\u5728\u4efb\u4f55\u5904\u7406\u4e4b\u524d\u8c03\u7528 PG_DETOAST_DATUM\uff0c\u4f46\u67d0\u4e9b\u60c5\u5f62\u53ef\u91c7\u7528\u66f4\u9ad8\u6548\u7684\u65b9\u6cd5\uff0c\u8be6\u60c5\u53c2\u89c1\u7b2c 38.12.1 \u8282\u3002</p>\n<p lang=\"zh\">TOAST \u5360\u7528 varlena \u957f\u5ea6\u5b57\u7684\u4e24\u4e2a\u4f4d\uff1a\u5927\u7aef\u673a\u5668\u4f7f\u7528\u9ad8\u4f4d\uff0c\u5c0f\u7aef\u673a\u5668\u4f7f\u7528\u4f4e\u4f4d\uff0c\u56e0\u6b64\u652f\u6301 TOAST \u7684\u7c7b\u578b\u4e2d\uff0c\u4efb\u4f55\u503c\u7684\u903b\u8f91\u5927\u5c0f\u90fd\u9650\u4e8e 1 GB\uff082^30 - 1 \u5b57\u8282\uff09\u3002\u4e24\u4f4d\u5747\u4e3a\u96f6\u65f6\uff0c\u8be5\u503c\u662f\u666e\u901a\u7684\u672a\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u503c\uff0c\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u672c\u8eab\u5728\u5185\u7684\u603b\u5b57\u8282\u6570\u3002\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u7f6e\u4f4d\u65f6\uff0c\u8be5\u503c\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u800c\u975e\u901a\u5e38\u7684\u56db\u5b57\u8282\u9996\u90e8\uff0c\u8be5\u5b57\u8282\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u8282\u5728\u5185\u7684\u603b\u5927\u5c0f\u3002\u8fd9\u4f7f\u5c0f\u4e8e 127 \u5b57\u8282\u7684\u503c\u80fd\u591f\u7d27\u51d1\u5b58\u50a8\uff0c\u540c\u65f6\u4ecd\u5141\u8bb8\u7c7b\u578b\u5728\u9700\u8981\u65f6\u589e\u957f\u5230 1 GB\u3002\u5355\u5b57\u8282\u9996\u90e8\u7684\u503c\u65e0\u9700\u6309\u7279\u5b9a\u8fb9\u754c\u5bf9\u9f50\uff1b\u56db\u5b57\u8282\u9996\u90e8\u7684\u503c\u5219\u81f3\u5c11\u6309\u56db\u5b57\u8282\u8fb9\u754c\u5bf9\u9f50\u3002\u7701\u7565\u5bf9\u9f50\u586b\u5145\u8fd8\u80fd\u8282\u7701\u7a7a\u95f4\uff0c\u5bf9\u4e8e\u77ed\u503c\u5c24\u5176\u660e\u663e\u3002\u4e00\u4e2a\u7279\u6b8a\u60c5\u51b5\u662f\uff1a\u5982\u679c\u5355\u5b57\u8282\u9996\u90e8\u7684\u5176\u4f59\u4f4d\u5168\u4e3a\u96f6\u2014\u2014\u8fd9\u4e0d\u53ef\u80fd\u662f\u5305\u542b\u81ea\u8eab\u7684\u957f\u5ea6\u2014\u2014\u8be5\u503c\u5c31\u662f\u6307\u5411\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u5177\u4f53\u5f62\u5f0f\u89c1\u4e0b\u6587\u3002\u6307\u9488\u7684\u7c7b\u578b\u548c\u5927\u5c0f\u7531\u6570\u636e\u7b2c\u4e8c\u4e2a\u5b57\u8282\u4e2d\u7684\u4ee3\u7801\u51b3\u5b9a\u3002\u6700\u540e\uff0c\u5982\u679c\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u6e05\u96f6\uff0c\u800c\u76f8\u90bb\u4f4d\u7f6e\u4f4d\uff0c\u6570\u636e\u5185\u5bb9\u5c31\u5df2\u538b\u7f29\uff0c\u4f7f\u7528\u524d\u5fc5\u987b\u89e3\u538b\u3002\u6b64\u65f6\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u538b\u7f29\u540e\u6570\u636e\u7684\u603b\u5927\u5c0f\uff0c\u800c\u975e\u539f\u59cb\u6570\u636e\u5927\u5c0f\u3002\u884c\u5916\u6570\u636e\u4e5f\u53ef\u80fd\u538b\u7f29\uff0c\u4f46 varlena \u9996\u90e8\u4e0d\u8868\u660e\u8fd9\u4e00\u70b9\uff0c\u9700\u67e5\u770b TOAST \u6307\u9488\u7684\u5185\u5bb9\u3002</p>\n<p lang=\"zh\">\u5982\u524d\u6240\u8ff0\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u6709\u591a\u79cd\u7c7b\u578b\u3002\u6700\u65e9\u3001\u4e5f\u6700\u5e38\u89c1\u7684\u4e00\u79cd\uff0c\u662f\u6307\u5411\u5b58\u50a8\u5728 <em class=\"firstterm\"><acronym class=\"acronym\">TOAST</acronym> \u8868</em>\u4e2d\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u8be5\u8868\u4e0e\u5305\u542b\u8be5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u672c\u8eab\u7684\u8868\u76f8\u5173\u8054\uff0c\u4f46\u4e0e\u4e4b\u5206\u79bb\u5b58\u50a8\u3002\u5f53\u4e00\u4e2a\u8981\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u7684\u5143\u7ec4\u8fc7\u5927\u800c\u65e0\u6cd5\u539f\u6837\u5b58\u50a8\u65f6\uff0c\u8fd9\u4e9b<em class=\"firstterm\">\u78c1\u76d8\u4e0a\u7684</em>\u6307\u9488 datum \u4f1a\u7531 <acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\uff08\u4f4d\u4e8e <code class=\"filename\">access/heap/tuptoaster.c</code>\uff09\u521b\u5efa\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/11/storage-toast.html#STORAGE-TOAST-ONDISK\" title=\"69.2.1.\u00a0\u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a069.2.1\u00a0\u8282</a>\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u53ef\u4ee5\u5305\u542b\u6307\u5411\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\u3002\u8fd9\u7c7b datum \u5fc5\u7136\u662f\u77ed\u547d\u7684\uff0c\u6c38\u8fdc\u4e0d\u4f1a\u51fa\u73b0\u5728\u78c1\u76d8\u4e0a\uff0c\u4f46\u5b83\u4eec\u5bf9\u4e8e\u907f\u514d\u5927\u578b\u6570\u636e\u503c\u7684\u590d\u5236\u548c\u5197\u4f59\u5904\u7406\u975e\u5e38\u6709\u7528\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/11/storage-toast.html#STORAGE-TOAST-INMEMORY\" title=\"69.2.2.\u00a0\u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a069.2.2\u00a0\u8282</a>\u3002</p>\n<p lang=\"zh\">\u65e0\u8bba\u662f\u884c\u5185\u538b\u7f29\u6570\u636e\u8fd8\u662f\u884c\u5916\u538b\u7f29\u6570\u636e\uff0c\u5176\u6240\u7528\u7684\u538b\u7f29\u6280\u672f\u90fd\u662f LZ \u538b\u7f29\u6280\u672f\u65cf\u4e2d\u4e00\u79cd\u76f8\u5f53\u7b80\u5355\u4e14\u975e\u5e38\u5feb\u901f\u7684\u65b9\u6cd5\u3002\u8be6\u60c5\u89c1 <code class=\"filename\">src/common/pg_lzcompress.c</code>\u3002</p>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/11/storage-toast.html#STORAGE-TOAST-ONDISK\">69.2.1. \u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u5982\u679c\u8868\u4e2d\u6709\u5217\u652f\u6301 TOAST\uff0c\u8868\u5c31\u4f1a\u5173\u8054\u4e00\u4e2a TOAST \u8868\uff0c\u5176 OID \u5b58\u50a8\u5728 pg_class.reltoastrelid \u4e2d\u3002\u78c1\u76d8\u4e0a\u7684 TOAST \u503c\u5b58\u653e\u5728\u8be5 TOAST \u8868\u4e2d\uff0c\u8be6\u60c5\u89c1\u4e0b\u6587\u3002</p>\n<p lang=\"zh\">\u884c\u5916\u503c\u5728\u538b\u7f29\u540e\uff08\u5982\u679c\u4f7f\u7528\u538b\u7f29\uff09\u62c6\u6210\u6700\u591a TOAST_MAX_CHUNK_SIZE \u5b57\u8282\u7684\u5757\u3002\u9ed8\u8ba4\u9009\u62e9\u6b64\u503c\uff0c\u4f7f\u4e00\u4e2a\u9875\u9762\u80fd\u88c5\u4e0b\u56db\u4e2a\u5757\u884c\uff0c\u56e0\u6b64\u7ea6\u4e3a 2000 \u5b57\u8282\u3002\u6bcf\u5757\u4f5c\u4e3a\u72ec\u7acb\u7684\u4e00\u884c\u5b58\u5165\u6240\u5c5e\u8868\u7684 TOAST \u8868\u3002\u6bcf\u4e2a TOAST \u8868\u90fd\u6709 chunk_id\uff08\u6807\u8bc6\u7279\u5b9a TOAST \u503c\u7684 OID\uff09\u3001chunk_seq\uff08\u8be5\u5757\u5728\u503c\u4e2d\u7684\u5e8f\u53f7\uff09\u548c chunk_data\uff08\u5b9e\u9645\u5757\u6570\u636e\uff09\u4e09\u5217\u3002chunk_id \u4e0e chunk_seq \u4e0a\u7684\u552f\u4e00\u7d22\u5f15\u7528\u4e8e\u5feb\u901f\u68c0\u7d22\u503c\u3002\u56e0\u6b64\uff0c\u8868\u793a\u78c1\u76d8\u884c\u5916 TOAST \u503c\u7684\u6307\u9488\u9700\u8981\u5b58\u50a8 TOAST \u8868\u7684 OID\uff0c\u4ee5\u53ca\u7279\u5b9a\u503c\u7684 OID\uff0c\u5373 chunk_id\u3002\u4e3a\u65b9\u4fbf\u4f7f\u7528\uff0c\u6307\u9488\u8fd8\u5b58\u50a8\u903b\u8f91\u6570\u636e\u5927\u5c0f\uff08\u539f\u59cb\u672a\u538b\u7f29\u957f\u5ea6\uff09\u548c\u7269\u7406\u5b58\u50a8\u5927\u5c0f\uff08\u4f7f\u7528\u538b\u7f29\u65f6\u4e0e\u539f\u59cb\u5927\u5c0f\u4e0d\u540c\uff09\u3002\u7b97\u4e0a varlena \u9996\u90e8\u5b57\u8282\uff0c\u78c1\u76d8 TOAST \u6307\u9488\u7684\u603b\u5927\u5c0f\u4e3a 18 \u5b57\u8282\uff0c\u4e0e\u5176\u8868\u793a\u7684\u503c\u7684\u5b9e\u9645\u5927\u5c0f\u65e0\u5173\u3002</p>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u53ea\u6709\u5728\u8981\u5b58\u5165\u8868\u4e2d\u7684\u884c\u503c\u5bbd\u4e8e <code class=\"symbol\">TOAST_TUPLE_THRESHOLD</code> \u5b57\u8282\uff08\u901a\u5e38\u4e3a 2 kB\uff09\u65f6\u624d\u4f1a\u88ab\u89e6\u53d1\u3002<acronym class=\"acronym\">TOAST</acronym> \u4ee3\u7801\u4f1a\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u628a\u5b57\u6bb5\u503c\u79fb\u5230\u884c\u5916\uff0c\u76f4\u5230\u8be5\u884c\u503c\u77ed\u4e8e <code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u5b57\u8282\uff08\u901a\u5e38\u4e5f\u4e3a 2 kB\uff0c\u4f46\u53ef\u8c03\u6574\uff09\uff0c\u6216\u8005\u5df2\u7ecf\u65e0\u6cd5\u518d\u83b7\u5f97\u66f4\u591a\u6536\u76ca\u3002\u5728 UPDATE \u64cd\u4f5c\u4e2d\uff0c\u672a\u66f4\u6539\u5b57\u6bb5\u7684\u503c\u901a\u5e38\u4f1a\u539f\u6837\u4fdd\u7559\uff1b\u56e0\u6b64\uff0c\u5982\u679c\u66f4\u65b0\u4e00\u884c\u65f6\u5176\u884c\u5916\u503c\u90fd\u6ca1\u6709\u53d8\u5316\uff0c\u4fbf\u4e0d\u4f1a\u4ea7\u751f <acronym class=\"acronym\">TOAST</acronym> \u6210\u672c\u3002</p>\n<p lang=\"zh\">TOAST \u7ba1\u7406\u4ee3\u7801\u652f\u6301\u56db\u79cd\u5c06\u53ef TOAST \u5217\u5b58\u50a8\u5230\u78c1\u76d8\u7684\u7b56\u7565\uff1a</p>\n<div class=\"itemizedlist\">\n<ul class=\"itemizedlist\">\n<li class=\"listitem\" lang=\"zh\">PLAIN \u7981\u6b62\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\u3002\u5bf9\u4e8e\u4e0d\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\uff0c\u8fd9\u662f\u552f\u4e00\u53ef\u7528\u7684\u5217\u5b58\u50a8\u7b56\u7565\u3002</li>\n<li class=\"listitem\" lang=\"zh\">EXTENDED \u540c\u65f6\u5141\u8bb8\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u662f\u5927\u591a\u6570\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u7684\u9ed8\u8ba4\u7b56\u7565\u3002\u5148\u5c1d\u8bd5\u538b\u7f29\uff1b\u5982\u679c\u884c\u4ecd\u7136\u8fc7\u5927\uff0c\u518d\u4f7f\u7528\u884c\u5916\u5b58\u50a8\u3002</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">EXTERNAL</code> \u5141\u8bb8\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u4e0d\u5141\u8bb8\u538b\u7f29\u3002\u4f7f\u7528 <code class=\"literal\">EXTERNAL</code> \u4f1a\u8ba9\u5bbd <code class=\"type\">text</code> \u548c <code class=\"type\">bytea</code> \u5217\u4e0a\u7684\u5b50\u4e32\u64cd\u4f5c\u66f4\u5feb\uff08\u4ee3\u4ef7\u662f\u5360\u7528\u66f4\u591a\u5b58\u50a8\u7a7a\u95f4\uff09\uff0c\u56e0\u4e3a\u5728\u503c\u672a\u538b\u7f29\u65f6\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u7ecf\u8fc7\u4f18\u5316\uff0c\u53ea\u9700\u63d0\u53d6\u884c\u5916\u503c\u4e2d\u6240\u9700\u7684\u90e8\u5206\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">MAIN</code> \u5141\u8bb8\u538b\u7f29\uff0c\u4f46\u4e0d\u5141\u8bb8\u884c\u5916\u5b58\u50a8\u3002\uff08\u5b9e\u9645\u4e0a\uff0c\u5bf9\u4e8e\u8fd9\u7c7b\u5217\uff0c\u4ecd\u7136\u53ef\u80fd\u8fdb\u884c\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u53ea\u6709\u5728\u522b\u65e0\u4ed6\u6cd5\u3001\u5fc5\u987b\u8fd9\u6837\u505a\u624d\u80fd\u8ba9\u884c\u8db3\u591f\u5c0f\u4ee5\u653e\u5165\u9875\u9762\u65f6\uff0c\u624d\u4f1a\u628a\u5b83\u4f5c\u4e3a\u6700\u540e\u624b\u6bb5\u3002\uff09</p>\n</li>\n</ul>\n</div>\n<p lang=\"zh\">\u6bcf\u79cd\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u90fd\u4e3a\u5176\u5217\u6307\u5b9a\u9ed8\u8ba4\u7b56\u7565\uff0c\u4f46\u5177\u4f53\u8868\u5217\u7684\u7b56\u7565\u53ef\u901a\u8fc7 ALTER TABLE ... SET STORAGE \u4fee\u6539\u3002</p>\n<p lang=\"zh\"><code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u4e5f\u53ef\u4ee5\u9488\u5bf9\u6bcf\u4e2a\u8868\u901a\u8fc7 <a class=\"link\" href=\"/docs/11/sql-altertable.html\" title=\"ALTER TABLE\"><code class=\"command\">ALTER TABLE ... SET (toast_tuple_target = N)</code></a> \u8fdb\u884c\u8c03\u6574\u3002</p>\n<p lang=\"zh\">\u4e0e\u8ba9\u884c\u503c\u8de8\u9875\u7b49\u66f4\u76f4\u63a5\u7684\u505a\u6cd5\u76f8\u6bd4\uff0c\u6b64\u65b9\u6848\u6709\u591a\u9879\u4f18\u52bf\u3002\u5047\u8bbe\u67e5\u8be2\u901a\u5e38\u6309\u8f83\u5c0f\u952e\u503c\u8fdb\u884c\u6bd4\u8f83\u7b5b\u9009\uff0c\u6267\u884c\u5668\u7684\u5927\u90e8\u5206\u5de5\u4f5c\u5c31\u53ef\u53ea\u4f7f\u7528\u4e3b\u884c\u6570\u636e\u3002TOAST \u5c5e\u6027\u7684\u5927\u503c\u4ec5\u5728\u5c06\u7ed3\u679c\u53d1\u9001\u7ed9\u5ba2\u6237\u7aef\u65f6\u624d\u8bfb\u53d6\uff0c\u800c\u4e14\u524d\u63d0\u662f\u67e5\u8be2\u786e\u5b9e\u9009\u62e9\u4e86\u8fd9\u4e9b\u503c\u3002\u56e0\u800c\u4e3b\u8868\u663e\u8457\u7f29\u5c0f\uff0c\u5171\u4eab\u7f13\u51b2\u533a\u53ef\u5bb9\u7eb3\u66f4\u591a\u884c\uff1b\u6392\u5e8f\u6570\u636e\u96c6\u4e5f\u4f1a\u7f29\u5c0f\uff0c\u66f4\u5bb9\u6613\u5b8c\u5168\u5728\u5185\u5b58\u4e2d\u6392\u5e8f\u3002\u539f\u6587\u4e2d\u7684\u4e00\u4e2a\u5c0f\u6d4b\u8bd5\u8868\u660e\uff1a\u5305\u542b\u5178\u578b HTML \u9875\u9762\u53ca URL \u7684\u8868\u8fde\u540c TOAST \u8868\uff0c\u5360\u7528\u7ea6\u4e3a\u539f\u59cb\u6570\u636e\u7684\u4e00\u534a\uff1b\u4e3b\u8868\u53ea\u5360\u603b\u6570\u636e\u7ea6 10%\uff0c\u5305\u62ec URL \u548c\u5c11\u91cf\u5c0f HTML \u9875\u9762\u3002\u4e0e\u5c06\u6240\u6709 HTML \u9875\u9762\u622a\u77ed\u81f3 7 kB \u4ee5\u4fbf\u88c5\u5165\u884c\u5185\u3001\u672a\u4f7f\u7528 TOAST \u7684\u5bf9\u7167\u8868\u76f8\u6bd4\uff0c\u8fd0\u884c\u65f6\u95f4\u6ca1\u6709\u5dee\u5f02\u3002</p>\n</div>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/11/storage-toast.html#STORAGE-TOAST-INMEMORY\">69.2.2. \u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ef\u4ee5\u6307\u5411\u4e0d\u5728\u78c1\u76d8\u4e0a\u3001\u800c\u4f4d\u4e8e\u5f53\u524d\u670d\u52a1\u5668\u8fdb\u7a0b\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u6570\u636e\u3002\u8fd9\u7c7b\u6307\u9488\u663e\u7136\u4e0d\u53ef\u80fd\u957f\u671f\u5b58\u5728\uff0c\u4f46\u4ecd\u7136\u5f88\u6709\u7528\u3002\u76ee\u524d\u6709\u4e24\u4e2a\u5b50\u60c5\u51b5\uff1a\u6307\u5411<em class=\"firstterm\">\u95f4\u63a5</em>\u6570\u636e\u7684\u6307\u9488\uff0c\u4ee5\u53ca\u6307\u5411<em class=\"firstterm\">\u5c55\u5f00</em>\u6570\u636e\u7684\u6307\u9488\u3002</p>\n<p lang=\"zh\">\u95f4\u63a5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ea\u662f\u7b80\u5355\u5730\u6307\u5411\u67d0\u5904\u5185\u5b58\u4e2d\u5b58\u653e\u7684\u4e00\u4e2a\u975e\u95f4\u63a5 varlena \u503c\u3002\u8fd9\u4e00\u60c5\u51b5\u6700\u521d\u53ea\u662f\u4f5c\u4e3a\u6982\u5ff5\u9a8c\u8bc1\u800c\u521b\u5efa\uff0c\u4f46\u76ee\u524d\u5728\u903b\u8f91\u89e3\u7801\u671f\u95f4\u4f1a\u7528\u5230\u5b83\uff0c\u4ee5\u907f\u514d\u53ef\u80fd\u4e0d\u5f97\u4e0d\u521b\u5efa\u8d85\u8fc7 1 GB \u7684\u7269\u7406\u5143\u7ec4\uff08\u628a\u6240\u6709\u884c\u5916\u5b57\u6bb5\u503c\u90fd\u62c9\u5165\u5143\u7ec4\u5c31\u53ef\u80fd\u5bfc\u81f4\u8fd9\u79cd\u60c5\u51b5\uff09\u3002\u8fd9\u79cd\u673a\u5236\u7684\u7528\u9014\u6709\u9650\uff0c\u56e0\u4e3a\u521b\u5efa\u8be5\u6307\u9488 datum \u7684\u4e00\u65b9\u5fc5\u987b\u5b8c\u5168\u8d1f\u8d23\u786e\u4fdd\u88ab\u5f15\u7528\u6570\u636e\u5728\u6307\u9488\u53ef\u80fd\u5b58\u5728\u7684\u6574\u4e2a\u671f\u95f4\u90fd\u4fdd\u6301\u6709\u6548\uff0c\u800c\u4e14\u7cfb\u7edf\u5e76\u6ca1\u6709\u4efb\u4f55\u57fa\u7840\u8bbe\u65bd\u6765\u5e2e\u52a9\u505a\u5230\u8fd9\u4e00\u70b9\u3002</p>\n<p lang=\"zh\">\u5c55\u5f00\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5bf9\u90a3\u4e9b\u78c1\u76d8\u8868\u793a\u5f62\u5f0f\u5e76\u4e0d\u7279\u522b\u9002\u5408\u8ba1\u7b97\u7528\u9014\u7684\u590d\u6742\u6570\u636e\u7c7b\u578b\u5f88\u6709\u7528\u3002\u4ee5\u6807\u51c6\u7684 <span class=\"productname\">PostgreSQL</span> \u6570\u7ec4 varlena \u8868\u793a\u4e3a\u4f8b\uff0c\u5b83\u5305\u542b\u7ef4\u5ea6\u4fe1\u606f\u3001\u4e00\u4e2a\u7a7a\u503c\u4f4d\u56fe\uff08\u5982\u679c\u5b58\u5728\u7a7a\u503c\u5143\u7d20\uff09\uff0c\u7136\u540e\u4f9d\u6b21\u4fdd\u5b58\u6240\u6709\u5143\u7d20\u7684\u503c\u3002\u5f53\u5143\u7d20\u7c7b\u578b\u672c\u8eab\u4e5f\u662f\u53d8\u957f\u65f6\uff0c\u5b9a\u4f4d\u7b2c <em class=\"replaceable\"><code>N</code></em> \u4e2a\u5143\u7d20\u7684\u552f\u4e00\u529e\u6cd5\u5c31\u662f\u626b\u63cf\u5b83\u524d\u9762\u7684\u6240\u6709\u5143\u7d20\u3002\u8fd9\u79cd\u8868\u793a\u5f62\u5f0f\u56e0\u5176\u7d27\u51d1\u6027\u800c\u9002\u5408\u78c1\u76d8\u5b58\u50a8\uff0c\u4f46\u5bf9\u4e8e\u6570\u7ec4\u8ba1\u7b97\u800c\u8a00\uff0c\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u5c55\u5f00</span>\u201d</span>\u6216<span class=\"quote\">\u201c<span class=\"quote\">\u89e3\u6784</span>\u201d</span>\u7684\u8868\u793a\u4f1a\u66f4\u597d\uff0c\u56e0\u4e3a\u5176\u4e2d\u6240\u6709\u5143\u7d20\u7684\u8d77\u59cb\u4f4d\u7f6e\u90fd\u5df2\u8bc6\u522b\u51fa\u6765\u3002<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u673a\u5236\u901a\u8fc7\u5141\u8bb8\u6309\u5f15\u7528\u4f20\u9012\u7684 Datum \u6307\u5411\u6807\u51c6 varlena \u503c\uff08\u5373\u78c1\u76d8\u8868\u793a\uff09\u6216\u8005\u6307\u5411\u5185\u5b58\u4e2d\u67d0\u5904\u5c55\u5f00\u8868\u793a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c\u6765\u6ee1\u8db3\u8fd9\u4e00\u9700\u8981\u3002\u8fd9\u79cd\u5c55\u5f00\u8868\u793a\u7684\u5177\u4f53\u7ec6\u8282\u7531\u6570\u636e\u7c7b\u578b\u81ea\u884c\u51b3\u5b9a\uff0c\u4e0d\u8fc7\u5b83\u5fc5\u987b\u5177\u6709\u6807\u51c6\u5934\u90e8\uff0c\u5e76\u6ee1\u8db3 <code class=\"filename\">src/include/utils/expandeddatum.h</code> \u4e2d\u7ed9\u51fa\u7684\u5176\u4ed6 API \u8981\u6c42\u3002\u5904\u7406\u8be5\u6570\u636e\u7c7b\u578b\u7684 C \u7ea7\u51fd\u6570\u53ef\u4ee5\u9009\u62e9\u652f\u6301\u4efb\u4e00\u79cd\u8868\u793a\u3002\u4e0d\u77e5\u9053\u5c55\u5f00\u8868\u793a\u3001\u4f46\u53ea\u662f\u5bf9\u8f93\u5165\u5e94\u7528 <code class=\"function\">PG_DETOAST_DATUM</code> \u7684\u51fd\u6570\uff0c\u4f1a\u81ea\u52a8\u83b7\u5f97\u4f20\u7edf\u7684 varlena \u8868\u793a\uff1b\u56e0\u6b64\uff0c\u5bf9\u5c55\u5f00\u8868\u793a\u7684\u652f\u6301\u53ef\u4ee5\u9010\u6b65\u5f15\u5165\uff0c\u4e00\u6b21\u589e\u52a0\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\u3002</p>\n<p lang=\"zh\">\u6307\u5411\u5c55\u5f00\u503c\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u8fd8\u53ef\u8fdb\u4e00\u6b65\u5206\u4e3a<em class=\"firstterm\">\u53ef\u8bfb\u5199\uff08read-write\uff09</em>\u548c<em class=\"firstterm\">\u53ea\u8bfb\uff08read-only\uff09</em>\u6307\u9488\u3002\u65e0\u8bba\u54ea\u79cd\u65b9\u5f0f\uff0c\u88ab\u6307\u5411\u7684\u8868\u793a\u662f\u76f8\u540c\u7684\uff1b\u4f46\u6536\u5230\u53ef\u8bfb\u5199\u6307\u9488\u7684\u51fd\u6570\u53ef\u4ee5\u539f\u5730\u4fee\u6539\u6240\u5f15\u7528\u7684\u503c\uff0c\u800c\u6536\u5230\u53ea\u8bfb\u6307\u9488\u7684\u51fd\u6570\u5219\u4e0d\u53ef\u4ee5\uff0c\u5982\u679c\u5b83\u60f3\u751f\u6210\u8be5\u503c\u7684\u4fee\u6539\u7248\u672c\uff0c\u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u526f\u672c\u3002\u8fd9\u79cd\u533a\u5206\u4ee5\u53ca\u4e00\u4e9b\u76f8\u5173\u7ea6\u5b9a\uff0c\u4f7f\u5f97\u5728\u67e5\u8be2\u6267\u884c\u671f\u95f4\u53ef\u4ee5\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u5c55\u5f00\u503c\u590d\u5236\u3002</p>\n<p lang=\"zh\">\u5bf9\u4e8e\u6240\u6709\u7c7b\u578b\u7684\u5185\u5b58\u4e2d <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c<acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u90fd\u4f1a\u786e\u4fdd\u8fd9\u7c7b\u6307\u9488 datum \u4e0d\u4f1a\u610f\u5916\u5730\u88ab\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u3002\u5185\u5b58\u4e2d\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5728\u5b58\u50a8\u524d\u4f1a\u81ea\u52a8\u5c55\u5f00\u4e3a\u666e\u901a\u7684\u884c\u5185 varlena \u503c\uff0c\u5982\u679c\u8fd9\u6837\u4f1a\u4f7f\u627f\u8f7d\u5b83\u7684\u5143\u7ec4\u8fc7\u5927\uff0c\u8fd8\u53ef\u80fd\u8fdb\u4e00\u6b65\u8f6c\u6362\u4e3a\u78c1\u76d8\u4e0a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u3002</p>\n</div>\n</div>", "manual_path": "/docs/11/storage-toast.html", "localization": {"status": "complete", "sources": [{"url": "/docs/11/storage-toast.html", "method": "same-major semantic node", "sha256": "4da5634b393b36ea734b6cc1b4f8cdc98fe8038e2c40f4d825ed62ec08827b38", "language": "zh", "matched_nodes": ["#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[2]", "#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[3]", "#STORAGE-TOAST/div[10]/p[3]", "#STORAGE-TOAST/div[10]/p[7]", "#STORAGE-TOAST/div[11]/p[1]", "#STORAGE-TOAST/div[11]/p[2]", "#STORAGE-TOAST/div[11]/p[3]", "#STORAGE-TOAST/div[11]/p[4]", "#STORAGE-TOAST/div[11]/p[5]", "#STORAGE-TOAST/div[1]/dl[0]/dt[0]", "#STORAGE-TOAST/div[1]/dl[0]/dt[1]", "#STORAGE-TOAST/p[4]", "#STORAGE-TOAST/p[5]", "#STORAGE-TOAST/p[8]", "#STORAGE-TOAST/p[9]"]}], "language": "zh", "original_text": {"/versions/11/description/0": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/versions/11/facts/0/label": "Definition scope", "/versions/11/facts/0/value": "Same-version core physical storage documentation", "/versions/11/related/0/label": "Storage Parameters"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "d06f562836ea6c4d2d366664fd70a65f952036d00a9c54be7c7e29ee1d177068"}, "comparison_data": {"layouts": []}, "comparison_hash": "27341929154bfb55531f03501322b65af719c5561f3c4ddc9528a14aa4df69b5", "manual_language": "zh"}, "12": {"facts": [{"label": "\u5b9a\u4e49\u8303\u56f4", "value": "\u540c\u7248\u672c\u6838\u5fc3\u7269\u7406\u5b58\u50a8\u6587\u6863"}], "tables": [], "related": [{"url": "/wiki/tableam/?v=12", "label": "Table AM"}, {"url": "/wiki/relopts/?v=12", "label": "\u5b58\u50a8\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v12.22/postgresql-12.22.tar.bz2", "label": "12.22", "major": "12", "channel": "stable", "revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "sources": [{"url": "https://pg.center/docs/12/storage-toast.html", "path": "storage-toast.html", "label": "PostgreSQL 12 English manual", "sha256": "115a66459b1571221e820445a07bec3199f7141403c0a7a298d38e4fd1fe455d", "language": "en", "original_url": "/docs/12/storage-toast.html"}], "sections": [], "signature": "", "description": ["\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002"], "manual_html": "<div class=\"sect1\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h2 class=\"title\">69.2.\u00a0TOAST</h2>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08<acronym class=\"acronym\">TOAST</acronym>, The Oversized-Attribute Storage Technique\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"productname\">PostgreSQL</span> \u4f7f\u7528\u56fa\u5b9a\u9875\u9762\u5927\u5c0f\uff08\u901a\u5e38\u4e3a 8 kB\uff09\uff0c\u5e76\u4e14\u4e0d\u5141\u8bb8\u5143\u7ec4\u8de8\u8d8a\u591a\u4e2a\u9875\u9762\u3002\u56e0\u6b64\uff0c\u65e0\u6cd5\u76f4\u63a5\u5b58\u50a8\u975e\u5e38\u5927\u7684\u5b57\u6bb5\u503c\u3002\u4e3a\u514b\u670d\u8fd9\u4e00\u9650\u5236\uff0c\u5927\u5b57\u6bb5\u503c\u4f1a\u88ab\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u62c6\u5206\u6210\u591a\u4e2a\u7269\u7406\u884c\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u5bf9\u7528\u6237\u662f\u900f\u660e\u7684\uff0c\u800c\u4e14\u5bf9\u5927\u90e8\u5206\u540e\u7aef\u4ee3\u7801\u7684\u5f71\u54cd\u5f88\u5c0f\u3002\u8fd9\u9879\u6280\u672f\u88ab\u4eb2\u5207\u5730\u79f0\u4e3a <acronym class=\"acronym\">TOAST</acronym>\uff08\u6216\u8005<span class=\"quote\">\u201c<span class=\"quote\">\u81ea\u5207\u7247\u9762\u5305\u95ee\u4e16\u4ee5\u6765\u6700\u68d2\u7684\u4e1c\u897f</span>\u201d</span>\uff09\u3002<acronym class=\"acronym\">TOAST</acronym> \u57fa\u7840\u8bbe\u65bd\u4e5f\u88ab\u7528\u4e8e\u6539\u8fdb\u5185\u5b58\u4e2d\u5927\u578b\u6570\u636e\u503c\u7684\u5904\u7406\u3002</p>\n<p lang=\"zh\">\u53ea\u6709\u90e8\u5206\u6570\u636e\u7c7b\u578b\u652f\u6301 TOAST\uff1b\u65e0\u9700\u8ba9\u4e0d\u4f1a\u4ea7\u751f\u5927\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u627f\u62c5\u989d\u5916\u5f00\u9500\u3002\u8981\u652f\u6301 TOAST\uff0c\u7c7b\u578b\u5fc5\u987b\u91c7\u7528\u53d8\u957f\uff08varlena\uff09\u8868\u793a\uff0c\u901a\u5e38\u5176\u5b58\u50a8\u503c\u7684\u7b2c\u4e00\u4e2a\u56db\u5b57\u8282\u5b57\u8bb0\u5f55\u603b\u5b57\u8282\u957f\u5ea6\uff0c\u5305\u62ec\u8be5\u957f\u5ea6\u5b57\u672c\u8eab\u3002TOAST \u4e0d\u9650\u5236\u7c7b\u578b\u8868\u793a\u7684\u5176\u4f59\u90e8\u5206\u3002\u7edf\u79f0\u4e3a TOAST \u503c\u7684\u7279\u6b8a\u8868\u793a\u901a\u8fc7\u4fee\u6539\u6216\u91cd\u65b0\u89e3\u91ca\u8fd9\u4e2a\u9996\u90e8\u957f\u5ea6\u5b57\u5de5\u4f5c\u3002\u56e0\u6b64\uff0c\u652f\u6301 TOAST \u7c7b\u578b\u7684 C \u5c42\u51fd\u6570\u5fc5\u987b\u8c28\u614e\u5904\u7406\u53ef\u80fd\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u8f93\u5165\uff1a\u5728\u89e3\u9664 TOAST \u8868\u793a\u524d\uff0c\u8f93\u5165\u53ef\u80fd\u5e76\u4e0d\u7531\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u52a0\u5b9e\u9645\u5185\u5bb9\u7ec4\u6210\u3002\u901a\u5e38\u5e94\u5728\u4efb\u4f55\u5904\u7406\u4e4b\u524d\u8c03\u7528 PG_DETOAST_DATUM\uff0c\u4f46\u67d0\u4e9b\u60c5\u5f62\u53ef\u91c7\u7528\u66f4\u9ad8\u6548\u7684\u65b9\u6cd5\uff0c\u8be6\u60c5\u53c2\u89c1\u7b2c 37.13.1 \u8282\u3002</p>\n<p lang=\"zh\">TOAST \u5360\u7528 varlena \u957f\u5ea6\u5b57\u7684\u4e24\u4e2a\u4f4d\uff1a\u5927\u7aef\u673a\u5668\u4f7f\u7528\u9ad8\u4f4d\uff0c\u5c0f\u7aef\u673a\u5668\u4f7f\u7528\u4f4e\u4f4d\uff0c\u56e0\u6b64\u652f\u6301 TOAST \u7684\u7c7b\u578b\u4e2d\uff0c\u4efb\u4f55\u503c\u7684\u903b\u8f91\u5927\u5c0f\u90fd\u9650\u4e8e 1 GB\uff082^30 - 1 \u5b57\u8282\uff09\u3002\u4e24\u4f4d\u5747\u4e3a\u96f6\u65f6\uff0c\u8be5\u503c\u662f\u666e\u901a\u7684\u672a\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u503c\uff0c\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u672c\u8eab\u5728\u5185\u7684\u603b\u5b57\u8282\u6570\u3002\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u7f6e\u4f4d\u65f6\uff0c\u8be5\u503c\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u800c\u975e\u901a\u5e38\u7684\u56db\u5b57\u8282\u9996\u90e8\uff0c\u8be5\u5b57\u8282\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u8282\u5728\u5185\u7684\u603b\u5927\u5c0f\u3002\u8fd9\u4f7f\u5c0f\u4e8e 127 \u5b57\u8282\u7684\u503c\u80fd\u591f\u7d27\u51d1\u5b58\u50a8\uff0c\u540c\u65f6\u4ecd\u5141\u8bb8\u7c7b\u578b\u5728\u9700\u8981\u65f6\u589e\u957f\u5230 1 GB\u3002\u5355\u5b57\u8282\u9996\u90e8\u7684\u503c\u65e0\u9700\u6309\u7279\u5b9a\u8fb9\u754c\u5bf9\u9f50\uff1b\u56db\u5b57\u8282\u9996\u90e8\u7684\u503c\u5219\u81f3\u5c11\u6309\u56db\u5b57\u8282\u8fb9\u754c\u5bf9\u9f50\u3002\u7701\u7565\u5bf9\u9f50\u586b\u5145\u8fd8\u80fd\u8282\u7701\u7a7a\u95f4\uff0c\u5bf9\u4e8e\u77ed\u503c\u5c24\u5176\u660e\u663e\u3002\u4e00\u4e2a\u7279\u6b8a\u60c5\u51b5\u662f\uff1a\u5982\u679c\u5355\u5b57\u8282\u9996\u90e8\u7684\u5176\u4f59\u4f4d\u5168\u4e3a\u96f6\u2014\u2014\u8fd9\u4e0d\u53ef\u80fd\u662f\u5305\u542b\u81ea\u8eab\u7684\u957f\u5ea6\u2014\u2014\u8be5\u503c\u5c31\u662f\u6307\u5411\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u5177\u4f53\u5f62\u5f0f\u89c1\u4e0b\u6587\u3002\u6307\u9488\u7684\u7c7b\u578b\u548c\u5927\u5c0f\u7531\u6570\u636e\u7b2c\u4e8c\u4e2a\u5b57\u8282\u4e2d\u7684\u4ee3\u7801\u51b3\u5b9a\u3002\u6700\u540e\uff0c\u5982\u679c\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u6e05\u96f6\uff0c\u800c\u76f8\u90bb\u4f4d\u7f6e\u4f4d\uff0c\u6570\u636e\u5185\u5bb9\u5c31\u5df2\u538b\u7f29\uff0c\u4f7f\u7528\u524d\u5fc5\u987b\u89e3\u538b\u3002\u6b64\u65f6\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u538b\u7f29\u540e\u6570\u636e\u7684\u603b\u5927\u5c0f\uff0c\u800c\u975e\u539f\u59cb\u6570\u636e\u5927\u5c0f\u3002\u884c\u5916\u6570\u636e\u4e5f\u53ef\u80fd\u538b\u7f29\uff0c\u4f46 varlena \u9996\u90e8\u4e0d\u8868\u660e\u8fd9\u4e00\u70b9\uff0c\u9700\u67e5\u770b TOAST \u6307\u9488\u7684\u5185\u5bb9\u3002</p>\n<p lang=\"zh\">\u5982\u524d\u6240\u8ff0\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u6709\u591a\u79cd\u7c7b\u578b\u3002\u6700\u65e9\u3001\u4e5f\u6700\u5e38\u89c1\u7684\u4e00\u79cd\uff0c\u662f\u6307\u5411\u5b58\u50a8\u5728 <em class=\"firstterm\"><acronym class=\"acronym\">TOAST</acronym> \u8868</em>\u4e2d\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u8be5\u8868\u4e0e\u5305\u542b\u8be5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u672c\u8eab\u7684\u8868\u76f8\u5173\u8054\uff0c\u4f46\u4e0e\u4e4b\u5206\u79bb\u5b58\u50a8\u3002\u5f53\u4e00\u4e2a\u8981\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u7684\u5143\u7ec4\u8fc7\u5927\u800c\u65e0\u6cd5\u539f\u6837\u5b58\u50a8\u65f6\uff0c\u8fd9\u4e9b<em class=\"firstterm\">\u78c1\u76d8\u4e0a\u7684</em>\u6307\u9488 datum \u4f1a\u7531 <acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\uff08\u4f4d\u4e8e <code class=\"filename\">access/heap/tuptoaster.c</code>\uff09\u521b\u5efa\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/12/storage-toast.html#STORAGE-TOAST-ONDISK\" title=\"69.2.1.\u00a0\u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a069.2.1\u00a0\u8282</a>\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u53ef\u4ee5\u5305\u542b\u6307\u5411\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\u3002\u8fd9\u7c7b datum \u5fc5\u7136\u662f\u77ed\u547d\u7684\uff0c\u6c38\u8fdc\u4e0d\u4f1a\u51fa\u73b0\u5728\u78c1\u76d8\u4e0a\uff0c\u4f46\u5b83\u4eec\u5bf9\u4e8e\u907f\u514d\u5927\u578b\u6570\u636e\u503c\u7684\u590d\u5236\u548c\u5197\u4f59\u5904\u7406\u975e\u5e38\u6709\u7528\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/12/storage-toast.html#STORAGE-TOAST-INMEMORY\" title=\"69.2.2.\u00a0\u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a069.2.2\u00a0\u8282</a>\u3002</p>\n<p lang=\"zh\">\u65e0\u8bba\u662f\u884c\u5185\u538b\u7f29\u6570\u636e\u8fd8\u662f\u884c\u5916\u538b\u7f29\u6570\u636e\uff0c\u5176\u6240\u7528\u7684\u538b\u7f29\u6280\u672f\u90fd\u662f LZ \u538b\u7f29\u6280\u672f\u65cf\u4e2d\u4e00\u79cd\u76f8\u5f53\u7b80\u5355\u4e14\u975e\u5e38\u5feb\u901f\u7684\u65b9\u6cd5\u3002\u8be6\u60c5\u89c1 <code class=\"filename\">src/common/pg_lzcompress.c</code>\u3002</p>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/12/storage-toast.html#STORAGE-TOAST-ONDISK\">69.2.1. \u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u5982\u679c\u8868\u4e2d\u6709\u5217\u652f\u6301 TOAST\uff0c\u8868\u5c31\u4f1a\u5173\u8054\u4e00\u4e2a TOAST \u8868\uff0c\u5176 OID \u5b58\u50a8\u5728 pg_class.reltoastrelid \u4e2d\u3002\u78c1\u76d8\u4e0a\u7684 TOAST \u503c\u5b58\u653e\u5728\u8be5 TOAST \u8868\u4e2d\uff0c\u8be6\u60c5\u89c1\u4e0b\u6587\u3002</p>\n<p lang=\"zh\">\u884c\u5916\u503c\u5728\u538b\u7f29\u540e\uff08\u5982\u679c\u4f7f\u7528\u538b\u7f29\uff09\u62c6\u6210\u6700\u591a TOAST_MAX_CHUNK_SIZE \u5b57\u8282\u7684\u5757\u3002\u9ed8\u8ba4\u9009\u62e9\u6b64\u503c\uff0c\u4f7f\u4e00\u4e2a\u9875\u9762\u80fd\u88c5\u4e0b\u56db\u4e2a\u5757\u884c\uff0c\u56e0\u6b64\u7ea6\u4e3a 2000 \u5b57\u8282\u3002\u6bcf\u5757\u4f5c\u4e3a\u72ec\u7acb\u7684\u4e00\u884c\u5b58\u5165\u6240\u5c5e\u8868\u7684 TOAST \u8868\u3002\u6bcf\u4e2a TOAST \u8868\u90fd\u6709 chunk_id\uff08\u6807\u8bc6\u7279\u5b9a TOAST \u503c\u7684 OID\uff09\u3001chunk_seq\uff08\u8be5\u5757\u5728\u503c\u4e2d\u7684\u5e8f\u53f7\uff09\u548c chunk_data\uff08\u5b9e\u9645\u5757\u6570\u636e\uff09\u4e09\u5217\u3002chunk_id \u4e0e chunk_seq \u4e0a\u7684\u552f\u4e00\u7d22\u5f15\u7528\u4e8e\u5feb\u901f\u68c0\u7d22\u503c\u3002\u56e0\u6b64\uff0c\u8868\u793a\u78c1\u76d8\u884c\u5916 TOAST \u503c\u7684\u6307\u9488\u9700\u8981\u5b58\u50a8 TOAST \u8868\u7684 OID\uff0c\u4ee5\u53ca\u7279\u5b9a\u503c\u7684 OID\uff0c\u5373 chunk_id\u3002\u4e3a\u65b9\u4fbf\u4f7f\u7528\uff0c\u6307\u9488\u8fd8\u5b58\u50a8\u903b\u8f91\u6570\u636e\u5927\u5c0f\uff08\u539f\u59cb\u672a\u538b\u7f29\u957f\u5ea6\uff09\u548c\u7269\u7406\u5b58\u50a8\u5927\u5c0f\uff08\u4f7f\u7528\u538b\u7f29\u65f6\u4e0e\u539f\u59cb\u5927\u5c0f\u4e0d\u540c\uff09\u3002\u7b97\u4e0a varlena \u9996\u90e8\u5b57\u8282\uff0c\u78c1\u76d8 TOAST \u6307\u9488\u7684\u603b\u5927\u5c0f\u4e3a 18 \u5b57\u8282\uff0c\u4e0e\u5176\u8868\u793a\u7684\u503c\u7684\u5b9e\u9645\u5927\u5c0f\u65e0\u5173\u3002</p>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u53ea\u6709\u5728\u8981\u5b58\u5165\u8868\u4e2d\u7684\u884c\u503c\u5bbd\u4e8e <code class=\"symbol\">TOAST_TUPLE_THRESHOLD</code> \u5b57\u8282\uff08\u901a\u5e38\u4e3a 2 kB\uff09\u65f6\u624d\u4f1a\u88ab\u89e6\u53d1\u3002<acronym class=\"acronym\">TOAST</acronym> \u4ee3\u7801\u4f1a\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u628a\u5b57\u6bb5\u503c\u79fb\u5230\u884c\u5916\uff0c\u76f4\u5230\u8be5\u884c\u503c\u77ed\u4e8e <code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u5b57\u8282\uff08\u901a\u5e38\u4e5f\u4e3a 2 kB\uff0c\u4f46\u53ef\u8c03\u6574\uff09\uff0c\u6216\u8005\u5df2\u7ecf\u65e0\u6cd5\u518d\u83b7\u5f97\u66f4\u591a\u6536\u76ca\u3002\u5728 UPDATE \u64cd\u4f5c\u4e2d\uff0c\u672a\u66f4\u6539\u5b57\u6bb5\u7684\u503c\u901a\u5e38\u4f1a\u539f\u6837\u4fdd\u7559\uff1b\u56e0\u6b64\uff0c\u5982\u679c\u66f4\u65b0\u4e00\u884c\u65f6\u5176\u884c\u5916\u503c\u90fd\u6ca1\u6709\u53d8\u5316\uff0c\u4fbf\u4e0d\u4f1a\u4ea7\u751f <acronym class=\"acronym\">TOAST</acronym> \u6210\u672c\u3002</p>\n<p lang=\"zh\">TOAST \u7ba1\u7406\u4ee3\u7801\u652f\u6301\u56db\u79cd\u5c06\u53ef TOAST \u5217\u5b58\u50a8\u5230\u78c1\u76d8\u7684\u7b56\u7565\uff1a</p>\n<div class=\"itemizedlist\">\n<ul class=\"itemizedlist\">\n<li class=\"listitem\" lang=\"zh\">PLAIN \u7981\u6b62\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\u3002\u5bf9\u4e8e\u4e0d\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\uff0c\u8fd9\u662f\u552f\u4e00\u53ef\u7528\u7684\u5217\u5b58\u50a8\u7b56\u7565\u3002</li>\n<li class=\"listitem\" lang=\"zh\">EXTENDED \u540c\u65f6\u5141\u8bb8\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u662f\u5927\u591a\u6570\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u7684\u9ed8\u8ba4\u7b56\u7565\u3002\u5148\u5c1d\u8bd5\u538b\u7f29\uff1b\u5982\u679c\u884c\u4ecd\u7136\u8fc7\u5927\uff0c\u518d\u4f7f\u7528\u884c\u5916\u5b58\u50a8\u3002</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">EXTERNAL</code> \u5141\u8bb8\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u4e0d\u5141\u8bb8\u538b\u7f29\u3002\u4f7f\u7528 <code class=\"literal\">EXTERNAL</code> \u4f1a\u8ba9\u5bbd <code class=\"type\">text</code> \u548c <code class=\"type\">bytea</code> \u5217\u4e0a\u7684\u5b50\u4e32\u64cd\u4f5c\u66f4\u5feb\uff08\u4ee3\u4ef7\u662f\u5360\u7528\u66f4\u591a\u5b58\u50a8\u7a7a\u95f4\uff09\uff0c\u56e0\u4e3a\u5728\u503c\u672a\u538b\u7f29\u65f6\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u7ecf\u8fc7\u4f18\u5316\uff0c\u53ea\u9700\u63d0\u53d6\u884c\u5916\u503c\u4e2d\u6240\u9700\u7684\u90e8\u5206\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">MAIN</code> \u5141\u8bb8\u538b\u7f29\uff0c\u4f46\u4e0d\u5141\u8bb8\u884c\u5916\u5b58\u50a8\u3002\uff08\u5b9e\u9645\u4e0a\uff0c\u5bf9\u4e8e\u8fd9\u7c7b\u5217\uff0c\u4ecd\u7136\u53ef\u80fd\u8fdb\u884c\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u53ea\u6709\u5728\u522b\u65e0\u4ed6\u6cd5\u3001\u5fc5\u987b\u8fd9\u6837\u505a\u624d\u80fd\u8ba9\u884c\u8db3\u591f\u5c0f\u4ee5\u653e\u5165\u9875\u9762\u65f6\uff0c\u624d\u4f1a\u628a\u5b83\u4f5c\u4e3a\u6700\u540e\u624b\u6bb5\u3002\uff09</p>\n</li>\n</ul>\n</div>\n<p lang=\"zh\">\u6bcf\u79cd\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u90fd\u4e3a\u5176\u5217\u6307\u5b9a\u9ed8\u8ba4\u7b56\u7565\uff0c\u4f46\u5177\u4f53\u8868\u5217\u7684\u7b56\u7565\u53ef\u901a\u8fc7 ALTER TABLE ... SET STORAGE \u4fee\u6539\u3002</p>\n<p lang=\"zh\"><code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u4e5f\u53ef\u4ee5\u9488\u5bf9\u6bcf\u4e2a\u8868\u901a\u8fc7 <a class=\"link\" href=\"/docs/12/sql-altertable.html\" title=\"ALTER TABLE\"><code class=\"command\">ALTER TABLE ... SET (toast_tuple_target = N)</code></a> \u8fdb\u884c\u8c03\u6574\u3002</p>\n<p lang=\"zh\">\u4e0e\u8ba9\u884c\u503c\u8de8\u9875\u7b49\u66f4\u76f4\u63a5\u7684\u505a\u6cd5\u76f8\u6bd4\uff0c\u6b64\u65b9\u6848\u6709\u591a\u9879\u4f18\u52bf\u3002\u5047\u8bbe\u67e5\u8be2\u901a\u5e38\u6309\u8f83\u5c0f\u952e\u503c\u8fdb\u884c\u6bd4\u8f83\u7b5b\u9009\uff0c\u6267\u884c\u5668\u7684\u5927\u90e8\u5206\u5de5\u4f5c\u5c31\u53ef\u53ea\u4f7f\u7528\u4e3b\u884c\u6570\u636e\u3002TOAST \u5c5e\u6027\u7684\u5927\u503c\u4ec5\u5728\u5c06\u7ed3\u679c\u53d1\u9001\u7ed9\u5ba2\u6237\u7aef\u65f6\u624d\u8bfb\u53d6\uff0c\u800c\u4e14\u524d\u63d0\u662f\u67e5\u8be2\u786e\u5b9e\u9009\u62e9\u4e86\u8fd9\u4e9b\u503c\u3002\u56e0\u800c\u4e3b\u8868\u663e\u8457\u7f29\u5c0f\uff0c\u5171\u4eab\u7f13\u51b2\u533a\u53ef\u5bb9\u7eb3\u66f4\u591a\u884c\uff1b\u6392\u5e8f\u6570\u636e\u96c6\u4e5f\u4f1a\u7f29\u5c0f\uff0c\u66f4\u5bb9\u6613\u5b8c\u5168\u5728\u5185\u5b58\u4e2d\u6392\u5e8f\u3002\u539f\u6587\u4e2d\u7684\u4e00\u4e2a\u5c0f\u6d4b\u8bd5\u8868\u660e\uff1a\u5305\u542b\u5178\u578b HTML \u9875\u9762\u53ca URL \u7684\u8868\u8fde\u540c TOAST \u8868\uff0c\u5360\u7528\u7ea6\u4e3a\u539f\u59cb\u6570\u636e\u7684\u4e00\u534a\uff1b\u4e3b\u8868\u53ea\u5360\u603b\u6570\u636e\u7ea6 10%\uff0c\u5305\u62ec URL \u548c\u5c11\u91cf\u5c0f HTML \u9875\u9762\u3002\u4e0e\u5c06\u6240\u6709 HTML \u9875\u9762\u622a\u77ed\u81f3 7 kB \u4ee5\u4fbf\u88c5\u5165\u884c\u5185\u3001\u672a\u4f7f\u7528 TOAST \u7684\u5bf9\u7167\u8868\u76f8\u6bd4\uff0c\u8fd0\u884c\u65f6\u95f4\u6ca1\u6709\u5dee\u5f02\u3002</p>\n</div>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/12/storage-toast.html#STORAGE-TOAST-INMEMORY\">69.2.2. \u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ef\u4ee5\u6307\u5411\u4e0d\u5728\u78c1\u76d8\u4e0a\u3001\u800c\u4f4d\u4e8e\u5f53\u524d\u670d\u52a1\u5668\u8fdb\u7a0b\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u6570\u636e\u3002\u8fd9\u7c7b\u6307\u9488\u663e\u7136\u4e0d\u53ef\u80fd\u957f\u671f\u5b58\u5728\uff0c\u4f46\u4ecd\u7136\u5f88\u6709\u7528\u3002\u76ee\u524d\u6709\u4e24\u4e2a\u5b50\u60c5\u51b5\uff1a\u6307\u5411<em class=\"firstterm\">\u95f4\u63a5</em>\u6570\u636e\u7684\u6307\u9488\uff0c\u4ee5\u53ca\u6307\u5411<em class=\"firstterm\">\u5c55\u5f00</em>\u6570\u636e\u7684\u6307\u9488\u3002</p>\n<p lang=\"zh\">\u95f4\u63a5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ea\u662f\u7b80\u5355\u5730\u6307\u5411\u67d0\u5904\u5185\u5b58\u4e2d\u5b58\u653e\u7684\u4e00\u4e2a\u975e\u95f4\u63a5 varlena \u503c\u3002\u8fd9\u4e00\u60c5\u51b5\u6700\u521d\u53ea\u662f\u4f5c\u4e3a\u6982\u5ff5\u9a8c\u8bc1\u800c\u521b\u5efa\uff0c\u4f46\u76ee\u524d\u5728\u903b\u8f91\u89e3\u7801\u671f\u95f4\u4f1a\u7528\u5230\u5b83\uff0c\u4ee5\u907f\u514d\u53ef\u80fd\u4e0d\u5f97\u4e0d\u521b\u5efa\u8d85\u8fc7 1 GB \u7684\u7269\u7406\u5143\u7ec4\uff08\u628a\u6240\u6709\u884c\u5916\u5b57\u6bb5\u503c\u90fd\u62c9\u5165\u5143\u7ec4\u5c31\u53ef\u80fd\u5bfc\u81f4\u8fd9\u79cd\u60c5\u51b5\uff09\u3002\u8fd9\u79cd\u673a\u5236\u7684\u7528\u9014\u6709\u9650\uff0c\u56e0\u4e3a\u521b\u5efa\u8be5\u6307\u9488 datum \u7684\u4e00\u65b9\u5fc5\u987b\u5b8c\u5168\u8d1f\u8d23\u786e\u4fdd\u88ab\u5f15\u7528\u6570\u636e\u5728\u6307\u9488\u53ef\u80fd\u5b58\u5728\u7684\u6574\u4e2a\u671f\u95f4\u90fd\u4fdd\u6301\u6709\u6548\uff0c\u800c\u4e14\u7cfb\u7edf\u5e76\u6ca1\u6709\u4efb\u4f55\u57fa\u7840\u8bbe\u65bd\u6765\u5e2e\u52a9\u505a\u5230\u8fd9\u4e00\u70b9\u3002</p>\n<p lang=\"zh\">\u5c55\u5f00\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5bf9\u90a3\u4e9b\u78c1\u76d8\u8868\u793a\u5f62\u5f0f\u5e76\u4e0d\u7279\u522b\u9002\u5408\u8ba1\u7b97\u7528\u9014\u7684\u590d\u6742\u6570\u636e\u7c7b\u578b\u5f88\u6709\u7528\u3002\u4ee5\u6807\u51c6\u7684 <span class=\"productname\">PostgreSQL</span> \u6570\u7ec4 varlena \u8868\u793a\u4e3a\u4f8b\uff0c\u5b83\u5305\u542b\u7ef4\u5ea6\u4fe1\u606f\u3001\u4e00\u4e2a\u7a7a\u503c\u4f4d\u56fe\uff08\u5982\u679c\u5b58\u5728\u7a7a\u503c\u5143\u7d20\uff09\uff0c\u7136\u540e\u4f9d\u6b21\u4fdd\u5b58\u6240\u6709\u5143\u7d20\u7684\u503c\u3002\u5f53\u5143\u7d20\u7c7b\u578b\u672c\u8eab\u4e5f\u662f\u53d8\u957f\u65f6\uff0c\u5b9a\u4f4d\u7b2c <em class=\"replaceable\"><code>N</code></em> \u4e2a\u5143\u7d20\u7684\u552f\u4e00\u529e\u6cd5\u5c31\u662f\u626b\u63cf\u5b83\u524d\u9762\u7684\u6240\u6709\u5143\u7d20\u3002\u8fd9\u79cd\u8868\u793a\u5f62\u5f0f\u56e0\u5176\u7d27\u51d1\u6027\u800c\u9002\u5408\u78c1\u76d8\u5b58\u50a8\uff0c\u4f46\u5bf9\u4e8e\u6570\u7ec4\u8ba1\u7b97\u800c\u8a00\uff0c\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u5c55\u5f00</span>\u201d</span>\u6216<span class=\"quote\">\u201c<span class=\"quote\">\u89e3\u6784</span>\u201d</span>\u7684\u8868\u793a\u4f1a\u66f4\u597d\uff0c\u56e0\u4e3a\u5176\u4e2d\u6240\u6709\u5143\u7d20\u7684\u8d77\u59cb\u4f4d\u7f6e\u90fd\u5df2\u8bc6\u522b\u51fa\u6765\u3002<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u673a\u5236\u901a\u8fc7\u5141\u8bb8\u6309\u5f15\u7528\u4f20\u9012\u7684 Datum \u6307\u5411\u6807\u51c6 varlena \u503c\uff08\u5373\u78c1\u76d8\u8868\u793a\uff09\u6216\u8005\u6307\u5411\u5185\u5b58\u4e2d\u67d0\u5904\u5c55\u5f00\u8868\u793a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c\u6765\u6ee1\u8db3\u8fd9\u4e00\u9700\u8981\u3002\u8fd9\u79cd\u5c55\u5f00\u8868\u793a\u7684\u5177\u4f53\u7ec6\u8282\u7531\u6570\u636e\u7c7b\u578b\u81ea\u884c\u51b3\u5b9a\uff0c\u4e0d\u8fc7\u5b83\u5fc5\u987b\u5177\u6709\u6807\u51c6\u5934\u90e8\uff0c\u5e76\u6ee1\u8db3 <code class=\"filename\">src/include/utils/expandeddatum.h</code> \u4e2d\u7ed9\u51fa\u7684\u5176\u4ed6 API \u8981\u6c42\u3002\u5904\u7406\u8be5\u6570\u636e\u7c7b\u578b\u7684 C \u7ea7\u51fd\u6570\u53ef\u4ee5\u9009\u62e9\u652f\u6301\u4efb\u4e00\u79cd\u8868\u793a\u3002\u4e0d\u77e5\u9053\u5c55\u5f00\u8868\u793a\u3001\u4f46\u53ea\u662f\u5bf9\u8f93\u5165\u5e94\u7528 <code class=\"function\">PG_DETOAST_DATUM</code> \u7684\u51fd\u6570\uff0c\u4f1a\u81ea\u52a8\u83b7\u5f97\u4f20\u7edf\u7684 varlena \u8868\u793a\uff1b\u56e0\u6b64\uff0c\u5bf9\u5c55\u5f00\u8868\u793a\u7684\u652f\u6301\u53ef\u4ee5\u9010\u6b65\u5f15\u5165\uff0c\u4e00\u6b21\u589e\u52a0\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\u3002</p>\n<p lang=\"zh\">\u6307\u5411\u5c55\u5f00\u503c\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u8fd8\u53ef\u8fdb\u4e00\u6b65\u5206\u4e3a<em class=\"firstterm\">\u53ef\u8bfb\u5199\uff08read-write\uff09</em>\u548c<em class=\"firstterm\">\u53ea\u8bfb\uff08read-only\uff09</em>\u6307\u9488\u3002\u65e0\u8bba\u54ea\u79cd\u65b9\u5f0f\uff0c\u88ab\u6307\u5411\u7684\u8868\u793a\u662f\u76f8\u540c\u7684\uff1b\u4f46\u6536\u5230\u53ef\u8bfb\u5199\u6307\u9488\u7684\u51fd\u6570\u53ef\u4ee5\u539f\u5730\u4fee\u6539\u6240\u5f15\u7528\u7684\u503c\uff0c\u800c\u6536\u5230\u53ea\u8bfb\u6307\u9488\u7684\u51fd\u6570\u5219\u4e0d\u53ef\u4ee5\uff0c\u5982\u679c\u5b83\u60f3\u751f\u6210\u8be5\u503c\u7684\u4fee\u6539\u7248\u672c\uff0c\u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u526f\u672c\u3002\u8fd9\u79cd\u533a\u5206\u4ee5\u53ca\u4e00\u4e9b\u76f8\u5173\u7ea6\u5b9a\uff0c\u4f7f\u5f97\u5728\u67e5\u8be2\u6267\u884c\u671f\u95f4\u53ef\u4ee5\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u5c55\u5f00\u503c\u590d\u5236\u3002</p>\n<p lang=\"zh\">\u5bf9\u4e8e\u6240\u6709\u7c7b\u578b\u7684\u5185\u5b58\u4e2d <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c<acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u90fd\u4f1a\u786e\u4fdd\u8fd9\u7c7b\u6307\u9488 datum \u4e0d\u4f1a\u610f\u5916\u5730\u88ab\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u3002\u5185\u5b58\u4e2d\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5728\u5b58\u50a8\u524d\u4f1a\u81ea\u52a8\u5c55\u5f00\u4e3a\u666e\u901a\u7684\u884c\u5185 varlena \u503c\uff0c\u5982\u679c\u8fd9\u6837\u4f1a\u4f7f\u627f\u8f7d\u5b83\u7684\u5143\u7ec4\u8fc7\u5927\uff0c\u8fd8\u53ef\u80fd\u8fdb\u4e00\u6b65\u8f6c\u6362\u4e3a\u78c1\u76d8\u4e0a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u3002</p>\n</div>\n</div>", "manual_path": "/docs/12/storage-toast.html", "localization": {"status": "complete", "sources": [{"url": "/docs/12/storage-toast.html", "method": "same-major semantic node", "sha256": "c480ede417778725fac61614a777fc01aed235b4da650c34bb56e8c29fc9116b", "language": "zh", "matched_nodes": ["#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[2]", "#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[3]", "#STORAGE-TOAST/div[10]/p[3]", "#STORAGE-TOAST/div[10]/p[7]", "#STORAGE-TOAST/div[11]/p[1]", "#STORAGE-TOAST/div[11]/p[2]", "#STORAGE-TOAST/div[11]/p[3]", "#STORAGE-TOAST/div[11]/p[4]", "#STORAGE-TOAST/div[11]/p[5]", "#STORAGE-TOAST/div[1]/dl[0]/dt[0]", "#STORAGE-TOAST/div[1]/dl[0]/dt[1]", "#STORAGE-TOAST/p[4]", "#STORAGE-TOAST/p[5]", "#STORAGE-TOAST/p[8]", "#STORAGE-TOAST/p[9]"]}], "language": "zh", "original_text": {"/versions/12/description/0": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/versions/12/facts/0/label": "Definition scope", "/versions/12/facts/0/value": "Same-version core physical storage documentation", "/versions/12/related/1/label": "Storage Parameters"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "876408ef1883dfc8d025c73351092e2587d7ee967e2a9e1633fe0ea4ba12b75d"}, "comparison_data": {"layouts": []}, "comparison_hash": "27341929154bfb55531f03501322b65af719c5561f3c4ddc9528a14aa4df69b5", "manual_language": "zh"}, "13": {"facts": [{"label": "\u5b9a\u4e49\u8303\u56f4", "value": "\u540c\u7248\u672c\u6838\u5fc3\u7269\u7406\u5b58\u50a8\u6587\u6863"}], "tables": [], "related": [{"url": "/wiki/tableam/?v=13", "label": "Table AM"}, {"url": "/wiki/relopts/?v=13", "label": "\u5b58\u50a8\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v13.23/postgresql-13.23.tar.bz2", "label": "13.23", "major": "13", "channel": "stable", "revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "sources": [{"url": "https://pg.center/docs/13/storage-toast.html", "path": "storage-toast.html", "label": "PostgreSQL 13 English manual", "sha256": "391f18eff17f4affd686e6be8d5f6a502d296dbbc4443e213370458b45efce96", "language": "en", "original_url": "/docs/13/storage-toast.html"}], "sections": [], "signature": "", "description": ["\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002"], "manual_html": "<div class=\"sect1\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h2 class=\"title\">69.2.\u00a0TOAST</h2>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08<acronym class=\"acronym\">TOAST</acronym>, The Oversized-Attribute Storage Technique\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"productname\">PostgreSQL</span> \u4f7f\u7528\u56fa\u5b9a\u9875\u9762\u5927\u5c0f\uff08\u901a\u5e38\u4e3a 8 kB\uff09\uff0c\u5e76\u4e14\u4e0d\u5141\u8bb8\u5143\u7ec4\u8de8\u8d8a\u591a\u4e2a\u9875\u9762\u3002\u56e0\u6b64\uff0c\u65e0\u6cd5\u76f4\u63a5\u5b58\u50a8\u975e\u5e38\u5927\u7684\u5b57\u6bb5\u503c\u3002\u4e3a\u514b\u670d\u8fd9\u4e00\u9650\u5236\uff0c\u5927\u5b57\u6bb5\u503c\u4f1a\u88ab\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u62c6\u5206\u6210\u591a\u4e2a\u7269\u7406\u884c\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u5bf9\u7528\u6237\u662f\u900f\u660e\u7684\uff0c\u800c\u4e14\u5bf9\u5927\u90e8\u5206\u540e\u7aef\u4ee3\u7801\u7684\u5f71\u54cd\u5f88\u5c0f\u3002\u8fd9\u9879\u6280\u672f\u88ab\u4eb2\u5207\u5730\u79f0\u4e3a <acronym class=\"acronym\">TOAST</acronym>\uff08\u6216\u8005<span class=\"quote\">\u201c<span class=\"quote\">\u81ea\u5207\u7247\u9762\u5305\u95ee\u4e16\u4ee5\u6765\u6700\u68d2\u7684\u4e1c\u897f</span>\u201d</span>\uff09\u3002<acronym class=\"acronym\">TOAST</acronym> \u57fa\u7840\u8bbe\u65bd\u4e5f\u88ab\u7528\u4e8e\u6539\u8fdb\u5185\u5b58\u4e2d\u5927\u578b\u6570\u636e\u503c\u7684\u5904\u7406\u3002</p>\n<p lang=\"zh\">\u53ea\u6709\u90e8\u5206\u6570\u636e\u7c7b\u578b\u652f\u6301 TOAST\uff1b\u65e0\u9700\u8ba9\u4e0d\u4f1a\u4ea7\u751f\u5927\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u627f\u62c5\u989d\u5916\u5f00\u9500\u3002\u8981\u652f\u6301 TOAST\uff0c\u7c7b\u578b\u5fc5\u987b\u91c7\u7528\u53d8\u957f\uff08varlena\uff09\u8868\u793a\uff0c\u901a\u5e38\u5176\u5b58\u50a8\u503c\u7684\u7b2c\u4e00\u4e2a\u56db\u5b57\u8282\u5b57\u8bb0\u5f55\u603b\u5b57\u8282\u957f\u5ea6\uff0c\u5305\u62ec\u8be5\u957f\u5ea6\u5b57\u672c\u8eab\u3002TOAST \u4e0d\u9650\u5236\u7c7b\u578b\u8868\u793a\u7684\u5176\u4f59\u90e8\u5206\u3002\u7edf\u79f0\u4e3a TOAST \u503c\u7684\u7279\u6b8a\u8868\u793a\u901a\u8fc7\u4fee\u6539\u6216\u91cd\u65b0\u89e3\u91ca\u8fd9\u4e2a\u9996\u90e8\u957f\u5ea6\u5b57\u5de5\u4f5c\u3002\u56e0\u6b64\uff0c\u652f\u6301 TOAST \u7c7b\u578b\u7684 C \u5c42\u51fd\u6570\u5fc5\u987b\u8c28\u614e\u5904\u7406\u53ef\u80fd\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u8f93\u5165\uff1a\u5728\u89e3\u9664 TOAST \u8868\u793a\u524d\uff0c\u8f93\u5165\u53ef\u80fd\u5e76\u4e0d\u7531\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u52a0\u5b9e\u9645\u5185\u5bb9\u7ec4\u6210\u3002\u901a\u5e38\u5e94\u5728\u4efb\u4f55\u5904\u7406\u4e4b\u524d\u8c03\u7528 PG_DETOAST_DATUM\uff0c\u4f46\u67d0\u4e9b\u60c5\u5f62\u53ef\u91c7\u7528\u66f4\u9ad8\u6548\u7684\u65b9\u6cd5\uff0c\u8be6\u60c5\u53c2\u89c1\u7b2c 37.13.1 \u8282\u3002</p>\n<p lang=\"zh\">TOAST \u5360\u7528 varlena \u957f\u5ea6\u5b57\u7684\u4e24\u4e2a\u4f4d\uff1a\u5927\u7aef\u673a\u5668\u4f7f\u7528\u9ad8\u4f4d\uff0c\u5c0f\u7aef\u673a\u5668\u4f7f\u7528\u4f4e\u4f4d\uff0c\u56e0\u6b64\u652f\u6301 TOAST \u7684\u7c7b\u578b\u4e2d\uff0c\u4efb\u4f55\u503c\u7684\u903b\u8f91\u5927\u5c0f\u90fd\u9650\u4e8e 1 GB\uff082^30 - 1 \u5b57\u8282\uff09\u3002\u4e24\u4f4d\u5747\u4e3a\u96f6\u65f6\uff0c\u8be5\u503c\u662f\u666e\u901a\u7684\u672a\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u503c\uff0c\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u672c\u8eab\u5728\u5185\u7684\u603b\u5b57\u8282\u6570\u3002\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u7f6e\u4f4d\u65f6\uff0c\u8be5\u503c\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u800c\u975e\u901a\u5e38\u7684\u56db\u5b57\u8282\u9996\u90e8\uff0c\u8be5\u5b57\u8282\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u8282\u5728\u5185\u7684\u603b\u5927\u5c0f\u3002\u8fd9\u4f7f\u5c0f\u4e8e 127 \u5b57\u8282\u7684\u503c\u80fd\u591f\u7d27\u51d1\u5b58\u50a8\uff0c\u540c\u65f6\u4ecd\u5141\u8bb8\u7c7b\u578b\u5728\u9700\u8981\u65f6\u589e\u957f\u5230 1 GB\u3002\u5355\u5b57\u8282\u9996\u90e8\u7684\u503c\u65e0\u9700\u6309\u7279\u5b9a\u8fb9\u754c\u5bf9\u9f50\uff1b\u56db\u5b57\u8282\u9996\u90e8\u7684\u503c\u5219\u81f3\u5c11\u6309\u56db\u5b57\u8282\u8fb9\u754c\u5bf9\u9f50\u3002\u7701\u7565\u5bf9\u9f50\u586b\u5145\u8fd8\u80fd\u8282\u7701\u7a7a\u95f4\uff0c\u5bf9\u4e8e\u77ed\u503c\u5c24\u5176\u660e\u663e\u3002\u4e00\u4e2a\u7279\u6b8a\u60c5\u51b5\u662f\uff1a\u5982\u679c\u5355\u5b57\u8282\u9996\u90e8\u7684\u5176\u4f59\u4f4d\u5168\u4e3a\u96f6\u2014\u2014\u8fd9\u4e0d\u53ef\u80fd\u662f\u5305\u542b\u81ea\u8eab\u7684\u957f\u5ea6\u2014\u2014\u8be5\u503c\u5c31\u662f\u6307\u5411\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u5177\u4f53\u5f62\u5f0f\u89c1\u4e0b\u6587\u3002\u6307\u9488\u7684\u7c7b\u578b\u548c\u5927\u5c0f\u7531\u6570\u636e\u7b2c\u4e8c\u4e2a\u5b57\u8282\u4e2d\u7684\u4ee3\u7801\u51b3\u5b9a\u3002\u6700\u540e\uff0c\u5982\u679c\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u6e05\u96f6\uff0c\u800c\u76f8\u90bb\u4f4d\u7f6e\u4f4d\uff0c\u6570\u636e\u5185\u5bb9\u5c31\u5df2\u538b\u7f29\uff0c\u4f7f\u7528\u524d\u5fc5\u987b\u89e3\u538b\u3002\u6b64\u65f6\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u538b\u7f29\u540e\u6570\u636e\u7684\u603b\u5927\u5c0f\uff0c\u800c\u975e\u539f\u59cb\u6570\u636e\u5927\u5c0f\u3002\u884c\u5916\u6570\u636e\u4e5f\u53ef\u80fd\u538b\u7f29\uff0c\u4f46 varlena \u9996\u90e8\u4e0d\u8868\u660e\u8fd9\u4e00\u70b9\uff0c\u9700\u67e5\u770b TOAST \u6307\u9488\u7684\u5185\u5bb9\u3002</p>\n<p lang=\"zh\">\u5982\u524d\u6240\u8ff0\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u6709\u591a\u79cd\u7c7b\u578b\u3002\u6700\u65e9\u3001\u4e5f\u6700\u5e38\u89c1\u7684\u4e00\u79cd\uff0c\u662f\u6307\u5411\u5b58\u50a8\u5728 <em class=\"firstterm\"><acronym class=\"acronym\">TOAST</acronym> \u8868</em>\u4e2d\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u8be5\u8868\u4e0e\u5305\u542b\u8be5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u672c\u8eab\u7684\u8868\u76f8\u5173\u8054\uff0c\u4f46\u4e0e\u4e4b\u5206\u79bb\u5b58\u50a8\u3002\u5f53\u4e00\u4e2a\u8981\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u7684\u5143\u7ec4\u8fc7\u5927\u800c\u65e0\u6cd5\u539f\u6837\u5b58\u50a8\u65f6\uff0c\u8fd9\u4e9b<em class=\"firstterm\">\u78c1\u76d8\u4e0a\u7684</em>\u6307\u9488 datum \u4f1a\u7531 <acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\uff08\u4f4d\u4e8e <code class=\"filename\">access/common/toast_internals.c</code>\uff09\u521b\u5efa\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/13/storage-toast.html#STORAGE-TOAST-ONDISK\" title=\"69.2.1.\u00a0\u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a069.2.1\u00a0\u8282</a>\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u53ef\u4ee5\u5305\u542b\u6307\u5411\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\u3002\u8fd9\u7c7b datum \u5fc5\u7136\u662f\u77ed\u547d\u7684\uff0c\u6c38\u8fdc\u4e0d\u4f1a\u51fa\u73b0\u5728\u78c1\u76d8\u4e0a\uff0c\u4f46\u5b83\u4eec\u5bf9\u4e8e\u907f\u514d\u5927\u578b\u6570\u636e\u503c\u7684\u590d\u5236\u548c\u5197\u4f59\u5904\u7406\u975e\u5e38\u6709\u7528\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/13/storage-toast.html#STORAGE-TOAST-INMEMORY\" title=\"69.2.2.\u00a0\u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a069.2.2\u00a0\u8282</a>\u3002</p>\n<p lang=\"zh\">\u65e0\u8bba\u662f\u884c\u5185\u538b\u7f29\u6570\u636e\u8fd8\u662f\u884c\u5916\u538b\u7f29\u6570\u636e\uff0c\u5176\u6240\u7528\u7684\u538b\u7f29\u6280\u672f\u90fd\u662f LZ \u538b\u7f29\u6280\u672f\u65cf\u4e2d\u4e00\u79cd\u76f8\u5f53\u7b80\u5355\u4e14\u975e\u5e38\u5feb\u901f\u7684\u65b9\u6cd5\u3002\u8be6\u60c5\u89c1 <code class=\"filename\">src/common/pg_lzcompress.c</code>\u3002</p>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/13/storage-toast.html#STORAGE-TOAST-ONDISK\">69.2.1. \u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u5982\u679c\u8868\u4e2d\u6709\u5217\u652f\u6301 TOAST\uff0c\u8868\u5c31\u4f1a\u5173\u8054\u4e00\u4e2a TOAST \u8868\uff0c\u5176 OID \u5b58\u50a8\u5728 pg_class.reltoastrelid \u4e2d\u3002\u78c1\u76d8\u4e0a\u7684 TOAST \u503c\u5b58\u653e\u5728\u8be5 TOAST \u8868\u4e2d\uff0c\u8be6\u60c5\u89c1\u4e0b\u6587\u3002</p>\n<p lang=\"zh\">\u884c\u5916\u503c\u5728\u538b\u7f29\u540e\uff08\u5982\u679c\u4f7f\u7528\u538b\u7f29\uff09\u62c6\u6210\u6700\u591a TOAST_MAX_CHUNK_SIZE \u5b57\u8282\u7684\u5757\u3002\u9ed8\u8ba4\u9009\u62e9\u6b64\u503c\uff0c\u4f7f\u4e00\u4e2a\u9875\u9762\u80fd\u88c5\u4e0b\u56db\u4e2a\u5757\u884c\uff0c\u56e0\u6b64\u7ea6\u4e3a 2000 \u5b57\u8282\u3002\u6bcf\u5757\u4f5c\u4e3a\u72ec\u7acb\u7684\u4e00\u884c\u5b58\u5165\u6240\u5c5e\u8868\u7684 TOAST \u8868\u3002\u6bcf\u4e2a TOAST \u8868\u90fd\u6709 chunk_id\uff08\u6807\u8bc6\u7279\u5b9a TOAST \u503c\u7684 OID\uff09\u3001chunk_seq\uff08\u8be5\u5757\u5728\u503c\u4e2d\u7684\u5e8f\u53f7\uff09\u548c chunk_data\uff08\u5b9e\u9645\u5757\u6570\u636e\uff09\u4e09\u5217\u3002chunk_id \u4e0e chunk_seq \u4e0a\u7684\u552f\u4e00\u7d22\u5f15\u7528\u4e8e\u5feb\u901f\u68c0\u7d22\u503c\u3002\u56e0\u6b64\uff0c\u8868\u793a\u78c1\u76d8\u884c\u5916 TOAST \u503c\u7684\u6307\u9488\u9700\u8981\u5b58\u50a8 TOAST \u8868\u7684 OID\uff0c\u4ee5\u53ca\u7279\u5b9a\u503c\u7684 OID\uff0c\u5373 chunk_id\u3002\u4e3a\u65b9\u4fbf\u4f7f\u7528\uff0c\u6307\u9488\u8fd8\u5b58\u50a8\u903b\u8f91\u6570\u636e\u5927\u5c0f\uff08\u539f\u59cb\u672a\u538b\u7f29\u957f\u5ea6\uff09\u548c\u7269\u7406\u5b58\u50a8\u5927\u5c0f\uff08\u4f7f\u7528\u538b\u7f29\u65f6\u4e0e\u539f\u59cb\u5927\u5c0f\u4e0d\u540c\uff09\u3002\u7b97\u4e0a varlena \u9996\u90e8\u5b57\u8282\uff0c\u78c1\u76d8 TOAST \u6307\u9488\u7684\u603b\u5927\u5c0f\u4e3a 18 \u5b57\u8282\uff0c\u4e0e\u5176\u8868\u793a\u7684\u503c\u7684\u5b9e\u9645\u5927\u5c0f\u65e0\u5173\u3002</p>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u53ea\u6709\u5728\u8981\u5b58\u5165\u8868\u4e2d\u7684\u884c\u503c\u5bbd\u4e8e <code class=\"symbol\">TOAST_TUPLE_THRESHOLD</code> \u5b57\u8282\uff08\u901a\u5e38\u4e3a 2 kB\uff09\u65f6\u624d\u4f1a\u88ab\u89e6\u53d1\u3002<acronym class=\"acronym\">TOAST</acronym> \u4ee3\u7801\u4f1a\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u628a\u5b57\u6bb5\u503c\u79fb\u5230\u884c\u5916\uff0c\u76f4\u5230\u8be5\u884c\u503c\u77ed\u4e8e <code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u5b57\u8282\uff08\u901a\u5e38\u4e5f\u4e3a 2 kB\uff0c\u4f46\u53ef\u8c03\u6574\uff09\uff0c\u6216\u8005\u5df2\u7ecf\u65e0\u6cd5\u518d\u83b7\u5f97\u66f4\u591a\u6536\u76ca\u3002\u5728 UPDATE \u64cd\u4f5c\u4e2d\uff0c\u672a\u66f4\u6539\u5b57\u6bb5\u7684\u503c\u901a\u5e38\u4f1a\u539f\u6837\u4fdd\u7559\uff1b\u56e0\u6b64\uff0c\u5982\u679c\u66f4\u65b0\u4e00\u884c\u65f6\u5176\u884c\u5916\u503c\u90fd\u6ca1\u6709\u53d8\u5316\uff0c\u4fbf\u4e0d\u4f1a\u4ea7\u751f <acronym class=\"acronym\">TOAST</acronym> \u6210\u672c\u3002</p>\n<p lang=\"zh\">TOAST \u7ba1\u7406\u4ee3\u7801\u652f\u6301\u56db\u79cd\u5c06\u53ef TOAST \u5217\u5b58\u50a8\u5230\u78c1\u76d8\u7684\u7b56\u7565\uff1a</p>\n<div class=\"itemizedlist\">\n<ul class=\"itemizedlist\">\n<li class=\"listitem\" lang=\"zh\">PLAIN \u7981\u6b62\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\u3002\u5bf9\u4e8e\u4e0d\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\uff0c\u8fd9\u662f\u552f\u4e00\u53ef\u7528\u7684\u5217\u5b58\u50a8\u7b56\u7565\u3002</li>\n<li class=\"listitem\" lang=\"zh\">EXTENDED \u540c\u65f6\u5141\u8bb8\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u662f\u5927\u591a\u6570\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u7684\u9ed8\u8ba4\u7b56\u7565\u3002\u5148\u5c1d\u8bd5\u538b\u7f29\uff1b\u5982\u679c\u884c\u4ecd\u7136\u8fc7\u5927\uff0c\u518d\u4f7f\u7528\u884c\u5916\u5b58\u50a8\u3002</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">EXTERNAL</code> \u5141\u8bb8\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u4e0d\u5141\u8bb8\u538b\u7f29\u3002\u4f7f\u7528 <code class=\"literal\">EXTERNAL</code> \u4f1a\u8ba9\u5bbd <code class=\"type\">text</code> \u548c <code class=\"type\">bytea</code> \u5217\u4e0a\u7684\u5b50\u4e32\u64cd\u4f5c\u66f4\u5feb\uff08\u4ee3\u4ef7\u662f\u5360\u7528\u66f4\u591a\u5b58\u50a8\u7a7a\u95f4\uff09\uff0c\u56e0\u4e3a\u5728\u503c\u672a\u538b\u7f29\u65f6\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u7ecf\u8fc7\u4f18\u5316\uff0c\u53ea\u9700\u63d0\u53d6\u884c\u5916\u503c\u4e2d\u6240\u9700\u7684\u90e8\u5206\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">MAIN</code> \u5141\u8bb8\u538b\u7f29\uff0c\u4f46\u4e0d\u5141\u8bb8\u884c\u5916\u5b58\u50a8\u3002\uff08\u5b9e\u9645\u4e0a\uff0c\u5bf9\u4e8e\u8fd9\u7c7b\u5217\uff0c\u4ecd\u7136\u53ef\u80fd\u8fdb\u884c\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u53ea\u6709\u5728\u522b\u65e0\u4ed6\u6cd5\u3001\u5fc5\u987b\u8fd9\u6837\u505a\u624d\u80fd\u8ba9\u884c\u8db3\u591f\u5c0f\u4ee5\u653e\u5165\u9875\u9762\u65f6\uff0c\u624d\u4f1a\u628a\u5b83\u4f5c\u4e3a\u6700\u540e\u624b\u6bb5\u3002\uff09</p>\n</li>\n</ul>\n</div>\n<p lang=\"zh\">\u6bcf\u79cd\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u90fd\u4e3a\u5176\u5217\u6307\u5b9a\u9ed8\u8ba4\u7b56\u7565\uff0c\u4f46\u5177\u4f53\u8868\u5217\u7684\u7b56\u7565\u53ef\u901a\u8fc7 ALTER TABLE ... SET STORAGE \u4fee\u6539\u3002</p>\n<p lang=\"zh\"><code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u4e5f\u53ef\u4ee5\u9488\u5bf9\u6bcf\u4e2a\u8868\u901a\u8fc7 <a class=\"link\" href=\"/docs/13/sql-altertable.html\" title=\"ALTER TABLE\"><code class=\"command\">ALTER TABLE ... SET (toast_tuple_target = N)</code></a> \u8fdb\u884c\u8c03\u6574\u3002</p>\n<p lang=\"zh\">\u4e0e\u8ba9\u884c\u503c\u8de8\u9875\u7b49\u66f4\u76f4\u63a5\u7684\u505a\u6cd5\u76f8\u6bd4\uff0c\u6b64\u65b9\u6848\u6709\u591a\u9879\u4f18\u52bf\u3002\u5047\u8bbe\u67e5\u8be2\u901a\u5e38\u6309\u8f83\u5c0f\u952e\u503c\u8fdb\u884c\u6bd4\u8f83\u7b5b\u9009\uff0c\u6267\u884c\u5668\u7684\u5927\u90e8\u5206\u5de5\u4f5c\u5c31\u53ef\u53ea\u4f7f\u7528\u4e3b\u884c\u6570\u636e\u3002TOAST \u5c5e\u6027\u7684\u5927\u503c\u4ec5\u5728\u5c06\u7ed3\u679c\u53d1\u9001\u7ed9\u5ba2\u6237\u7aef\u65f6\u624d\u8bfb\u53d6\uff0c\u800c\u4e14\u524d\u63d0\u662f\u67e5\u8be2\u786e\u5b9e\u9009\u62e9\u4e86\u8fd9\u4e9b\u503c\u3002\u56e0\u800c\u4e3b\u8868\u663e\u8457\u7f29\u5c0f\uff0c\u5171\u4eab\u7f13\u51b2\u533a\u53ef\u5bb9\u7eb3\u66f4\u591a\u884c\uff1b\u6392\u5e8f\u6570\u636e\u96c6\u4e5f\u4f1a\u7f29\u5c0f\uff0c\u66f4\u5bb9\u6613\u5b8c\u5168\u5728\u5185\u5b58\u4e2d\u6392\u5e8f\u3002\u539f\u6587\u4e2d\u7684\u4e00\u4e2a\u5c0f\u6d4b\u8bd5\u8868\u660e\uff1a\u5305\u542b\u5178\u578b HTML \u9875\u9762\u53ca URL \u7684\u8868\u8fde\u540c TOAST \u8868\uff0c\u5360\u7528\u7ea6\u4e3a\u539f\u59cb\u6570\u636e\u7684\u4e00\u534a\uff1b\u4e3b\u8868\u53ea\u5360\u603b\u6570\u636e\u7ea6 10%\uff0c\u5305\u62ec URL \u548c\u5c11\u91cf\u5c0f HTML \u9875\u9762\u3002\u4e0e\u5c06\u6240\u6709 HTML \u9875\u9762\u622a\u77ed\u81f3 7 kB \u4ee5\u4fbf\u88c5\u5165\u884c\u5185\u3001\u672a\u4f7f\u7528 TOAST \u7684\u5bf9\u7167\u8868\u76f8\u6bd4\uff0c\u8fd0\u884c\u65f6\u95f4\u6ca1\u6709\u5dee\u5f02\u3002</p>\n</div>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/13/storage-toast.html#STORAGE-TOAST-INMEMORY\">69.2.2. \u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ef\u4ee5\u6307\u5411\u4e0d\u5728\u78c1\u76d8\u4e0a\u3001\u800c\u4f4d\u4e8e\u5f53\u524d\u670d\u52a1\u5668\u8fdb\u7a0b\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u6570\u636e\u3002\u8fd9\u7c7b\u6307\u9488\u663e\u7136\u4e0d\u53ef\u80fd\u957f\u671f\u5b58\u5728\uff0c\u4f46\u4ecd\u7136\u5f88\u6709\u7528\u3002\u76ee\u524d\u6709\u4e24\u4e2a\u5b50\u60c5\u51b5\uff1a\u6307\u5411<em class=\"firstterm\">\u95f4\u63a5</em>\u6570\u636e\u7684\u6307\u9488\uff0c\u4ee5\u53ca\u6307\u5411<em class=\"firstterm\">\u5c55\u5f00</em>\u6570\u636e\u7684\u6307\u9488\u3002</p>\n<p lang=\"zh\">\u95f4\u63a5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ea\u662f\u7b80\u5355\u5730\u6307\u5411\u67d0\u5904\u5185\u5b58\u4e2d\u5b58\u653e\u7684\u4e00\u4e2a\u975e\u95f4\u63a5 varlena \u503c\u3002\u8fd9\u4e00\u60c5\u51b5\u6700\u521d\u53ea\u662f\u4f5c\u4e3a\u6982\u5ff5\u9a8c\u8bc1\u800c\u521b\u5efa\uff0c\u4f46\u76ee\u524d\u5728\u903b\u8f91\u89e3\u7801\u671f\u95f4\u4f1a\u7528\u5230\u5b83\uff0c\u4ee5\u907f\u514d\u53ef\u80fd\u4e0d\u5f97\u4e0d\u521b\u5efa\u8d85\u8fc7 1 GB \u7684\u7269\u7406\u5143\u7ec4\uff08\u628a\u6240\u6709\u884c\u5916\u5b57\u6bb5\u503c\u90fd\u62c9\u5165\u5143\u7ec4\u5c31\u53ef\u80fd\u5bfc\u81f4\u8fd9\u79cd\u60c5\u51b5\uff09\u3002\u8fd9\u79cd\u673a\u5236\u7684\u7528\u9014\u6709\u9650\uff0c\u56e0\u4e3a\u521b\u5efa\u8be5\u6307\u9488 datum \u7684\u4e00\u65b9\u5fc5\u987b\u5b8c\u5168\u8d1f\u8d23\u786e\u4fdd\u88ab\u5f15\u7528\u6570\u636e\u5728\u6307\u9488\u53ef\u80fd\u5b58\u5728\u7684\u6574\u4e2a\u671f\u95f4\u90fd\u4fdd\u6301\u6709\u6548\uff0c\u800c\u4e14\u7cfb\u7edf\u5e76\u6ca1\u6709\u4efb\u4f55\u57fa\u7840\u8bbe\u65bd\u6765\u5e2e\u52a9\u505a\u5230\u8fd9\u4e00\u70b9\u3002</p>\n<p lang=\"zh\">\u5c55\u5f00\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5bf9\u90a3\u4e9b\u78c1\u76d8\u8868\u793a\u5f62\u5f0f\u5e76\u4e0d\u7279\u522b\u9002\u5408\u8ba1\u7b97\u7528\u9014\u7684\u590d\u6742\u6570\u636e\u7c7b\u578b\u5f88\u6709\u7528\u3002\u4ee5\u6807\u51c6\u7684 <span class=\"productname\">PostgreSQL</span> \u6570\u7ec4 varlena \u8868\u793a\u4e3a\u4f8b\uff0c\u5b83\u5305\u542b\u7ef4\u5ea6\u4fe1\u606f\u3001\u4e00\u4e2a\u7a7a\u503c\u4f4d\u56fe\uff08\u5982\u679c\u5b58\u5728\u7a7a\u503c\u5143\u7d20\uff09\uff0c\u7136\u540e\u4f9d\u6b21\u4fdd\u5b58\u6240\u6709\u5143\u7d20\u7684\u503c\u3002\u5f53\u5143\u7d20\u7c7b\u578b\u672c\u8eab\u4e5f\u662f\u53d8\u957f\u65f6\uff0c\u5b9a\u4f4d\u7b2c <em class=\"replaceable\"><code>N</code></em> \u4e2a\u5143\u7d20\u7684\u552f\u4e00\u529e\u6cd5\u5c31\u662f\u626b\u63cf\u5b83\u524d\u9762\u7684\u6240\u6709\u5143\u7d20\u3002\u8fd9\u79cd\u8868\u793a\u5f62\u5f0f\u56e0\u5176\u7d27\u51d1\u6027\u800c\u9002\u5408\u78c1\u76d8\u5b58\u50a8\uff0c\u4f46\u5bf9\u4e8e\u6570\u7ec4\u8ba1\u7b97\u800c\u8a00\uff0c\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u5c55\u5f00</span>\u201d</span>\u6216<span class=\"quote\">\u201c<span class=\"quote\">\u89e3\u6784</span>\u201d</span>\u7684\u8868\u793a\u4f1a\u66f4\u597d\uff0c\u56e0\u4e3a\u5176\u4e2d\u6240\u6709\u5143\u7d20\u7684\u8d77\u59cb\u4f4d\u7f6e\u90fd\u5df2\u8bc6\u522b\u51fa\u6765\u3002<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u673a\u5236\u901a\u8fc7\u5141\u8bb8\u6309\u5f15\u7528\u4f20\u9012\u7684 Datum \u6307\u5411\u6807\u51c6 varlena \u503c\uff08\u5373\u78c1\u76d8\u8868\u793a\uff09\u6216\u8005\u6307\u5411\u5185\u5b58\u4e2d\u67d0\u5904\u5c55\u5f00\u8868\u793a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c\u6765\u6ee1\u8db3\u8fd9\u4e00\u9700\u8981\u3002\u8fd9\u79cd\u5c55\u5f00\u8868\u793a\u7684\u5177\u4f53\u7ec6\u8282\u7531\u6570\u636e\u7c7b\u578b\u81ea\u884c\u51b3\u5b9a\uff0c\u4e0d\u8fc7\u5b83\u5fc5\u987b\u5177\u6709\u6807\u51c6\u5934\u90e8\uff0c\u5e76\u6ee1\u8db3 <code class=\"filename\">src/include/utils/expandeddatum.h</code> \u4e2d\u7ed9\u51fa\u7684\u5176\u4ed6 API \u8981\u6c42\u3002\u5904\u7406\u8be5\u6570\u636e\u7c7b\u578b\u7684 C \u7ea7\u51fd\u6570\u53ef\u4ee5\u9009\u62e9\u652f\u6301\u4efb\u4e00\u79cd\u8868\u793a\u3002\u4e0d\u77e5\u9053\u5c55\u5f00\u8868\u793a\u3001\u4f46\u53ea\u662f\u5bf9\u8f93\u5165\u5e94\u7528 <code class=\"function\">PG_DETOAST_DATUM</code> \u7684\u51fd\u6570\uff0c\u4f1a\u81ea\u52a8\u83b7\u5f97\u4f20\u7edf\u7684 varlena \u8868\u793a\uff1b\u56e0\u6b64\uff0c\u5bf9\u5c55\u5f00\u8868\u793a\u7684\u652f\u6301\u53ef\u4ee5\u9010\u6b65\u5f15\u5165\uff0c\u4e00\u6b21\u589e\u52a0\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\u3002</p>\n<p lang=\"zh\">\u6307\u5411\u5c55\u5f00\u503c\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u8fd8\u53ef\u8fdb\u4e00\u6b65\u5206\u4e3a<em class=\"firstterm\">\u53ef\u8bfb\u5199\uff08read-write\uff09</em>\u548c<em class=\"firstterm\">\u53ea\u8bfb\uff08read-only\uff09</em>\u6307\u9488\u3002\u65e0\u8bba\u54ea\u79cd\u65b9\u5f0f\uff0c\u88ab\u6307\u5411\u7684\u8868\u793a\u662f\u76f8\u540c\u7684\uff1b\u4f46\u6536\u5230\u53ef\u8bfb\u5199\u6307\u9488\u7684\u51fd\u6570\u53ef\u4ee5\u539f\u5730\u4fee\u6539\u6240\u5f15\u7528\u7684\u503c\uff0c\u800c\u6536\u5230\u53ea\u8bfb\u6307\u9488\u7684\u51fd\u6570\u5219\u4e0d\u53ef\u4ee5\uff0c\u5982\u679c\u5b83\u60f3\u751f\u6210\u8be5\u503c\u7684\u4fee\u6539\u7248\u672c\uff0c\u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u526f\u672c\u3002\u8fd9\u79cd\u533a\u5206\u4ee5\u53ca\u4e00\u4e9b\u76f8\u5173\u7ea6\u5b9a\uff0c\u4f7f\u5f97\u5728\u67e5\u8be2\u6267\u884c\u671f\u95f4\u53ef\u4ee5\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u5c55\u5f00\u503c\u590d\u5236\u3002</p>\n<p lang=\"zh\">\u5bf9\u4e8e\u6240\u6709\u7c7b\u578b\u7684\u5185\u5b58\u4e2d <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c<acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u90fd\u4f1a\u786e\u4fdd\u8fd9\u7c7b\u6307\u9488 datum \u4e0d\u4f1a\u610f\u5916\u5730\u88ab\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u3002\u5185\u5b58\u4e2d\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5728\u5b58\u50a8\u524d\u4f1a\u81ea\u52a8\u5c55\u5f00\u4e3a\u666e\u901a\u7684\u884c\u5185 varlena \u503c\uff0c\u5982\u679c\u8fd9\u6837\u4f1a\u4f7f\u627f\u8f7d\u5b83\u7684\u5143\u7ec4\u8fc7\u5927\uff0c\u8fd8\u53ef\u80fd\u8fdb\u4e00\u6b65\u8f6c\u6362\u4e3a\u78c1\u76d8\u4e0a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u3002</p>\n</div>\n</div>", "manual_path": "/docs/13/storage-toast.html", "localization": {"status": "complete", "sources": [{"url": "/docs/13/storage-toast.html", "method": "same-major semantic node", "sha256": "4c0338457dfd355109069059bd056875803f94ac48f44d458366c9c9c8812d34", "language": "zh", "matched_nodes": ["#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[2]", "#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[3]", "#STORAGE-TOAST/div[10]/p[3]", "#STORAGE-TOAST/div[10]/p[7]", "#STORAGE-TOAST/div[11]/p[1]", "#STORAGE-TOAST/div[11]/p[2]", "#STORAGE-TOAST/div[11]/p[3]", "#STORAGE-TOAST/div[11]/p[4]", "#STORAGE-TOAST/div[11]/p[5]", "#STORAGE-TOAST/div[1]/dl[0]/dt[0]", "#STORAGE-TOAST/div[1]/dl[0]/dt[1]", "#STORAGE-TOAST/p[4]", "#STORAGE-TOAST/p[5]", "#STORAGE-TOAST/p[8]", "#STORAGE-TOAST/p[9]"]}], "language": "zh", "original_text": {"/versions/13/description/0": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/versions/13/facts/0/label": "Definition scope", "/versions/13/facts/0/value": "Same-version core physical storage documentation", "/versions/13/related/1/label": "Storage Parameters"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "42a65fc108b6e4e2f7aed6b860d2e5133dcda58863b43e936358b5cf53ade8ac"}, "comparison_data": {"layouts": []}, "comparison_hash": "27341929154bfb55531f03501322b65af719c5561f3c4ddc9528a14aa4df69b5", "manual_language": "zh"}, "14": {"facts": [{"label": "\u5b9a\u4e49\u8303\u56f4", "value": "\u540c\u7248\u672c\u6838\u5fc3\u7269\u7406\u5b58\u50a8\u6587\u6863"}], "tables": [], "related": [{"url": "/wiki/tableam/?v=14", "label": "Table AM"}, {"url": "/wiki/relopts/?v=14", "label": "\u5b58\u50a8\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v14.24/postgresql-14.24.tar.bz2", "label": "14.24", "major": "14", "channel": "stable", "revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "sources": [{"url": "https://pg.center/docs/14/storage-toast.html", "path": "storage-toast.html", "label": "PostgreSQL 14 English manual", "sha256": "783b4e8fac9b0a80625d25a8037930907ce2cca2900d7e9c061d850940c99f7e", "language": "en", "original_url": "/docs/14/storage-toast.html"}], "sections": [], "signature": "", "description": ["\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002"], "manual_html": "<div class=\"sect1\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h2 class=\"title\">70.2.\u00a0TOAST</h2>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08<acronym class=\"acronym\">TOAST</acronym>, The Oversized-Attribute Storage Technique\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"productname\">PostgreSQL</span> \u4f7f\u7528\u56fa\u5b9a\u9875\u9762\u5927\u5c0f\uff08\u901a\u5e38\u4e3a 8 kB\uff09\uff0c\u5e76\u4e14\u4e0d\u5141\u8bb8\u5143\u7ec4\u8de8\u8d8a\u591a\u4e2a\u9875\u9762\u3002\u56e0\u6b64\uff0c\u65e0\u6cd5\u76f4\u63a5\u5b58\u50a8\u975e\u5e38\u5927\u7684\u5b57\u6bb5\u503c\u3002\u4e3a\u514b\u670d\u8fd9\u4e00\u9650\u5236\uff0c\u5927\u5b57\u6bb5\u503c\u4f1a\u88ab\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u62c6\u5206\u6210\u591a\u4e2a\u7269\u7406\u884c\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u5bf9\u7528\u6237\u662f\u900f\u660e\u7684\uff0c\u800c\u4e14\u5bf9\u5927\u90e8\u5206\u540e\u7aef\u4ee3\u7801\u7684\u5f71\u54cd\u5f88\u5c0f\u3002\u8fd9\u9879\u6280\u672f\u88ab\u4eb2\u5207\u5730\u79f0\u4e3a <acronym class=\"acronym\">TOAST</acronym>\uff08\u6216\u8005<span class=\"quote\">\u201c<span class=\"quote\">\u81ea\u5207\u7247\u9762\u5305\u95ee\u4e16\u4ee5\u6765\u6700\u68d2\u7684\u4e1c\u897f</span>\u201d</span>\uff09\u3002<acronym class=\"acronym\">TOAST</acronym> \u57fa\u7840\u8bbe\u65bd\u4e5f\u88ab\u7528\u4e8e\u6539\u8fdb\u5185\u5b58\u4e2d\u5927\u578b\u6570\u636e\u503c\u7684\u5904\u7406\u3002</p>\n<p lang=\"zh\">\u53ea\u6709\u90e8\u5206\u6570\u636e\u7c7b\u578b\u652f\u6301 TOAST\uff1b\u65e0\u9700\u8ba9\u4e0d\u4f1a\u4ea7\u751f\u5927\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u627f\u62c5\u989d\u5916\u5f00\u9500\u3002\u8981\u652f\u6301 TOAST\uff0c\u7c7b\u578b\u5fc5\u987b\u91c7\u7528\u53d8\u957f\uff08varlena\uff09\u8868\u793a\uff0c\u901a\u5e38\u5176\u5b58\u50a8\u503c\u7684\u7b2c\u4e00\u4e2a\u56db\u5b57\u8282\u5b57\u8bb0\u5f55\u603b\u5b57\u8282\u957f\u5ea6\uff0c\u5305\u62ec\u8be5\u957f\u5ea6\u5b57\u672c\u8eab\u3002TOAST \u4e0d\u9650\u5236\u7c7b\u578b\u8868\u793a\u7684\u5176\u4f59\u90e8\u5206\u3002\u7edf\u79f0\u4e3a TOAST \u503c\u7684\u7279\u6b8a\u8868\u793a\u901a\u8fc7\u4fee\u6539\u6216\u91cd\u65b0\u89e3\u91ca\u8fd9\u4e2a\u9996\u90e8\u957f\u5ea6\u5b57\u5de5\u4f5c\u3002\u56e0\u6b64\uff0c\u652f\u6301 TOAST \u7c7b\u578b\u7684 C \u5c42\u51fd\u6570\u5fc5\u987b\u8c28\u614e\u5904\u7406\u53ef\u80fd\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u8f93\u5165\uff1a\u5728\u89e3\u9664 TOAST \u8868\u793a\u524d\uff0c\u8f93\u5165\u53ef\u80fd\u5e76\u4e0d\u7531\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u52a0\u5b9e\u9645\u5185\u5bb9\u7ec4\u6210\u3002\u901a\u5e38\u5e94\u5728\u4efb\u4f55\u5904\u7406\u4e4b\u524d\u8c03\u7528 PG_DETOAST_DATUM\uff0c\u4f46\u67d0\u4e9b\u60c5\u5f62\u53ef\u91c7\u7528\u66f4\u9ad8\u6548\u7684\u65b9\u6cd5\uff0c\u8be6\u60c5\u53c2\u89c1\u7b2c 38.13.1 \u8282\u3002</p>\n<p lang=\"zh\">TOAST \u5360\u7528 varlena \u957f\u5ea6\u5b57\u7684\u4e24\u4e2a\u4f4d\uff1a\u5927\u7aef\u673a\u5668\u4f7f\u7528\u9ad8\u4f4d\uff0c\u5c0f\u7aef\u673a\u5668\u4f7f\u7528\u4f4e\u4f4d\uff0c\u56e0\u6b64\u652f\u6301 TOAST \u7684\u7c7b\u578b\u4e2d\uff0c\u4efb\u4f55\u503c\u7684\u903b\u8f91\u5927\u5c0f\u90fd\u9650\u4e8e 1 GB\uff082^30 - 1 \u5b57\u8282\uff09\u3002\u4e24\u4f4d\u5747\u4e3a\u96f6\u65f6\uff0c\u8be5\u503c\u662f\u666e\u901a\u7684\u672a\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u503c\uff0c\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u672c\u8eab\u5728\u5185\u7684\u603b\u5b57\u8282\u6570\u3002\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u7f6e\u4f4d\u65f6\uff0c\u8be5\u503c\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u800c\u975e\u901a\u5e38\u7684\u56db\u5b57\u8282\u9996\u90e8\uff0c\u8be5\u5b57\u8282\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u8282\u5728\u5185\u7684\u603b\u5927\u5c0f\u3002\u8fd9\u4f7f\u5c0f\u4e8e 127 \u5b57\u8282\u7684\u503c\u80fd\u591f\u7d27\u51d1\u5b58\u50a8\uff0c\u540c\u65f6\u4ecd\u5141\u8bb8\u7c7b\u578b\u5728\u9700\u8981\u65f6\u589e\u957f\u5230 1 GB\u3002\u5355\u5b57\u8282\u9996\u90e8\u7684\u503c\u65e0\u9700\u6309\u7279\u5b9a\u8fb9\u754c\u5bf9\u9f50\uff1b\u56db\u5b57\u8282\u9996\u90e8\u7684\u503c\u5219\u81f3\u5c11\u6309\u56db\u5b57\u8282\u8fb9\u754c\u5bf9\u9f50\u3002\u7701\u7565\u5bf9\u9f50\u586b\u5145\u8fd8\u80fd\u8282\u7701\u7a7a\u95f4\uff0c\u5bf9\u4e8e\u77ed\u503c\u5c24\u5176\u660e\u663e\u3002\u4e00\u4e2a\u7279\u6b8a\u60c5\u51b5\u662f\uff1a\u5982\u679c\u5355\u5b57\u8282\u9996\u90e8\u7684\u5176\u4f59\u4f4d\u5168\u4e3a\u96f6\u2014\u2014\u8fd9\u4e0d\u53ef\u80fd\u662f\u5305\u542b\u81ea\u8eab\u7684\u957f\u5ea6\u2014\u2014\u8be5\u503c\u5c31\u662f\u6307\u5411\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u5177\u4f53\u5f62\u5f0f\u89c1\u4e0b\u6587\u3002\u6307\u9488\u7684\u7c7b\u578b\u548c\u5927\u5c0f\u7531\u6570\u636e\u7b2c\u4e8c\u4e2a\u5b57\u8282\u4e2d\u7684\u4ee3\u7801\u51b3\u5b9a\u3002\u6700\u540e\uff0c\u5982\u679c\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u6e05\u96f6\uff0c\u800c\u76f8\u90bb\u4f4d\u7f6e\u4f4d\uff0c\u6570\u636e\u5185\u5bb9\u5c31\u5df2\u538b\u7f29\uff0c\u4f7f\u7528\u524d\u5fc5\u987b\u89e3\u538b\u3002\u6b64\u65f6\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u538b\u7f29\u540e\u6570\u636e\u7684\u603b\u5927\u5c0f\uff0c\u800c\u975e\u539f\u59cb\u6570\u636e\u5927\u5c0f\u3002\u884c\u5916\u6570\u636e\u4e5f\u53ef\u80fd\u538b\u7f29\uff0c\u4f46 varlena \u9996\u90e8\u4e0d\u8868\u660e\u8fd9\u4e00\u70b9\uff0c\u9700\u67e5\u770b TOAST \u6307\u9488\u7684\u5185\u5bb9\u3002</p>\n<p lang=\"zh\">\u65e0\u8bba\u662f\u884c\u5185\u538b\u7f29\u6570\u636e\u8fd8\u662f\u884c\u5916\u538b\u7f29\u6570\u636e\uff0c\u5176\u6240\u7528\u7684\u538b\u7f29\u6280\u672f\u90fd\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e <code class=\"literal\">COMPRESSION</code> \u5217\u9009\u9879\u6765\u6309\u5217\u9009\u62e9\uff0c\u8be5\u9009\u9879\u53ef\u5728 <code class=\"command\">CREATE TABLE</code> \u6216 <code class=\"command\">ALTER TABLE</code> \u4e2d\u6307\u5b9a\u3002\u5bf9\u672a\u663e\u5f0f\u8bbe\u7f6e\u7684\u5217\uff0c\u4f1a\u5728\u63d2\u5165\u6570\u636e\u65f6\u53c2\u8003\u53c2\u6570<a class=\"xref\" href=\"/docs/14/runtime-config-client.html#GUC-DEFAULT-TOAST-COMPRESSION\">default_toast_compression</a>\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u5982\u524d\u6240\u8ff0\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u6709\u591a\u79cd\u7c7b\u578b\u3002\u6700\u65e9\u3001\u4e5f\u6700\u5e38\u89c1\u7684\u4e00\u79cd\uff0c\u662f\u6307\u5411\u5b58\u50a8\u5728 <em class=\"firstterm\"><acronym class=\"acronym\">TOAST</acronym> \u8868</em>\u4e2d\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u8be5\u8868\u4e0e\u5305\u542b\u8be5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u672c\u8eab\u7684\u8868\u76f8\u5173\u8054\uff0c\u4f46\u4e0e\u4e4b\u5206\u79bb\u5b58\u50a8\u3002\u5f53\u4e00\u4e2a\u8981\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u7684\u5143\u7ec4\u8fc7\u5927\u800c\u65e0\u6cd5\u539f\u6837\u5b58\u50a8\u65f6\uff0c\u8fd9\u4e9b<em class=\"firstterm\">\u78c1\u76d8\u4e0a\u7684</em>\u6307\u9488 datum \u4f1a\u7531 <acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\uff08\u4f4d\u4e8e <code class=\"filename\">access/common/toast_internals.c</code>\uff09\u521b\u5efa\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/14/storage-toast.html#STORAGE-TOAST-ONDISK\" title=\"70.2.1.\u00a0\u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a070.2.1\u00a0\u8282</a>\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u53ef\u4ee5\u5305\u542b\u6307\u5411\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\u3002\u8fd9\u7c7b datum \u5fc5\u7136\u662f\u77ed\u547d\u7684\uff0c\u6c38\u8fdc\u4e0d\u4f1a\u51fa\u73b0\u5728\u78c1\u76d8\u4e0a\uff0c\u4f46\u5b83\u4eec\u5bf9\u4e8e\u907f\u514d\u5927\u578b\u6570\u636e\u503c\u7684\u590d\u5236\u548c\u5197\u4f59\u5904\u7406\u975e\u5e38\u6709\u7528\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/14/storage-toast.html#STORAGE-TOAST-INMEMORY\" title=\"70.2.2.\u00a0\u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a070.2.2\u00a0\u8282</a>\u3002</p>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/14/storage-toast.html#STORAGE-TOAST-ONDISK\">70.2.1. \u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u5982\u679c\u8868\u4e2d\u6709\u5217\u652f\u6301 TOAST\uff0c\u8868\u5c31\u4f1a\u5173\u8054\u4e00\u4e2a TOAST \u8868\uff0c\u5176 OID \u5b58\u50a8\u5728 pg_class.reltoastrelid \u4e2d\u3002\u78c1\u76d8\u4e0a\u7684 TOAST \u503c\u5b58\u653e\u5728\u8be5 TOAST \u8868\u4e2d\uff0c\u8be6\u60c5\u89c1\u4e0b\u6587\u3002</p>\n<p lang=\"zh\">\u884c\u5916\u503c\u5728\u538b\u7f29\u540e\uff08\u5982\u679c\u4f7f\u7528\u538b\u7f29\uff09\u62c6\u6210\u6700\u591a TOAST_MAX_CHUNK_SIZE \u5b57\u8282\u7684\u5757\u3002\u9ed8\u8ba4\u9009\u62e9\u6b64\u503c\uff0c\u4f7f\u4e00\u4e2a\u9875\u9762\u80fd\u88c5\u4e0b\u56db\u4e2a\u5757\u884c\uff0c\u56e0\u6b64\u7ea6\u4e3a 2000 \u5b57\u8282\u3002\u6bcf\u5757\u4f5c\u4e3a\u72ec\u7acb\u7684\u4e00\u884c\u5b58\u5165\u6240\u5c5e\u8868\u7684 TOAST \u8868\u3002\u6bcf\u4e2a TOAST \u8868\u90fd\u6709 chunk_id\uff08\u6807\u8bc6\u7279\u5b9a TOAST \u503c\u7684 OID\uff09\u3001chunk_seq\uff08\u8be5\u5757\u5728\u503c\u4e2d\u7684\u5e8f\u53f7\uff09\u548c chunk_data\uff08\u5b9e\u9645\u5757\u6570\u636e\uff09\u4e09\u5217\u3002chunk_id \u4e0e chunk_seq \u4e0a\u7684\u552f\u4e00\u7d22\u5f15\u7528\u4e8e\u5feb\u901f\u68c0\u7d22\u503c\u3002\u56e0\u6b64\uff0c\u8868\u793a\u78c1\u76d8\u884c\u5916 TOAST \u503c\u7684\u6307\u9488\u9700\u8981\u5b58\u50a8 TOAST \u8868\u7684 OID\uff0c\u4ee5\u53ca\u7279\u5b9a\u503c\u7684 OID\uff0c\u5373 chunk_id\u3002\u4e3a\u65b9\u4fbf\u4f7f\u7528\uff0c\u6307\u9488\u8fd8\u5b58\u50a8\u903b\u8f91\u6570\u636e\u5927\u5c0f\uff08\u539f\u59cb\u672a\u538b\u7f29\u957f\u5ea6\uff09\u548c\u7269\u7406\u5b58\u50a8\u5927\u5c0f\uff08\u4f7f\u7528\u538b\u7f29\u65f6\u4e0e\u539f\u59cb\u5927\u5c0f\u4e0d\u540c\uff09\uff0c\u4ee5\u53ca\u6240\u4f7f\u7528\u7684\u538b\u7f29\u65b9\u6cd5\uff08\u5982\u679c\u6709\uff09\u3002\u7b97\u4e0a varlena \u9996\u90e8\u5b57\u8282\uff0c\u78c1\u76d8 TOAST \u6307\u9488\u7684\u603b\u5927\u5c0f\u4e3a 18 \u5b57\u8282\uff0c\u4e0e\u5176\u8868\u793a\u7684\u503c\u7684\u5b9e\u9645\u5927\u5c0f\u65e0\u5173\u3002</p>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u53ea\u6709\u5728\u8981\u5b58\u5165\u8868\u4e2d\u7684\u884c\u503c\u5bbd\u4e8e <code class=\"symbol\">TOAST_TUPLE_THRESHOLD</code> \u5b57\u8282\uff08\u901a\u5e38\u4e3a 2 kB\uff09\u65f6\u624d\u4f1a\u88ab\u89e6\u53d1\u3002<acronym class=\"acronym\">TOAST</acronym> \u4ee3\u7801\u4f1a\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u628a\u5b57\u6bb5\u503c\u79fb\u5230\u884c\u5916\uff0c\u76f4\u5230\u8be5\u884c\u503c\u77ed\u4e8e <code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u5b57\u8282\uff08\u901a\u5e38\u4e5f\u4e3a 2 kB\uff0c\u4f46\u53ef\u8c03\u6574\uff09\uff0c\u6216\u8005\u5df2\u7ecf\u65e0\u6cd5\u518d\u83b7\u5f97\u66f4\u591a\u6536\u76ca\u3002\u5728 UPDATE \u64cd\u4f5c\u4e2d\uff0c\u672a\u66f4\u6539\u5b57\u6bb5\u7684\u503c\u901a\u5e38\u4f1a\u539f\u6837\u4fdd\u7559\uff1b\u56e0\u6b64\uff0c\u5982\u679c\u66f4\u65b0\u4e00\u884c\u65f6\u5176\u884c\u5916\u503c\u90fd\u6ca1\u6709\u53d8\u5316\uff0c\u4fbf\u4e0d\u4f1a\u4ea7\u751f <acronym class=\"acronym\">TOAST</acronym> \u6210\u672c\u3002</p>\n<p lang=\"zh\">TOAST \u7ba1\u7406\u4ee3\u7801\u652f\u6301\u56db\u79cd\u5c06\u53ef TOAST \u5217\u5b58\u50a8\u5230\u78c1\u76d8\u7684\u7b56\u7565\uff1a</p>\n<div class=\"itemizedlist\">\n<ul class=\"itemizedlist\">\n<li class=\"listitem\" lang=\"zh\">PLAIN \u7981\u6b62\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\u3002\u5bf9\u4e8e\u4e0d\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\uff0c\u8fd9\u662f\u552f\u4e00\u53ef\u7528\u7684\u5217\u5b58\u50a8\u7b56\u7565\u3002</li>\n<li class=\"listitem\" lang=\"zh\">EXTENDED \u540c\u65f6\u5141\u8bb8\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u662f\u5927\u591a\u6570\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u7684\u9ed8\u8ba4\u7b56\u7565\u3002\u5148\u5c1d\u8bd5\u538b\u7f29\uff1b\u5982\u679c\u884c\u4ecd\u7136\u8fc7\u5927\uff0c\u518d\u4f7f\u7528\u884c\u5916\u5b58\u50a8\u3002</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">EXTERNAL</code> \u5141\u8bb8\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u4e0d\u5141\u8bb8\u538b\u7f29\u3002\u4f7f\u7528 <code class=\"literal\">EXTERNAL</code> \u4f1a\u8ba9\u5bbd <code class=\"type\">text</code> \u548c <code class=\"type\">bytea</code> \u5217\u4e0a\u7684\u5b50\u4e32\u64cd\u4f5c\u66f4\u5feb\uff08\u4ee3\u4ef7\u662f\u5360\u7528\u66f4\u591a\u5b58\u50a8\u7a7a\u95f4\uff09\uff0c\u56e0\u4e3a\u5728\u503c\u672a\u538b\u7f29\u65f6\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u7ecf\u8fc7\u4f18\u5316\uff0c\u53ea\u9700\u63d0\u53d6\u884c\u5916\u503c\u4e2d\u6240\u9700\u7684\u90e8\u5206\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">MAIN</code> \u5141\u8bb8\u538b\u7f29\uff0c\u4f46\u4e0d\u5141\u8bb8\u884c\u5916\u5b58\u50a8\u3002\uff08\u5b9e\u9645\u4e0a\uff0c\u5bf9\u4e8e\u8fd9\u7c7b\u5217\uff0c\u4ecd\u7136\u53ef\u80fd\u8fdb\u884c\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u53ea\u6709\u5728\u522b\u65e0\u4ed6\u6cd5\u3001\u5fc5\u987b\u8fd9\u6837\u505a\u624d\u80fd\u8ba9\u884c\u8db3\u591f\u5c0f\u4ee5\u653e\u5165\u9875\u9762\u65f6\uff0c\u624d\u4f1a\u628a\u5b83\u4f5c\u4e3a\u6700\u540e\u624b\u6bb5\u3002\uff09</p>\n</li>\n</ul>\n</div>\n<p lang=\"zh\">\u6bcf\u79cd\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u90fd\u4e3a\u5176\u5217\u6307\u5b9a\u9ed8\u8ba4\u7b56\u7565\uff0c\u4f46\u5177\u4f53\u8868\u5217\u7684\u7b56\u7565\u53ef\u901a\u8fc7 ALTER TABLE ... SET STORAGE \u4fee\u6539\u3002</p>\n<p lang=\"zh\"><code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u4e5f\u53ef\u4ee5\u9488\u5bf9\u6bcf\u4e2a\u8868\u901a\u8fc7 <a class=\"link\" href=\"/docs/14/sql-altertable.html\" title=\"ALTER TABLE\"><code class=\"command\">ALTER TABLE ... SET (toast_tuple_target = N)</code></a> \u8fdb\u884c\u8c03\u6574\u3002</p>\n<p lang=\"zh\">\u4e0e\u8ba9\u884c\u503c\u8de8\u9875\u7b49\u66f4\u76f4\u63a5\u7684\u505a\u6cd5\u76f8\u6bd4\uff0c\u6b64\u65b9\u6848\u6709\u591a\u9879\u4f18\u52bf\u3002\u5047\u8bbe\u67e5\u8be2\u901a\u5e38\u6309\u8f83\u5c0f\u952e\u503c\u8fdb\u884c\u6bd4\u8f83\u7b5b\u9009\uff0c\u6267\u884c\u5668\u7684\u5927\u90e8\u5206\u5de5\u4f5c\u5c31\u53ef\u53ea\u4f7f\u7528\u4e3b\u884c\u6570\u636e\u3002TOAST \u5c5e\u6027\u7684\u5927\u503c\u4ec5\u5728\u5c06\u7ed3\u679c\u53d1\u9001\u7ed9\u5ba2\u6237\u7aef\u65f6\u624d\u8bfb\u53d6\uff0c\u800c\u4e14\u524d\u63d0\u662f\u67e5\u8be2\u786e\u5b9e\u9009\u62e9\u4e86\u8fd9\u4e9b\u503c\u3002\u56e0\u800c\u4e3b\u8868\u663e\u8457\u7f29\u5c0f\uff0c\u5171\u4eab\u7f13\u51b2\u533a\u53ef\u5bb9\u7eb3\u66f4\u591a\u884c\uff1b\u6392\u5e8f\u6570\u636e\u96c6\u4e5f\u4f1a\u7f29\u5c0f\uff0c\u66f4\u5bb9\u6613\u5b8c\u5168\u5728\u5185\u5b58\u4e2d\u6392\u5e8f\u3002\u539f\u6587\u4e2d\u7684\u4e00\u4e2a\u5c0f\u6d4b\u8bd5\u8868\u660e\uff1a\u5305\u542b\u5178\u578b HTML \u9875\u9762\u53ca URL \u7684\u8868\u8fde\u540c TOAST \u8868\uff0c\u5360\u7528\u7ea6\u4e3a\u539f\u59cb\u6570\u636e\u7684\u4e00\u534a\uff1b\u4e3b\u8868\u53ea\u5360\u603b\u6570\u636e\u7ea6 10%\uff0c\u5305\u62ec URL \u548c\u5c11\u91cf\u5c0f HTML \u9875\u9762\u3002\u4e0e\u5c06\u6240\u6709 HTML \u9875\u9762\u622a\u77ed\u81f3 7 kB \u4ee5\u4fbf\u88c5\u5165\u884c\u5185\u3001\u672a\u4f7f\u7528 TOAST \u7684\u5bf9\u7167\u8868\u76f8\u6bd4\uff0c\u8fd0\u884c\u65f6\u95f4\u6ca1\u6709\u5dee\u5f02\u3002</p>\n</div>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/14/storage-toast.html#STORAGE-TOAST-INMEMORY\">70.2.2. \u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ef\u4ee5\u6307\u5411\u4e0d\u5728\u78c1\u76d8\u4e0a\u3001\u800c\u4f4d\u4e8e\u5f53\u524d\u670d\u52a1\u5668\u8fdb\u7a0b\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u6570\u636e\u3002\u8fd9\u7c7b\u6307\u9488\u663e\u7136\u4e0d\u53ef\u80fd\u957f\u671f\u5b58\u5728\uff0c\u4f46\u4ecd\u7136\u5f88\u6709\u7528\u3002\u76ee\u524d\u6709\u4e24\u4e2a\u5b50\u60c5\u51b5\uff1a\u6307\u5411<em class=\"firstterm\">\u95f4\u63a5</em>\u6570\u636e\u7684\u6307\u9488\uff0c\u4ee5\u53ca\u6307\u5411<em class=\"firstterm\">\u5c55\u5f00</em>\u6570\u636e\u7684\u6307\u9488\u3002</p>\n<p lang=\"zh\">\u95f4\u63a5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ea\u662f\u7b80\u5355\u5730\u6307\u5411\u67d0\u5904\u5185\u5b58\u4e2d\u5b58\u653e\u7684\u4e00\u4e2a\u975e\u95f4\u63a5 varlena \u503c\u3002\u8fd9\u4e00\u60c5\u51b5\u6700\u521d\u53ea\u662f\u4f5c\u4e3a\u6982\u5ff5\u9a8c\u8bc1\u800c\u521b\u5efa\uff0c\u4f46\u76ee\u524d\u5728\u903b\u8f91\u89e3\u7801\u671f\u95f4\u4f1a\u7528\u5230\u5b83\uff0c\u4ee5\u907f\u514d\u53ef\u80fd\u4e0d\u5f97\u4e0d\u521b\u5efa\u8d85\u8fc7 1 GB \u7684\u7269\u7406\u5143\u7ec4\uff08\u628a\u6240\u6709\u884c\u5916\u5b57\u6bb5\u503c\u90fd\u62c9\u5165\u5143\u7ec4\u5c31\u53ef\u80fd\u5bfc\u81f4\u8fd9\u79cd\u60c5\u51b5\uff09\u3002\u8fd9\u79cd\u673a\u5236\u7684\u7528\u9014\u6709\u9650\uff0c\u56e0\u4e3a\u521b\u5efa\u8be5\u6307\u9488 datum \u7684\u4e00\u65b9\u5fc5\u987b\u5b8c\u5168\u8d1f\u8d23\u786e\u4fdd\u88ab\u5f15\u7528\u6570\u636e\u5728\u6307\u9488\u53ef\u80fd\u5b58\u5728\u7684\u6574\u4e2a\u671f\u95f4\u90fd\u4fdd\u6301\u6709\u6548\uff0c\u800c\u4e14\u7cfb\u7edf\u5e76\u6ca1\u6709\u4efb\u4f55\u57fa\u7840\u8bbe\u65bd\u6765\u5e2e\u52a9\u505a\u5230\u8fd9\u4e00\u70b9\u3002</p>\n<p lang=\"zh\">\u5c55\u5f00\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5bf9\u90a3\u4e9b\u78c1\u76d8\u8868\u793a\u5f62\u5f0f\u5e76\u4e0d\u7279\u522b\u9002\u5408\u8ba1\u7b97\u7528\u9014\u7684\u590d\u6742\u6570\u636e\u7c7b\u578b\u5f88\u6709\u7528\u3002\u4ee5\u6807\u51c6\u7684 <span class=\"productname\">PostgreSQL</span> \u6570\u7ec4 varlena \u8868\u793a\u4e3a\u4f8b\uff0c\u5b83\u5305\u542b\u7ef4\u5ea6\u4fe1\u606f\u3001\u4e00\u4e2a\u7a7a\u503c\u4f4d\u56fe\uff08\u5982\u679c\u5b58\u5728\u7a7a\u503c\u5143\u7d20\uff09\uff0c\u7136\u540e\u4f9d\u6b21\u4fdd\u5b58\u6240\u6709\u5143\u7d20\u7684\u503c\u3002\u5f53\u5143\u7d20\u7c7b\u578b\u672c\u8eab\u4e5f\u662f\u53d8\u957f\u65f6\uff0c\u5b9a\u4f4d\u7b2c <em class=\"replaceable\"><code>N</code></em> \u4e2a\u5143\u7d20\u7684\u552f\u4e00\u529e\u6cd5\u5c31\u662f\u626b\u63cf\u5b83\u524d\u9762\u7684\u6240\u6709\u5143\u7d20\u3002\u8fd9\u79cd\u8868\u793a\u5f62\u5f0f\u56e0\u5176\u7d27\u51d1\u6027\u800c\u9002\u5408\u78c1\u76d8\u5b58\u50a8\uff0c\u4f46\u5bf9\u4e8e\u6570\u7ec4\u8ba1\u7b97\u800c\u8a00\uff0c\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u5c55\u5f00</span>\u201d</span>\u6216<span class=\"quote\">\u201c<span class=\"quote\">\u89e3\u6784</span>\u201d</span>\u7684\u8868\u793a\u4f1a\u66f4\u597d\uff0c\u56e0\u4e3a\u5176\u4e2d\u6240\u6709\u5143\u7d20\u7684\u8d77\u59cb\u4f4d\u7f6e\u90fd\u5df2\u8bc6\u522b\u51fa\u6765\u3002<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u673a\u5236\u901a\u8fc7\u5141\u8bb8\u6309\u5f15\u7528\u4f20\u9012\u7684 Datum \u6307\u5411\u6807\u51c6 varlena \u503c\uff08\u5373\u78c1\u76d8\u8868\u793a\uff09\u6216\u8005\u6307\u5411\u5185\u5b58\u4e2d\u67d0\u5904\u5c55\u5f00\u8868\u793a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c\u6765\u6ee1\u8db3\u8fd9\u4e00\u9700\u8981\u3002\u8fd9\u79cd\u5c55\u5f00\u8868\u793a\u7684\u5177\u4f53\u7ec6\u8282\u7531\u6570\u636e\u7c7b\u578b\u81ea\u884c\u51b3\u5b9a\uff0c\u4e0d\u8fc7\u5b83\u5fc5\u987b\u5177\u6709\u6807\u51c6\u5934\u90e8\uff0c\u5e76\u6ee1\u8db3 <code class=\"filename\">src/include/utils/expandeddatum.h</code> \u4e2d\u7ed9\u51fa\u7684\u5176\u4ed6 API \u8981\u6c42\u3002\u5904\u7406\u8be5\u6570\u636e\u7c7b\u578b\u7684 C \u7ea7\u51fd\u6570\u53ef\u4ee5\u9009\u62e9\u652f\u6301\u4efb\u4e00\u79cd\u8868\u793a\u3002\u4e0d\u77e5\u9053\u5c55\u5f00\u8868\u793a\u3001\u4f46\u53ea\u662f\u5bf9\u8f93\u5165\u5e94\u7528 <code class=\"function\">PG_DETOAST_DATUM</code> \u7684\u51fd\u6570\uff0c\u4f1a\u81ea\u52a8\u83b7\u5f97\u4f20\u7edf\u7684 varlena \u8868\u793a\uff1b\u56e0\u6b64\uff0c\u5bf9\u5c55\u5f00\u8868\u793a\u7684\u652f\u6301\u53ef\u4ee5\u9010\u6b65\u5f15\u5165\uff0c\u4e00\u6b21\u589e\u52a0\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\u3002</p>\n<p lang=\"zh\">\u6307\u5411\u5c55\u5f00\u503c\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u8fd8\u53ef\u8fdb\u4e00\u6b65\u5206\u4e3a<em class=\"firstterm\">\u53ef\u8bfb\u5199\uff08read-write\uff09</em>\u548c<em class=\"firstterm\">\u53ea\u8bfb\uff08read-only\uff09</em>\u6307\u9488\u3002\u65e0\u8bba\u54ea\u79cd\u65b9\u5f0f\uff0c\u88ab\u6307\u5411\u7684\u8868\u793a\u662f\u76f8\u540c\u7684\uff1b\u4f46\u6536\u5230\u53ef\u8bfb\u5199\u6307\u9488\u7684\u51fd\u6570\u53ef\u4ee5\u539f\u5730\u4fee\u6539\u6240\u5f15\u7528\u7684\u503c\uff0c\u800c\u6536\u5230\u53ea\u8bfb\u6307\u9488\u7684\u51fd\u6570\u5219\u4e0d\u53ef\u4ee5\uff0c\u5982\u679c\u5b83\u60f3\u751f\u6210\u8be5\u503c\u7684\u4fee\u6539\u7248\u672c\uff0c\u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u526f\u672c\u3002\u8fd9\u79cd\u533a\u5206\u4ee5\u53ca\u4e00\u4e9b\u76f8\u5173\u7ea6\u5b9a\uff0c\u4f7f\u5f97\u5728\u67e5\u8be2\u6267\u884c\u671f\u95f4\u53ef\u4ee5\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u5c55\u5f00\u503c\u590d\u5236\u3002</p>\n<p lang=\"zh\">\u5bf9\u4e8e\u6240\u6709\u7c7b\u578b\u7684\u5185\u5b58\u4e2d <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c<acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u90fd\u4f1a\u786e\u4fdd\u8fd9\u7c7b\u6307\u9488 datum \u4e0d\u4f1a\u610f\u5916\u5730\u88ab\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u3002\u5185\u5b58\u4e2d\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5728\u5b58\u50a8\u524d\u4f1a\u81ea\u52a8\u5c55\u5f00\u4e3a\u666e\u901a\u7684\u884c\u5185 varlena \u503c\uff0c\u5982\u679c\u8fd9\u6837\u4f1a\u4f7f\u627f\u8f7d\u5b83\u7684\u5143\u7ec4\u8fc7\u5927\uff0c\u8fd8\u53ef\u80fd\u8fdb\u4e00\u6b65\u8f6c\u6362\u4e3a\u78c1\u76d8\u4e0a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u3002</p>\n</div>\n</div>", "manual_path": "/docs/14/storage-toast.html", "localization": {"status": "complete", "sources": [{"url": "/docs/14/storage-toast.html", "method": "same-major semantic node", "sha256": "31e501bf22fc64eaae657696bc46645a07537e4a17c3e1cc3f00f6102a845726", "language": "zh", "matched_nodes": ["#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[2]", "#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[3]", "#STORAGE-TOAST/div[10]/p[3]", "#STORAGE-TOAST/div[10]/p[7]", "#STORAGE-TOAST/div[11]/p[1]", "#STORAGE-TOAST/div[11]/p[2]", "#STORAGE-TOAST/div[11]/p[3]", "#STORAGE-TOAST/div[11]/p[4]", "#STORAGE-TOAST/div[11]/p[5]", "#STORAGE-TOAST/div[1]/dl[0]/dt[0]", "#STORAGE-TOAST/div[1]/dl[0]/dt[1]", "#STORAGE-TOAST/p[4]", "#STORAGE-TOAST/p[5]", "#STORAGE-TOAST/p[8]", "#STORAGE-TOAST/p[9]"]}], "language": "zh", "original_text": {"/versions/14/description/0": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/versions/14/facts/0/label": "Definition scope", "/versions/14/facts/0/value": "Same-version core physical storage documentation", "/versions/14/related/1/label": "Storage Parameters"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "c19b83bfea63703f0b4a06a4580d9b304753a5882680ae11f071c7d9045a0336"}, "comparison_data": {"layouts": []}, "comparison_hash": "27341929154bfb55531f03501322b65af719c5561f3c4ddc9528a14aa4df69b5", "manual_language": "zh"}, "15": {"facts": [{"label": "\u5b9a\u4e49\u8303\u56f4", "value": "\u540c\u7248\u672c\u6838\u5fc3\u7269\u7406\u5b58\u50a8\u6587\u6863"}], "tables": [], "related": [{"url": "/wiki/tableam/?v=15", "label": "Table AM"}, {"url": "/wiki/relopts/?v=15", "label": "\u5b58\u50a8\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v15.19/postgresql-15.19.tar.bz2", "label": "15.19", "major": "15", "channel": "stable", "revision": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "sources": [{"url": "https://pg.center/docs/15/storage-toast.html", "path": "storage-toast.html", "label": "PostgreSQL 15 English manual", "sha256": "0f7eec53f41d4ebab1cdfbfa0286a58e5dea5f01b8006b57e6d7f2b7d23087f4", "language": "en", "original_url": "/docs/15/storage-toast.html"}], "sections": [], "signature": "", "description": ["\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002"], "manual_html": "<div class=\"sect1\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h2 class=\"title\">73.2.\u00a0TOAST</h2>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08<acronym class=\"acronym\">TOAST</acronym>, The Oversized-Attribute Storage Technique\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"productname\">PostgreSQL</span> \u4f7f\u7528\u56fa\u5b9a\u9875\u9762\u5927\u5c0f\uff08\u901a\u5e38\u4e3a 8 kB\uff09\uff0c\u5e76\u4e14\u4e0d\u5141\u8bb8\u5143\u7ec4\u8de8\u8d8a\u591a\u4e2a\u9875\u9762\u3002\u56e0\u6b64\uff0c\u65e0\u6cd5\u76f4\u63a5\u5b58\u50a8\u975e\u5e38\u5927\u7684\u5b57\u6bb5\u503c\u3002\u4e3a\u514b\u670d\u8fd9\u4e00\u9650\u5236\uff0c\u5927\u5b57\u6bb5\u503c\u4f1a\u88ab\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u62c6\u5206\u6210\u591a\u4e2a\u7269\u7406\u884c\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u5bf9\u7528\u6237\u662f\u900f\u660e\u7684\uff0c\u800c\u4e14\u5bf9\u5927\u90e8\u5206\u540e\u7aef\u4ee3\u7801\u7684\u5f71\u54cd\u5f88\u5c0f\u3002\u8fd9\u9879\u6280\u672f\u88ab\u4eb2\u5207\u5730\u79f0\u4e3a <acronym class=\"acronym\">TOAST</acronym>\uff08\u6216\u8005<span class=\"quote\">\u201c<span class=\"quote\">\u81ea\u5207\u7247\u9762\u5305\u95ee\u4e16\u4ee5\u6765\u6700\u68d2\u7684\u4e1c\u897f</span>\u201d</span>\uff09\u3002<acronym class=\"acronym\">TOAST</acronym> \u57fa\u7840\u8bbe\u65bd\u4e5f\u88ab\u7528\u4e8e\u6539\u8fdb\u5185\u5b58\u4e2d\u5927\u578b\u6570\u636e\u503c\u7684\u5904\u7406\u3002</p>\n<p lang=\"zh\">\u53ea\u6709\u90e8\u5206\u6570\u636e\u7c7b\u578b\u652f\u6301 TOAST\uff1b\u65e0\u9700\u8ba9\u4e0d\u4f1a\u4ea7\u751f\u5927\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u627f\u62c5\u989d\u5916\u5f00\u9500\u3002\u8981\u652f\u6301 TOAST\uff0c\u7c7b\u578b\u5fc5\u987b\u91c7\u7528\u53d8\u957f\uff08varlena\uff09\u8868\u793a\uff0c\u901a\u5e38\u5176\u5b58\u50a8\u503c\u7684\u7b2c\u4e00\u4e2a\u56db\u5b57\u8282\u5b57\u8bb0\u5f55\u603b\u5b57\u8282\u957f\u5ea6\uff0c\u5305\u62ec\u8be5\u957f\u5ea6\u5b57\u672c\u8eab\u3002TOAST \u4e0d\u9650\u5236\u7c7b\u578b\u8868\u793a\u7684\u5176\u4f59\u90e8\u5206\u3002\u7edf\u79f0\u4e3a TOAST \u503c\u7684\u7279\u6b8a\u8868\u793a\u901a\u8fc7\u4fee\u6539\u6216\u91cd\u65b0\u89e3\u91ca\u8fd9\u4e2a\u9996\u90e8\u957f\u5ea6\u5b57\u5de5\u4f5c\u3002\u56e0\u6b64\uff0c\u652f\u6301 TOAST \u7c7b\u578b\u7684 C \u5c42\u51fd\u6570\u5fc5\u987b\u8c28\u614e\u5904\u7406\u53ef\u80fd\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u8f93\u5165\uff1a\u5728\u89e3\u9664 TOAST \u8868\u793a\u524d\uff0c\u8f93\u5165\u53ef\u80fd\u5e76\u4e0d\u7531\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u52a0\u5b9e\u9645\u5185\u5bb9\u7ec4\u6210\u3002\u901a\u5e38\u5e94\u5728\u4efb\u4f55\u5904\u7406\u4e4b\u524d\u8c03\u7528 PG_DETOAST_DATUM\uff0c\u4f46\u67d0\u4e9b\u60c5\u5f62\u53ef\u91c7\u7528\u66f4\u9ad8\u6548\u7684\u65b9\u6cd5\uff0c\u8be6\u60c5\u53c2\u89c1\u7b2c 38.13.1 \u8282\u3002</p>\n<p lang=\"zh\">TOAST \u5360\u7528 varlena \u957f\u5ea6\u5b57\u7684\u4e24\u4e2a\u4f4d\uff1a\u5927\u7aef\u673a\u5668\u4f7f\u7528\u9ad8\u4f4d\uff0c\u5c0f\u7aef\u673a\u5668\u4f7f\u7528\u4f4e\u4f4d\uff0c\u56e0\u6b64\u652f\u6301 TOAST \u7684\u7c7b\u578b\u4e2d\uff0c\u4efb\u4f55\u503c\u7684\u903b\u8f91\u5927\u5c0f\u90fd\u9650\u4e8e 1 GB\uff082^30 - 1 \u5b57\u8282\uff09\u3002\u4e24\u4f4d\u5747\u4e3a\u96f6\u65f6\uff0c\u8be5\u503c\u662f\u666e\u901a\u7684\u672a\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u503c\uff0c\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u672c\u8eab\u5728\u5185\u7684\u603b\u5b57\u8282\u6570\u3002\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u7f6e\u4f4d\u65f6\uff0c\u8be5\u503c\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u800c\u975e\u901a\u5e38\u7684\u56db\u5b57\u8282\u9996\u90e8\uff0c\u8be5\u5b57\u8282\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u8282\u5728\u5185\u7684\u603b\u5927\u5c0f\u3002\u8fd9\u4f7f\u5c0f\u4e8e 127 \u5b57\u8282\u7684\u503c\u80fd\u591f\u7d27\u51d1\u5b58\u50a8\uff0c\u540c\u65f6\u4ecd\u5141\u8bb8\u7c7b\u578b\u5728\u9700\u8981\u65f6\u589e\u957f\u5230 1 GB\u3002\u5355\u5b57\u8282\u9996\u90e8\u7684\u503c\u65e0\u9700\u6309\u7279\u5b9a\u8fb9\u754c\u5bf9\u9f50\uff1b\u56db\u5b57\u8282\u9996\u90e8\u7684\u503c\u5219\u81f3\u5c11\u6309\u56db\u5b57\u8282\u8fb9\u754c\u5bf9\u9f50\u3002\u7701\u7565\u5bf9\u9f50\u586b\u5145\u8fd8\u80fd\u8282\u7701\u7a7a\u95f4\uff0c\u5bf9\u4e8e\u77ed\u503c\u5c24\u5176\u660e\u663e\u3002\u4e00\u4e2a\u7279\u6b8a\u60c5\u51b5\u662f\uff1a\u5982\u679c\u5355\u5b57\u8282\u9996\u90e8\u7684\u5176\u4f59\u4f4d\u5168\u4e3a\u96f6\u2014\u2014\u8fd9\u4e0d\u53ef\u80fd\u662f\u5305\u542b\u81ea\u8eab\u7684\u957f\u5ea6\u2014\u2014\u8be5\u503c\u5c31\u662f\u6307\u5411\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u5177\u4f53\u5f62\u5f0f\u89c1\u4e0b\u6587\u3002\u6307\u9488\u7684\u7c7b\u578b\u548c\u5927\u5c0f\u7531\u6570\u636e\u7b2c\u4e8c\u4e2a\u5b57\u8282\u4e2d\u7684\u4ee3\u7801\u51b3\u5b9a\u3002\u6700\u540e\uff0c\u5982\u679c\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u6e05\u96f6\uff0c\u800c\u76f8\u90bb\u4f4d\u7f6e\u4f4d\uff0c\u6570\u636e\u5185\u5bb9\u5c31\u5df2\u538b\u7f29\uff0c\u4f7f\u7528\u524d\u5fc5\u987b\u89e3\u538b\u3002\u6b64\u65f6\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u538b\u7f29\u540e\u6570\u636e\u7684\u603b\u5927\u5c0f\uff0c\u800c\u975e\u539f\u59cb\u6570\u636e\u5927\u5c0f\u3002\u884c\u5916\u6570\u636e\u4e5f\u53ef\u80fd\u538b\u7f29\uff0c\u4f46 varlena \u9996\u90e8\u4e0d\u8868\u660e\u8fd9\u4e00\u70b9\uff0c\u9700\u67e5\u770b TOAST \u6307\u9488\u7684\u5185\u5bb9\u3002</p>\n<p lang=\"zh\">\u65e0\u8bba\u662f\u884c\u5185\u538b\u7f29\u6570\u636e\u8fd8\u662f\u884c\u5916\u538b\u7f29\u6570\u636e\uff0c\u5176\u6240\u7528\u7684\u538b\u7f29\u6280\u672f\u90fd\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e <code class=\"literal\">COMPRESSION</code> \u5217\u9009\u9879\u6765\u6309\u5217\u9009\u62e9\uff0c\u8be5\u9009\u9879\u53ef\u5728 <code class=\"command\">CREATE TABLE</code> \u6216 <code class=\"command\">ALTER TABLE</code> \u4e2d\u6307\u5b9a\u3002\u5bf9\u672a\u663e\u5f0f\u8bbe\u7f6e\u7684\u5217\uff0c\u4f1a\u5728\u63d2\u5165\u6570\u636e\u65f6\u53c2\u8003\u53c2\u6570<a class=\"xref\" href=\"/docs/15/runtime-config-client.html#GUC-DEFAULT-TOAST-COMPRESSION\">default_toast_compression</a>\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u5982\u524d\u6240\u8ff0\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u6709\u591a\u79cd\u7c7b\u578b\u3002\u6700\u65e9\u3001\u4e5f\u6700\u5e38\u89c1\u7684\u4e00\u79cd\uff0c\u662f\u6307\u5411\u5b58\u50a8\u5728 <em class=\"firstterm\"><acronym class=\"acronym\">TOAST</acronym> \u8868</em>\u4e2d\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u8be5\u8868\u4e0e\u5305\u542b\u8be5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u672c\u8eab\u7684\u8868\u76f8\u5173\u8054\uff0c\u4f46\u4e0e\u4e4b\u5206\u79bb\u5b58\u50a8\u3002\u5f53\u4e00\u4e2a\u8981\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u7684\u5143\u7ec4\u8fc7\u5927\u800c\u65e0\u6cd5\u539f\u6837\u5b58\u50a8\u65f6\uff0c\u8fd9\u4e9b<em class=\"firstterm\">\u78c1\u76d8\u4e0a\u7684</em>\u6307\u9488 datum \u4f1a\u7531 <acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\uff08\u4f4d\u4e8e <code class=\"filename\">access/common/toast_internals.c</code>\uff09\u521b\u5efa\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/15/storage-toast.html#STORAGE-TOAST-ONDISK\" title=\"73.2.1.\u00a0\u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a073.2.1\u00a0\u8282</a>\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u53ef\u4ee5\u5305\u542b\u6307\u5411\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\u3002\u8fd9\u7c7b datum \u5fc5\u7136\u662f\u77ed\u547d\u7684\uff0c\u6c38\u8fdc\u4e0d\u4f1a\u51fa\u73b0\u5728\u78c1\u76d8\u4e0a\uff0c\u4f46\u5b83\u4eec\u5bf9\u4e8e\u907f\u514d\u5927\u578b\u6570\u636e\u503c\u7684\u590d\u5236\u548c\u5197\u4f59\u5904\u7406\u975e\u5e38\u6709\u7528\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/15/storage-toast.html#STORAGE-TOAST-INMEMORY\" title=\"73.2.2.\u00a0\u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a073.2.2\u00a0\u8282</a>\u3002</p>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/15/storage-toast.html#STORAGE-TOAST-ONDISK\">73.2.1. \u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u5982\u679c\u8868\u4e2d\u6709\u5217\u652f\u6301 TOAST\uff0c\u8868\u5c31\u4f1a\u5173\u8054\u4e00\u4e2a TOAST \u8868\uff0c\u5176 OID \u5b58\u50a8\u5728 pg_class.reltoastrelid \u4e2d\u3002\u78c1\u76d8\u4e0a\u7684 TOAST \u503c\u5b58\u653e\u5728\u8be5 TOAST \u8868\u4e2d\uff0c\u8be6\u60c5\u89c1\u4e0b\u6587\u3002</p>\n<p lang=\"zh\">\u884c\u5916\u503c\u5728\u538b\u7f29\u540e\uff08\u5982\u679c\u4f7f\u7528\u538b\u7f29\uff09\u62c6\u6210\u6700\u591a TOAST_MAX_CHUNK_SIZE \u5b57\u8282\u7684\u5757\u3002\u9ed8\u8ba4\u9009\u62e9\u6b64\u503c\uff0c\u4f7f\u4e00\u4e2a\u9875\u9762\u80fd\u88c5\u4e0b\u56db\u4e2a\u5757\u884c\uff0c\u56e0\u6b64\u7ea6\u4e3a 2000 \u5b57\u8282\u3002\u6bcf\u5757\u4f5c\u4e3a\u72ec\u7acb\u7684\u4e00\u884c\u5b58\u5165\u6240\u5c5e\u8868\u7684 TOAST \u8868\u3002\u6bcf\u4e2a TOAST \u8868\u90fd\u6709 chunk_id\uff08\u6807\u8bc6\u7279\u5b9a TOAST \u503c\u7684 OID\uff09\u3001chunk_seq\uff08\u8be5\u5757\u5728\u503c\u4e2d\u7684\u5e8f\u53f7\uff09\u548c chunk_data\uff08\u5b9e\u9645\u5757\u6570\u636e\uff09\u4e09\u5217\u3002chunk_id \u4e0e chunk_seq \u4e0a\u7684\u552f\u4e00\u7d22\u5f15\u7528\u4e8e\u5feb\u901f\u68c0\u7d22\u503c\u3002\u56e0\u6b64\uff0c\u8868\u793a\u78c1\u76d8\u884c\u5916 TOAST \u503c\u7684\u6307\u9488\u9700\u8981\u5b58\u50a8 TOAST \u8868\u7684 OID\uff0c\u4ee5\u53ca\u7279\u5b9a\u503c\u7684 OID\uff0c\u5373 chunk_id\u3002\u4e3a\u65b9\u4fbf\u4f7f\u7528\uff0c\u6307\u9488\u8fd8\u5b58\u50a8\u903b\u8f91\u6570\u636e\u5927\u5c0f\uff08\u539f\u59cb\u672a\u538b\u7f29\u957f\u5ea6\uff09\u548c\u7269\u7406\u5b58\u50a8\u5927\u5c0f\uff08\u4f7f\u7528\u538b\u7f29\u65f6\u4e0e\u539f\u59cb\u5927\u5c0f\u4e0d\u540c\uff09\uff0c\u4ee5\u53ca\u6240\u4f7f\u7528\u7684\u538b\u7f29\u65b9\u6cd5\uff08\u5982\u679c\u6709\uff09\u3002\u7b97\u4e0a varlena \u9996\u90e8\u5b57\u8282\uff0c\u78c1\u76d8 TOAST \u6307\u9488\u7684\u603b\u5927\u5c0f\u4e3a 18 \u5b57\u8282\uff0c\u4e0e\u5176\u8868\u793a\u7684\u503c\u7684\u5b9e\u9645\u5927\u5c0f\u65e0\u5173\u3002</p>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u53ea\u6709\u5728\u8981\u5b58\u5165\u8868\u4e2d\u7684\u884c\u503c\u5bbd\u4e8e <code class=\"symbol\">TOAST_TUPLE_THRESHOLD</code> \u5b57\u8282\uff08\u901a\u5e38\u4e3a 2 kB\uff09\u65f6\u624d\u4f1a\u88ab\u89e6\u53d1\u3002<acronym class=\"acronym\">TOAST</acronym> \u4ee3\u7801\u4f1a\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u628a\u5b57\u6bb5\u503c\u79fb\u5230\u884c\u5916\uff0c\u76f4\u5230\u8be5\u884c\u503c\u77ed\u4e8e <code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u5b57\u8282\uff08\u901a\u5e38\u4e5f\u4e3a 2 kB\uff0c\u4f46\u53ef\u8c03\u6574\uff09\uff0c\u6216\u8005\u5df2\u7ecf\u65e0\u6cd5\u518d\u83b7\u5f97\u66f4\u591a\u6536\u76ca\u3002\u5728 UPDATE \u64cd\u4f5c\u4e2d\uff0c\u672a\u66f4\u6539\u5b57\u6bb5\u7684\u503c\u901a\u5e38\u4f1a\u539f\u6837\u4fdd\u7559\uff1b\u56e0\u6b64\uff0c\u5982\u679c\u66f4\u65b0\u4e00\u884c\u65f6\u5176\u884c\u5916\u503c\u90fd\u6ca1\u6709\u53d8\u5316\uff0c\u4fbf\u4e0d\u4f1a\u4ea7\u751f <acronym class=\"acronym\">TOAST</acronym> \u6210\u672c\u3002</p>\n<p lang=\"zh\">TOAST \u7ba1\u7406\u4ee3\u7801\u652f\u6301\u56db\u79cd\u5c06\u53ef TOAST \u5217\u5b58\u50a8\u5230\u78c1\u76d8\u7684\u7b56\u7565\uff1a</p>\n<div class=\"itemizedlist\">\n<ul class=\"itemizedlist\">\n<li class=\"listitem\" lang=\"zh\">PLAIN \u7981\u6b62\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\u3002\u5bf9\u4e8e\u4e0d\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\uff0c\u8fd9\u662f\u552f\u4e00\u53ef\u7528\u7684\u5217\u5b58\u50a8\u7b56\u7565\u3002</li>\n<li class=\"listitem\" lang=\"zh\">EXTENDED \u540c\u65f6\u5141\u8bb8\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u662f\u5927\u591a\u6570\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u7684\u9ed8\u8ba4\u7b56\u7565\u3002\u5148\u5c1d\u8bd5\u538b\u7f29\uff1b\u5982\u679c\u884c\u4ecd\u7136\u8fc7\u5927\uff0c\u518d\u4f7f\u7528\u884c\u5916\u5b58\u50a8\u3002</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">EXTERNAL</code> \u5141\u8bb8\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u4e0d\u5141\u8bb8\u538b\u7f29\u3002\u4f7f\u7528 <code class=\"literal\">EXTERNAL</code> \u4f1a\u8ba9\u5bbd <code class=\"type\">text</code> \u548c <code class=\"type\">bytea</code> \u5217\u4e0a\u7684\u5b50\u4e32\u64cd\u4f5c\u66f4\u5feb\uff08\u4ee3\u4ef7\u662f\u5360\u7528\u66f4\u591a\u5b58\u50a8\u7a7a\u95f4\uff09\uff0c\u56e0\u4e3a\u5728\u503c\u672a\u538b\u7f29\u65f6\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u7ecf\u8fc7\u4f18\u5316\uff0c\u53ea\u9700\u63d0\u53d6\u884c\u5916\u503c\u4e2d\u6240\u9700\u7684\u90e8\u5206\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">MAIN</code> \u5141\u8bb8\u538b\u7f29\uff0c\u4f46\u4e0d\u5141\u8bb8\u884c\u5916\u5b58\u50a8\u3002\uff08\u5b9e\u9645\u4e0a\uff0c\u5bf9\u4e8e\u8fd9\u7c7b\u5217\uff0c\u4ecd\u7136\u53ef\u80fd\u8fdb\u884c\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u53ea\u6709\u5728\u522b\u65e0\u4ed6\u6cd5\u3001\u5fc5\u987b\u8fd9\u6837\u505a\u624d\u80fd\u8ba9\u884c\u8db3\u591f\u5c0f\u4ee5\u653e\u5165\u9875\u9762\u65f6\uff0c\u624d\u4f1a\u628a\u5b83\u4f5c\u4e3a\u6700\u540e\u624b\u6bb5\u3002\uff09</p>\n</li>\n</ul>\n</div>\n<p lang=\"zh\">\u6bcf\u79cd\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u90fd\u4e3a\u5176\u5217\u6307\u5b9a\u9ed8\u8ba4\u7b56\u7565\uff0c\u4f46\u5177\u4f53\u8868\u5217\u7684\u7b56\u7565\u53ef\u901a\u8fc7 ALTER TABLE ... SET STORAGE \u4fee\u6539\u3002</p>\n<p lang=\"zh\"><code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u4e5f\u53ef\u4ee5\u9488\u5bf9\u6bcf\u4e2a\u8868\u901a\u8fc7 <a class=\"link\" href=\"/docs/15/sql-altertable.html\" title=\"ALTER TABLE\"><code class=\"command\">ALTER TABLE ... SET (toast_tuple_target = N)</code></a> \u8fdb\u884c\u8c03\u6574\u3002</p>\n<p lang=\"zh\">\u4e0e\u8ba9\u884c\u503c\u8de8\u9875\u7b49\u66f4\u76f4\u63a5\u7684\u505a\u6cd5\u76f8\u6bd4\uff0c\u6b64\u65b9\u6848\u6709\u591a\u9879\u4f18\u52bf\u3002\u5047\u8bbe\u67e5\u8be2\u901a\u5e38\u6309\u8f83\u5c0f\u952e\u503c\u8fdb\u884c\u6bd4\u8f83\u7b5b\u9009\uff0c\u6267\u884c\u5668\u7684\u5927\u90e8\u5206\u5de5\u4f5c\u5c31\u53ef\u53ea\u4f7f\u7528\u4e3b\u884c\u6570\u636e\u3002TOAST \u5c5e\u6027\u7684\u5927\u503c\u4ec5\u5728\u5c06\u7ed3\u679c\u53d1\u9001\u7ed9\u5ba2\u6237\u7aef\u65f6\u624d\u8bfb\u53d6\uff0c\u800c\u4e14\u524d\u63d0\u662f\u67e5\u8be2\u786e\u5b9e\u9009\u62e9\u4e86\u8fd9\u4e9b\u503c\u3002\u56e0\u800c\u4e3b\u8868\u663e\u8457\u7f29\u5c0f\uff0c\u5171\u4eab\u7f13\u51b2\u533a\u53ef\u5bb9\u7eb3\u66f4\u591a\u884c\uff1b\u6392\u5e8f\u6570\u636e\u96c6\u4e5f\u4f1a\u7f29\u5c0f\uff0c\u66f4\u5bb9\u6613\u5b8c\u5168\u5728\u5185\u5b58\u4e2d\u6392\u5e8f\u3002\u539f\u6587\u4e2d\u7684\u4e00\u4e2a\u5c0f\u6d4b\u8bd5\u8868\u660e\uff1a\u5305\u542b\u5178\u578b HTML \u9875\u9762\u53ca URL \u7684\u8868\u8fde\u540c TOAST \u8868\uff0c\u5360\u7528\u7ea6\u4e3a\u539f\u59cb\u6570\u636e\u7684\u4e00\u534a\uff1b\u4e3b\u8868\u53ea\u5360\u603b\u6570\u636e\u7ea6 10%\uff0c\u5305\u62ec URL \u548c\u5c11\u91cf\u5c0f HTML \u9875\u9762\u3002\u4e0e\u5c06\u6240\u6709 HTML \u9875\u9762\u622a\u77ed\u81f3 7 kB \u4ee5\u4fbf\u88c5\u5165\u884c\u5185\u3001\u672a\u4f7f\u7528 TOAST \u7684\u5bf9\u7167\u8868\u76f8\u6bd4\uff0c\u8fd0\u884c\u65f6\u95f4\u6ca1\u6709\u5dee\u5f02\u3002</p>\n</div>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/15/storage-toast.html#STORAGE-TOAST-INMEMORY\">73.2.2. \u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ef\u4ee5\u6307\u5411\u4e0d\u5728\u78c1\u76d8\u4e0a\u3001\u800c\u4f4d\u4e8e\u5f53\u524d\u670d\u52a1\u5668\u8fdb\u7a0b\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u6570\u636e\u3002\u8fd9\u7c7b\u6307\u9488\u663e\u7136\u4e0d\u53ef\u80fd\u957f\u671f\u5b58\u5728\uff0c\u4f46\u4ecd\u7136\u5f88\u6709\u7528\u3002\u76ee\u524d\u6709\u4e24\u4e2a\u5b50\u60c5\u51b5\uff1a\u6307\u5411<em class=\"firstterm\">\u95f4\u63a5</em>\u6570\u636e\u7684\u6307\u9488\uff0c\u4ee5\u53ca\u6307\u5411<em class=\"firstterm\">\u5c55\u5f00</em>\u6570\u636e\u7684\u6307\u9488\u3002</p>\n<p lang=\"zh\">\u95f4\u63a5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ea\u662f\u7b80\u5355\u5730\u6307\u5411\u67d0\u5904\u5185\u5b58\u4e2d\u5b58\u653e\u7684\u4e00\u4e2a\u975e\u95f4\u63a5 varlena \u503c\u3002\u8fd9\u4e00\u60c5\u51b5\u6700\u521d\u53ea\u662f\u4f5c\u4e3a\u6982\u5ff5\u9a8c\u8bc1\u800c\u521b\u5efa\uff0c\u4f46\u76ee\u524d\u5728\u903b\u8f91\u89e3\u7801\u671f\u95f4\u4f1a\u7528\u5230\u5b83\uff0c\u4ee5\u907f\u514d\u53ef\u80fd\u4e0d\u5f97\u4e0d\u521b\u5efa\u8d85\u8fc7 1 GB \u7684\u7269\u7406\u5143\u7ec4\uff08\u628a\u6240\u6709\u884c\u5916\u5b57\u6bb5\u503c\u90fd\u62c9\u5165\u5143\u7ec4\u5c31\u53ef\u80fd\u5bfc\u81f4\u8fd9\u79cd\u60c5\u51b5\uff09\u3002\u8fd9\u79cd\u673a\u5236\u7684\u7528\u9014\u6709\u9650\uff0c\u56e0\u4e3a\u521b\u5efa\u8be5\u6307\u9488 datum \u7684\u4e00\u65b9\u5fc5\u987b\u5b8c\u5168\u8d1f\u8d23\u786e\u4fdd\u88ab\u5f15\u7528\u6570\u636e\u5728\u6307\u9488\u53ef\u80fd\u5b58\u5728\u7684\u6574\u4e2a\u671f\u95f4\u90fd\u4fdd\u6301\u6709\u6548\uff0c\u800c\u4e14\u7cfb\u7edf\u5e76\u6ca1\u6709\u4efb\u4f55\u57fa\u7840\u8bbe\u65bd\u6765\u5e2e\u52a9\u505a\u5230\u8fd9\u4e00\u70b9\u3002</p>\n<p lang=\"zh\">\u5c55\u5f00\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5bf9\u90a3\u4e9b\u78c1\u76d8\u8868\u793a\u5f62\u5f0f\u5e76\u4e0d\u7279\u522b\u9002\u5408\u8ba1\u7b97\u7528\u9014\u7684\u590d\u6742\u6570\u636e\u7c7b\u578b\u5f88\u6709\u7528\u3002\u4ee5\u6807\u51c6\u7684 <span class=\"productname\">PostgreSQL</span> \u6570\u7ec4 varlena \u8868\u793a\u4e3a\u4f8b\uff0c\u5b83\u5305\u542b\u7ef4\u5ea6\u4fe1\u606f\u3001\u4e00\u4e2a\u7a7a\u503c\u4f4d\u56fe\uff08\u5982\u679c\u5b58\u5728\u7a7a\u503c\u5143\u7d20\uff09\uff0c\u7136\u540e\u4f9d\u6b21\u4fdd\u5b58\u6240\u6709\u5143\u7d20\u7684\u503c\u3002\u5f53\u5143\u7d20\u7c7b\u578b\u672c\u8eab\u4e5f\u662f\u53d8\u957f\u65f6\uff0c\u5b9a\u4f4d\u7b2c <em class=\"replaceable\"><code>N</code></em> \u4e2a\u5143\u7d20\u7684\u552f\u4e00\u529e\u6cd5\u5c31\u662f\u626b\u63cf\u5b83\u524d\u9762\u7684\u6240\u6709\u5143\u7d20\u3002\u8fd9\u79cd\u8868\u793a\u5f62\u5f0f\u56e0\u5176\u7d27\u51d1\u6027\u800c\u9002\u5408\u78c1\u76d8\u5b58\u50a8\uff0c\u4f46\u5bf9\u4e8e\u6570\u7ec4\u8ba1\u7b97\u800c\u8a00\uff0c\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u5c55\u5f00</span>\u201d</span>\u6216<span class=\"quote\">\u201c<span class=\"quote\">\u89e3\u6784</span>\u201d</span>\u7684\u8868\u793a\u4f1a\u66f4\u597d\uff0c\u56e0\u4e3a\u5176\u4e2d\u6240\u6709\u5143\u7d20\u7684\u8d77\u59cb\u4f4d\u7f6e\u90fd\u5df2\u8bc6\u522b\u51fa\u6765\u3002<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u673a\u5236\u901a\u8fc7\u5141\u8bb8\u6309\u5f15\u7528\u4f20\u9012\u7684 Datum \u6307\u5411\u6807\u51c6 varlena \u503c\uff08\u5373\u78c1\u76d8\u8868\u793a\uff09\u6216\u8005\u6307\u5411\u5185\u5b58\u4e2d\u67d0\u5904\u5c55\u5f00\u8868\u793a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c\u6765\u6ee1\u8db3\u8fd9\u4e00\u9700\u8981\u3002\u8fd9\u79cd\u5c55\u5f00\u8868\u793a\u7684\u5177\u4f53\u7ec6\u8282\u7531\u6570\u636e\u7c7b\u578b\u81ea\u884c\u51b3\u5b9a\uff0c\u4e0d\u8fc7\u5b83\u5fc5\u987b\u5177\u6709\u6807\u51c6\u5934\u90e8\uff0c\u5e76\u6ee1\u8db3 <code class=\"filename\">src/include/utils/expandeddatum.h</code> \u4e2d\u7ed9\u51fa\u7684\u5176\u4ed6 API \u8981\u6c42\u3002\u5904\u7406\u8be5\u6570\u636e\u7c7b\u578b\u7684 C \u7ea7\u51fd\u6570\u53ef\u4ee5\u9009\u62e9\u652f\u6301\u4efb\u4e00\u79cd\u8868\u793a\u3002\u4e0d\u77e5\u9053\u5c55\u5f00\u8868\u793a\u3001\u4f46\u53ea\u662f\u5bf9\u8f93\u5165\u5e94\u7528 <code class=\"function\">PG_DETOAST_DATUM</code> \u7684\u51fd\u6570\uff0c\u4f1a\u81ea\u52a8\u83b7\u5f97\u4f20\u7edf\u7684 varlena \u8868\u793a\uff1b\u56e0\u6b64\uff0c\u5bf9\u5c55\u5f00\u8868\u793a\u7684\u652f\u6301\u53ef\u4ee5\u9010\u6b65\u5f15\u5165\uff0c\u4e00\u6b21\u589e\u52a0\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\u3002</p>\n<p lang=\"zh\">\u6307\u5411\u5c55\u5f00\u503c\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u8fd8\u53ef\u8fdb\u4e00\u6b65\u5206\u4e3a<em class=\"firstterm\">\u53ef\u8bfb\u5199\uff08read-write\uff09</em>\u548c<em class=\"firstterm\">\u53ea\u8bfb\uff08read-only\uff09</em>\u6307\u9488\u3002\u65e0\u8bba\u54ea\u79cd\u65b9\u5f0f\uff0c\u88ab\u6307\u5411\u7684\u8868\u793a\u662f\u76f8\u540c\u7684\uff1b\u4f46\u6536\u5230\u53ef\u8bfb\u5199\u6307\u9488\u7684\u51fd\u6570\u53ef\u4ee5\u539f\u5730\u4fee\u6539\u6240\u5f15\u7528\u7684\u503c\uff0c\u800c\u6536\u5230\u53ea\u8bfb\u6307\u9488\u7684\u51fd\u6570\u5219\u4e0d\u53ef\u4ee5\uff0c\u5982\u679c\u5b83\u60f3\u751f\u6210\u8be5\u503c\u7684\u4fee\u6539\u7248\u672c\uff0c\u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u526f\u672c\u3002\u8fd9\u79cd\u533a\u5206\u4ee5\u53ca\u4e00\u4e9b\u76f8\u5173\u7ea6\u5b9a\uff0c\u4f7f\u5f97\u5728\u67e5\u8be2\u6267\u884c\u671f\u95f4\u53ef\u4ee5\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u5c55\u5f00\u503c\u590d\u5236\u3002</p>\n<p lang=\"zh\">\u5bf9\u4e8e\u6240\u6709\u7c7b\u578b\u7684\u5185\u5b58\u4e2d <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c<acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u90fd\u4f1a\u786e\u4fdd\u8fd9\u7c7b\u6307\u9488 datum \u4e0d\u4f1a\u610f\u5916\u5730\u88ab\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u3002\u5185\u5b58\u4e2d\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5728\u5b58\u50a8\u524d\u4f1a\u81ea\u52a8\u5c55\u5f00\u4e3a\u666e\u901a\u7684\u884c\u5185 varlena \u503c\uff0c\u5982\u679c\u8fd9\u6837\u4f1a\u4f7f\u627f\u8f7d\u5b83\u7684\u5143\u7ec4\u8fc7\u5927\uff0c\u8fd8\u53ef\u80fd\u8fdb\u4e00\u6b65\u8f6c\u6362\u4e3a\u78c1\u76d8\u4e0a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u3002</p>\n</div>\n</div>", "manual_path": "/docs/15/storage-toast.html", "localization": {"status": "complete", "sources": [{"url": "/docs/15/storage-toast.html", "method": "same-major semantic node", "sha256": "87dba80c8205b5973a513d476f981c2818288d81fe3bc1a3b6e20f955f5da0ce", "language": "zh", "matched_nodes": ["#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[2]", "#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[3]", "#STORAGE-TOAST/div[10]/p[3]", "#STORAGE-TOAST/div[10]/p[7]", "#STORAGE-TOAST/div[11]/p[1]", "#STORAGE-TOAST/div[11]/p[2]", "#STORAGE-TOAST/div[11]/p[3]", "#STORAGE-TOAST/div[11]/p[4]", "#STORAGE-TOAST/div[11]/p[5]", "#STORAGE-TOAST/div[1]/dl[0]/dt[0]", "#STORAGE-TOAST/div[1]/dl[0]/dt[1]", "#STORAGE-TOAST/p[4]", "#STORAGE-TOAST/p[5]", "#STORAGE-TOAST/p[8]", "#STORAGE-TOAST/p[9]"]}], "language": "zh", "original_text": {"/versions/15/description/0": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/versions/15/facts/0/label": "Definition scope", "/versions/15/facts/0/value": "Same-version core physical storage documentation", "/versions/15/related/1/label": "Storage Parameters"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "75c8c76de1b612eea8a694cd31d7586f5c2ade5062688654dad87b3c16b1dd90"}, "comparison_data": {"layouts": []}, "comparison_hash": "27341929154bfb55531f03501322b65af719c5561f3c4ddc9528a14aa4df69b5", "manual_language": "zh"}, "16": {"facts": [{"label": "\u5b9a\u4e49\u8303\u56f4", "value": "\u540c\u7248\u672c\u6838\u5fc3\u7269\u7406\u5b58\u50a8\u6587\u6863"}], "tables": [], "related": [{"url": "/wiki/tableam/?v=16", "label": "Table AM"}, {"url": "/wiki/relopts/?v=16", "label": "\u5b58\u50a8\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v16.15/postgresql-16.15.tar.bz2", "label": "16.15", "major": "16", "channel": "stable", "revision": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "sources": [{"url": "https://pg.center/docs/16/storage-toast.html", "path": "storage-toast.html", "label": "PostgreSQL 16 English manual", "sha256": "64b89a5b903511938d799ec875ceeb9d740720f73c362640c8219d2e15ddb335", "language": "en", "original_url": "/docs/16/storage-toast.html"}], "sections": [], "signature": "", "description": ["\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002"], "manual_html": "<div class=\"sect1\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h2 class=\"title\">73.2.\u00a0TOAST </h2>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08<acronym class=\"acronym\">TOAST</acronym>, The Oversized-Attribute Storage Technique\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"productname\">PostgreSQL</span> \u4f7f\u7528\u56fa\u5b9a\u9875\u9762\u5927\u5c0f\uff08\u901a\u5e38\u4e3a 8 kB\uff09\uff0c\u5e76\u4e14\u4e0d\u5141\u8bb8\u5143\u7ec4\u8de8\u8d8a\u591a\u4e2a\u9875\u9762\u3002\u56e0\u6b64\uff0c\u65e0\u6cd5\u76f4\u63a5\u5b58\u50a8\u975e\u5e38\u5927\u7684\u5b57\u6bb5\u503c\u3002\u4e3a\u514b\u670d\u8fd9\u4e00\u9650\u5236\uff0c\u5927\u5b57\u6bb5\u503c\u4f1a\u88ab\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u62c6\u5206\u6210\u591a\u4e2a\u7269\u7406\u884c\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u5bf9\u7528\u6237\u662f\u900f\u660e\u7684\uff0c\u800c\u4e14\u5bf9\u5927\u90e8\u5206\u540e\u7aef\u4ee3\u7801\u7684\u5f71\u54cd\u5f88\u5c0f\u3002\u8fd9\u9879\u6280\u672f\u88ab\u4eb2\u5207\u5730\u79f0\u4e3a <acronym class=\"acronym\">TOAST</acronym>\uff08\u6216\u8005<span class=\"quote\">\u201c<span class=\"quote\">\u81ea\u5207\u7247\u9762\u5305\u95ee\u4e16\u4ee5\u6765\u6700\u68d2\u7684\u4e1c\u897f</span>\u201d</span>\uff09\u3002<acronym class=\"acronym\">TOAST</acronym> \u57fa\u7840\u8bbe\u65bd\u4e5f\u88ab\u7528\u4e8e\u6539\u8fdb\u5185\u5b58\u4e2d\u5927\u578b\u6570\u636e\u503c\u7684\u5904\u7406\u3002</p>\n<p lang=\"zh\">\u53ea\u6709\u90e8\u5206\u6570\u636e\u7c7b\u578b\u652f\u6301 TOAST\uff1b\u65e0\u9700\u8ba9\u4e0d\u4f1a\u4ea7\u751f\u5927\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u627f\u62c5\u989d\u5916\u5f00\u9500\u3002\u8981\u652f\u6301 TOAST\uff0c\u7c7b\u578b\u5fc5\u987b\u91c7\u7528\u53d8\u957f\uff08varlena\uff09\u8868\u793a\uff0c\u901a\u5e38\u5176\u5b58\u50a8\u503c\u7684\u7b2c\u4e00\u4e2a\u56db\u5b57\u8282\u5b57\u8bb0\u5f55\u603b\u5b57\u8282\u957f\u5ea6\uff0c\u5305\u62ec\u8be5\u957f\u5ea6\u5b57\u672c\u8eab\u3002TOAST \u4e0d\u9650\u5236\u7c7b\u578b\u8868\u793a\u7684\u5176\u4f59\u90e8\u5206\u3002\u7edf\u79f0\u4e3a TOAST \u503c\u7684\u7279\u6b8a\u8868\u793a\u901a\u8fc7\u4fee\u6539\u6216\u91cd\u65b0\u89e3\u91ca\u8fd9\u4e2a\u9996\u90e8\u957f\u5ea6\u5b57\u5de5\u4f5c\u3002\u56e0\u6b64\uff0c\u652f\u6301 TOAST \u7c7b\u578b\u7684 C \u5c42\u51fd\u6570\u5fc5\u987b\u8c28\u614e\u5904\u7406\u53ef\u80fd\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u8f93\u5165\uff1a\u5728\u89e3\u9664 TOAST \u8868\u793a\u524d\uff0c\u8f93\u5165\u53ef\u80fd\u5e76\u4e0d\u7531\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u52a0\u5b9e\u9645\u5185\u5bb9\u7ec4\u6210\u3002\u901a\u5e38\u5e94\u5728\u4efb\u4f55\u5904\u7406\u4e4b\u524d\u8c03\u7528 PG_DETOAST_DATUM\uff0c\u4f46\u67d0\u4e9b\u60c5\u5f62\u53ef\u91c7\u7528\u66f4\u9ad8\u6548\u7684\u65b9\u6cd5\uff0c\u8be6\u60c5\u53c2\u89c1\u7b2c 38.13.1 \u8282\u3002</p>\n<p lang=\"zh\">TOAST \u5360\u7528 varlena \u957f\u5ea6\u5b57\u7684\u4e24\u4e2a\u4f4d\uff1a\u5927\u7aef\u673a\u5668\u4f7f\u7528\u9ad8\u4f4d\uff0c\u5c0f\u7aef\u673a\u5668\u4f7f\u7528\u4f4e\u4f4d\uff0c\u56e0\u6b64\u652f\u6301 TOAST \u7684\u7c7b\u578b\u4e2d\uff0c\u4efb\u4f55\u503c\u7684\u903b\u8f91\u5927\u5c0f\u90fd\u9650\u4e8e 1 GB\uff082^30 - 1 \u5b57\u8282\uff09\u3002\u4e24\u4f4d\u5747\u4e3a\u96f6\u65f6\uff0c\u8be5\u503c\u662f\u666e\u901a\u7684\u672a\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u503c\uff0c\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u672c\u8eab\u5728\u5185\u7684\u603b\u5b57\u8282\u6570\u3002\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u7f6e\u4f4d\u65f6\uff0c\u8be5\u503c\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u800c\u975e\u901a\u5e38\u7684\u56db\u5b57\u8282\u9996\u90e8\uff0c\u8be5\u5b57\u8282\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u8282\u5728\u5185\u7684\u603b\u5927\u5c0f\u3002\u8fd9\u4f7f\u5c0f\u4e8e 127 \u5b57\u8282\u7684\u503c\u80fd\u591f\u7d27\u51d1\u5b58\u50a8\uff0c\u540c\u65f6\u4ecd\u5141\u8bb8\u7c7b\u578b\u5728\u9700\u8981\u65f6\u589e\u957f\u5230 1 GB\u3002\u5355\u5b57\u8282\u9996\u90e8\u7684\u503c\u65e0\u9700\u6309\u7279\u5b9a\u8fb9\u754c\u5bf9\u9f50\uff1b\u56db\u5b57\u8282\u9996\u90e8\u7684\u503c\u5219\u81f3\u5c11\u6309\u56db\u5b57\u8282\u8fb9\u754c\u5bf9\u9f50\u3002\u7701\u7565\u5bf9\u9f50\u586b\u5145\u8fd8\u80fd\u8282\u7701\u7a7a\u95f4\uff0c\u5bf9\u4e8e\u77ed\u503c\u5c24\u5176\u660e\u663e\u3002\u4e00\u4e2a\u7279\u6b8a\u60c5\u51b5\u662f\uff1a\u5982\u679c\u5355\u5b57\u8282\u9996\u90e8\u7684\u5176\u4f59\u4f4d\u5168\u4e3a\u96f6\u2014\u2014\u8fd9\u4e0d\u53ef\u80fd\u662f\u5305\u542b\u81ea\u8eab\u7684\u957f\u5ea6\u2014\u2014\u8be5\u503c\u5c31\u662f\u6307\u5411\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u5177\u4f53\u5f62\u5f0f\u89c1\u4e0b\u6587\u3002\u6307\u9488\u7684\u7c7b\u578b\u548c\u5927\u5c0f\u7531\u6570\u636e\u7b2c\u4e8c\u4e2a\u5b57\u8282\u4e2d\u7684\u4ee3\u7801\u51b3\u5b9a\u3002\u6700\u540e\uff0c\u5982\u679c\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u6e05\u96f6\uff0c\u800c\u76f8\u90bb\u4f4d\u7f6e\u4f4d\uff0c\u6570\u636e\u5185\u5bb9\u5c31\u5df2\u538b\u7f29\uff0c\u4f7f\u7528\u524d\u5fc5\u987b\u89e3\u538b\u3002\u6b64\u65f6\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u538b\u7f29\u540e\u6570\u636e\u7684\u603b\u5927\u5c0f\uff0c\u800c\u975e\u539f\u59cb\u6570\u636e\u5927\u5c0f\u3002\u884c\u5916\u6570\u636e\u4e5f\u53ef\u80fd\u538b\u7f29\uff0c\u4f46 varlena \u9996\u90e8\u4e0d\u8868\u660e\u8fd9\u4e00\u70b9\uff0c\u9700\u67e5\u770b TOAST \u6307\u9488\u7684\u5185\u5bb9\u3002</p>\n<p lang=\"zh\">\u65e0\u8bba\u662f\u884c\u5185\u538b\u7f29\u6570\u636e\u8fd8\u662f\u884c\u5916\u538b\u7f29\u6570\u636e\uff0c\u5176\u6240\u7528\u7684\u538b\u7f29\u6280\u672f\u90fd\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e <code class=\"literal\">COMPRESSION</code> \u5217\u9009\u9879\u6765\u6309\u5217\u9009\u62e9\uff0c\u8be5\u9009\u9879\u53ef\u5728 <code class=\"command\">CREATE TABLE</code> \u6216 <code class=\"command\">ALTER TABLE</code> \u4e2d\u6307\u5b9a\u3002\u5bf9\u672a\u663e\u5f0f\u8bbe\u7f6e\u7684\u5217\uff0c\u4f1a\u5728\u63d2\u5165\u6570\u636e\u65f6\u53c2\u8003\u53c2\u6570<a class=\"xref\" href=\"/docs/16/runtime-config-client.html#GUC-DEFAULT-TOAST-COMPRESSION\">default_toast_compression</a>\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u5982\u524d\u6240\u8ff0\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u6709\u591a\u79cd\u7c7b\u578b\u3002\u6700\u65e9\u3001\u4e5f\u6700\u5e38\u89c1\u7684\u4e00\u79cd\uff0c\u662f\u6307\u5411\u5b58\u50a8\u5728 <em class=\"firstterm\"><acronym class=\"acronym\">TOAST</acronym> \u8868</em>\u4e2d\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u8be5\u8868\u4e0e\u5305\u542b\u8be5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u672c\u8eab\u7684\u8868\u76f8\u5173\u8054\uff0c\u4f46\u4e0e\u4e4b\u5206\u79bb\u5b58\u50a8\u3002\u5f53\u4e00\u4e2a\u8981\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u7684\u5143\u7ec4\u8fc7\u5927\u800c\u65e0\u6cd5\u539f\u6837\u5b58\u50a8\u65f6\uff0c\u8fd9\u4e9b<em class=\"firstterm\">\u78c1\u76d8\u4e0a\u7684</em>\u6307\u9488 datum \u4f1a\u7531 <acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\uff08\u4f4d\u4e8e <code class=\"filename\">access/common/toast_internals.c</code>\uff09\u521b\u5efa\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/16/storage-toast.html#STORAGE-TOAST-ONDISK\" title=\"73.2.1.\u00a0\u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a073.2.1\u00a0\u8282</a>\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u53ef\u4ee5\u5305\u542b\u6307\u5411\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\u3002\u8fd9\u7c7b datum \u5fc5\u7136\u662f\u77ed\u547d\u7684\uff0c\u6c38\u8fdc\u4e0d\u4f1a\u51fa\u73b0\u5728\u78c1\u76d8\u4e0a\uff0c\u4f46\u5b83\u4eec\u5bf9\u4e8e\u907f\u514d\u5927\u578b\u6570\u636e\u503c\u7684\u590d\u5236\u548c\u5197\u4f59\u5904\u7406\u975e\u5e38\u6709\u7528\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/16/storage-toast.html#STORAGE-TOAST-INMEMORY\" title=\"73.2.2.\u00a0\u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a073.2.2\u00a0\u8282</a>\u3002</p>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/16/storage-toast.html#STORAGE-TOAST-ONDISK\">73.2.1. \u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u5982\u679c\u8868\u4e2d\u6709\u5217\u652f\u6301 TOAST\uff0c\u8868\u5c31\u4f1a\u5173\u8054\u4e00\u4e2a TOAST \u8868\uff0c\u5176 OID \u5b58\u50a8\u5728 pg_class.reltoastrelid \u4e2d\u3002\u78c1\u76d8\u4e0a\u7684 TOAST \u503c\u5b58\u653e\u5728\u8be5 TOAST \u8868\u4e2d\uff0c\u8be6\u60c5\u89c1\u4e0b\u6587\u3002</p>\n<p lang=\"zh\">\u884c\u5916\u503c\u5728\u538b\u7f29\u540e\uff08\u5982\u679c\u4f7f\u7528\u538b\u7f29\uff09\u62c6\u6210\u6700\u591a TOAST_MAX_CHUNK_SIZE \u5b57\u8282\u7684\u5757\u3002\u9ed8\u8ba4\u9009\u62e9\u6b64\u503c\uff0c\u4f7f\u4e00\u4e2a\u9875\u9762\u80fd\u88c5\u4e0b\u56db\u4e2a\u5757\u884c\uff0c\u56e0\u6b64\u7ea6\u4e3a 2000 \u5b57\u8282\u3002\u6bcf\u5757\u4f5c\u4e3a\u72ec\u7acb\u7684\u4e00\u884c\u5b58\u5165\u6240\u5c5e\u8868\u7684 TOAST \u8868\u3002\u6bcf\u4e2a TOAST \u8868\u90fd\u6709 chunk_id\uff08\u6807\u8bc6\u7279\u5b9a TOAST \u503c\u7684 OID\uff09\u3001chunk_seq\uff08\u8be5\u5757\u5728\u503c\u4e2d\u7684\u5e8f\u53f7\uff09\u548c chunk_data\uff08\u5b9e\u9645\u5757\u6570\u636e\uff09\u4e09\u5217\u3002chunk_id \u4e0e chunk_seq \u4e0a\u7684\u552f\u4e00\u7d22\u5f15\u7528\u4e8e\u5feb\u901f\u68c0\u7d22\u503c\u3002\u56e0\u6b64\uff0c\u8868\u793a\u78c1\u76d8\u884c\u5916 TOAST \u503c\u7684\u6307\u9488\u9700\u8981\u5b58\u50a8 TOAST \u8868\u7684 OID\uff0c\u4ee5\u53ca\u7279\u5b9a\u503c\u7684 OID\uff0c\u5373 chunk_id\u3002\u4e3a\u65b9\u4fbf\u4f7f\u7528\uff0c\u6307\u9488\u8fd8\u5b58\u50a8\u903b\u8f91\u6570\u636e\u5927\u5c0f\uff08\u539f\u59cb\u672a\u538b\u7f29\u957f\u5ea6\uff09\u548c\u7269\u7406\u5b58\u50a8\u5927\u5c0f\uff08\u4f7f\u7528\u538b\u7f29\u65f6\u4e0e\u539f\u59cb\u5927\u5c0f\u4e0d\u540c\uff09\uff0c\u4ee5\u53ca\u6240\u4f7f\u7528\u7684\u538b\u7f29\u65b9\u6cd5\uff08\u5982\u679c\u6709\uff09\u3002\u7b97\u4e0a varlena \u9996\u90e8\u5b57\u8282\uff0c\u78c1\u76d8 TOAST \u6307\u9488\u7684\u603b\u5927\u5c0f\u4e3a 18 \u5b57\u8282\uff0c\u4e0e\u5176\u8868\u793a\u7684\u503c\u7684\u5b9e\u9645\u5927\u5c0f\u65e0\u5173\u3002</p>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u53ea\u6709\u5728\u8981\u5b58\u5165\u8868\u4e2d\u7684\u884c\u503c\u5bbd\u4e8e <code class=\"symbol\">TOAST_TUPLE_THRESHOLD</code> \u5b57\u8282\uff08\u901a\u5e38\u4e3a 2 kB\uff09\u65f6\u624d\u4f1a\u88ab\u89e6\u53d1\u3002<acronym class=\"acronym\">TOAST</acronym> \u4ee3\u7801\u4f1a\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u628a\u5b57\u6bb5\u503c\u79fb\u5230\u884c\u5916\uff0c\u76f4\u5230\u8be5\u884c\u503c\u77ed\u4e8e <code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u5b57\u8282\uff08\u901a\u5e38\u4e5f\u4e3a 2 kB\uff0c\u4f46\u53ef\u8c03\u6574\uff09\uff0c\u6216\u8005\u5df2\u7ecf\u65e0\u6cd5\u518d\u83b7\u5f97\u66f4\u591a\u6536\u76ca\u3002\u5728 UPDATE \u64cd\u4f5c\u4e2d\uff0c\u672a\u66f4\u6539\u5b57\u6bb5\u7684\u503c\u901a\u5e38\u4f1a\u539f\u6837\u4fdd\u7559\uff1b\u56e0\u6b64\uff0c\u5982\u679c\u66f4\u65b0\u4e00\u884c\u65f6\u5176\u884c\u5916\u503c\u90fd\u6ca1\u6709\u53d8\u5316\uff0c\u4fbf\u4e0d\u4f1a\u4ea7\u751f <acronym class=\"acronym\">TOAST</acronym> \u6210\u672c\u3002</p>\n<p lang=\"zh\">TOAST \u7ba1\u7406\u4ee3\u7801\u652f\u6301\u56db\u79cd\u5c06\u53ef TOAST \u5217\u5b58\u50a8\u5230\u78c1\u76d8\u7684\u7b56\u7565\uff1a</p>\n<div class=\"itemizedlist\">\n<ul class=\"itemizedlist\">\n<li class=\"listitem\" lang=\"zh\">PLAIN \u7981\u6b62\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\u3002\u5bf9\u4e8e\u4e0d\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\uff0c\u8fd9\u662f\u552f\u4e00\u53ef\u7528\u7684\u5217\u5b58\u50a8\u7b56\u7565\u3002</li>\n<li class=\"listitem\" lang=\"zh\">EXTENDED \u540c\u65f6\u5141\u8bb8\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u662f\u5927\u591a\u6570\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u7684\u9ed8\u8ba4\u7b56\u7565\u3002\u5148\u5c1d\u8bd5\u538b\u7f29\uff1b\u5982\u679c\u884c\u4ecd\u7136\u8fc7\u5927\uff0c\u518d\u4f7f\u7528\u884c\u5916\u5b58\u50a8\u3002</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">EXTERNAL</code> \u5141\u8bb8\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u4e0d\u5141\u8bb8\u538b\u7f29\u3002\u4f7f\u7528 <code class=\"literal\">EXTERNAL</code> \u4f1a\u8ba9\u5bbd <code class=\"type\">text</code> \u548c <code class=\"type\">bytea</code> \u5217\u4e0a\u7684\u5b50\u4e32\u64cd\u4f5c\u66f4\u5feb\uff08\u4ee3\u4ef7\u662f\u5360\u7528\u66f4\u591a\u5b58\u50a8\u7a7a\u95f4\uff09\uff0c\u56e0\u4e3a\u5728\u503c\u672a\u538b\u7f29\u65f6\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u7ecf\u8fc7\u4f18\u5316\uff0c\u53ea\u9700\u63d0\u53d6\u884c\u5916\u503c\u4e2d\u6240\u9700\u7684\u90e8\u5206\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">MAIN</code> \u5141\u8bb8\u538b\u7f29\uff0c\u4f46\u4e0d\u5141\u8bb8\u884c\u5916\u5b58\u50a8\u3002\uff08\u5b9e\u9645\u4e0a\uff0c\u5bf9\u4e8e\u8fd9\u7c7b\u5217\uff0c\u4ecd\u7136\u53ef\u80fd\u8fdb\u884c\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u53ea\u6709\u5728\u522b\u65e0\u4ed6\u6cd5\u3001\u5fc5\u987b\u8fd9\u6837\u505a\u624d\u80fd\u8ba9\u884c\u8db3\u591f\u5c0f\u4ee5\u653e\u5165\u9875\u9762\u65f6\uff0c\u624d\u4f1a\u628a\u5b83\u4f5c\u4e3a\u6700\u540e\u624b\u6bb5\u3002\uff09</p>\n</li>\n</ul>\n</div>\n<p lang=\"zh\">\u6bcf\u79cd\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u90fd\u4e3a\u5176\u5217\u6307\u5b9a\u9ed8\u8ba4\u7b56\u7565\uff0c\u4f46\u5177\u4f53\u8868\u5217\u7684\u7b56\u7565\u53ef\u901a\u8fc7 ALTER TABLE ... SET STORAGE \u4fee\u6539\u3002</p>\n<p lang=\"zh\"><code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u4e5f\u53ef\u4ee5\u9488\u5bf9\u6bcf\u4e2a\u8868\u901a\u8fc7 <a class=\"link\" href=\"/docs/16/sql-altertable.html\" title=\"ALTER TABLE\"><code class=\"command\">ALTER TABLE ... SET (toast_tuple_target = N)</code></a> \u8fdb\u884c\u8c03\u6574\u3002</p>\n<p lang=\"zh\">\u4e0e\u8ba9\u884c\u503c\u8de8\u9875\u7b49\u66f4\u76f4\u63a5\u7684\u505a\u6cd5\u76f8\u6bd4\uff0c\u6b64\u65b9\u6848\u6709\u591a\u9879\u4f18\u52bf\u3002\u5047\u8bbe\u67e5\u8be2\u901a\u5e38\u6309\u8f83\u5c0f\u952e\u503c\u8fdb\u884c\u6bd4\u8f83\u7b5b\u9009\uff0c\u6267\u884c\u5668\u7684\u5927\u90e8\u5206\u5de5\u4f5c\u5c31\u53ef\u53ea\u4f7f\u7528\u4e3b\u884c\u6570\u636e\u3002TOAST \u5c5e\u6027\u7684\u5927\u503c\u4ec5\u5728\u5c06\u7ed3\u679c\u53d1\u9001\u7ed9\u5ba2\u6237\u7aef\u65f6\u624d\u8bfb\u53d6\uff0c\u800c\u4e14\u524d\u63d0\u662f\u67e5\u8be2\u786e\u5b9e\u9009\u62e9\u4e86\u8fd9\u4e9b\u503c\u3002\u56e0\u800c\u4e3b\u8868\u663e\u8457\u7f29\u5c0f\uff0c\u5171\u4eab\u7f13\u51b2\u533a\u53ef\u5bb9\u7eb3\u66f4\u591a\u884c\uff1b\u6392\u5e8f\u6570\u636e\u96c6\u4e5f\u4f1a\u7f29\u5c0f\uff0c\u66f4\u5bb9\u6613\u5b8c\u5168\u5728\u5185\u5b58\u4e2d\u6392\u5e8f\u3002\u539f\u6587\u4e2d\u7684\u4e00\u4e2a\u5c0f\u6d4b\u8bd5\u8868\u660e\uff1a\u5305\u542b\u5178\u578b HTML \u9875\u9762\u53ca URL \u7684\u8868\u8fde\u540c TOAST \u8868\uff0c\u5360\u7528\u7ea6\u4e3a\u539f\u59cb\u6570\u636e\u7684\u4e00\u534a\uff1b\u4e3b\u8868\u53ea\u5360\u603b\u6570\u636e\u7ea6 10%\uff0c\u5305\u62ec URL \u548c\u5c11\u91cf\u5c0f HTML \u9875\u9762\u3002\u4e0e\u5c06\u6240\u6709 HTML \u9875\u9762\u622a\u77ed\u81f3 7 kB \u4ee5\u4fbf\u88c5\u5165\u884c\u5185\u3001\u672a\u4f7f\u7528 TOAST \u7684\u5bf9\u7167\u8868\u76f8\u6bd4\uff0c\u8fd0\u884c\u65f6\u95f4\u6ca1\u6709\u5dee\u5f02\u3002</p>\n</div>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/16/storage-toast.html#STORAGE-TOAST-INMEMORY\">73.2.2. \u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ef\u4ee5\u6307\u5411\u4e0d\u5728\u78c1\u76d8\u4e0a\u3001\u800c\u4f4d\u4e8e\u5f53\u524d\u670d\u52a1\u5668\u8fdb\u7a0b\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u6570\u636e\u3002\u8fd9\u7c7b\u6307\u9488\u663e\u7136\u4e0d\u53ef\u80fd\u957f\u671f\u5b58\u5728\uff0c\u4f46\u4ecd\u7136\u5f88\u6709\u7528\u3002\u76ee\u524d\u6709\u4e24\u4e2a\u5b50\u60c5\u51b5\uff1a\u6307\u5411<em class=\"firstterm\">\u95f4\u63a5</em>\u6570\u636e\u7684\u6307\u9488\uff0c\u4ee5\u53ca\u6307\u5411<em class=\"firstterm\">\u5c55\u5f00</em>\u6570\u636e\u7684\u6307\u9488\u3002</p>\n<p lang=\"zh\">\u95f4\u63a5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ea\u662f\u7b80\u5355\u5730\u6307\u5411\u67d0\u5904\u5185\u5b58\u4e2d\u5b58\u653e\u7684\u4e00\u4e2a\u975e\u95f4\u63a5 varlena \u503c\u3002\u8fd9\u4e00\u60c5\u51b5\u6700\u521d\u53ea\u662f\u4f5c\u4e3a\u6982\u5ff5\u9a8c\u8bc1\u800c\u521b\u5efa\uff0c\u4f46\u76ee\u524d\u5728\u903b\u8f91\u89e3\u7801\u671f\u95f4\u4f1a\u7528\u5230\u5b83\uff0c\u4ee5\u907f\u514d\u53ef\u80fd\u4e0d\u5f97\u4e0d\u521b\u5efa\u8d85\u8fc7 1 GB \u7684\u7269\u7406\u5143\u7ec4\uff08\u628a\u6240\u6709\u884c\u5916\u5b57\u6bb5\u503c\u90fd\u62c9\u5165\u5143\u7ec4\u5c31\u53ef\u80fd\u5bfc\u81f4\u8fd9\u79cd\u60c5\u51b5\uff09\u3002\u8fd9\u79cd\u673a\u5236\u7684\u7528\u9014\u6709\u9650\uff0c\u56e0\u4e3a\u521b\u5efa\u8be5\u6307\u9488 datum \u7684\u4e00\u65b9\u5fc5\u987b\u5b8c\u5168\u8d1f\u8d23\u786e\u4fdd\u88ab\u5f15\u7528\u6570\u636e\u5728\u6307\u9488\u53ef\u80fd\u5b58\u5728\u7684\u6574\u4e2a\u671f\u95f4\u90fd\u4fdd\u6301\u6709\u6548\uff0c\u800c\u4e14\u7cfb\u7edf\u5e76\u6ca1\u6709\u4efb\u4f55\u57fa\u7840\u8bbe\u65bd\u6765\u5e2e\u52a9\u505a\u5230\u8fd9\u4e00\u70b9\u3002</p>\n<p lang=\"zh\">\u5c55\u5f00\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5bf9\u90a3\u4e9b\u78c1\u76d8\u8868\u793a\u5f62\u5f0f\u5e76\u4e0d\u7279\u522b\u9002\u5408\u8ba1\u7b97\u7528\u9014\u7684\u590d\u6742\u6570\u636e\u7c7b\u578b\u5f88\u6709\u7528\u3002\u4ee5\u6807\u51c6\u7684 <span class=\"productname\">PostgreSQL</span> \u6570\u7ec4 varlena \u8868\u793a\u4e3a\u4f8b\uff0c\u5b83\u5305\u542b\u7ef4\u5ea6\u4fe1\u606f\u3001\u4e00\u4e2a\u7a7a\u503c\u4f4d\u56fe\uff08\u5982\u679c\u5b58\u5728\u7a7a\u503c\u5143\u7d20\uff09\uff0c\u7136\u540e\u4f9d\u6b21\u4fdd\u5b58\u6240\u6709\u5143\u7d20\u7684\u503c\u3002\u5f53\u5143\u7d20\u7c7b\u578b\u672c\u8eab\u4e5f\u662f\u53d8\u957f\u65f6\uff0c\u5b9a\u4f4d\u7b2c <em class=\"replaceable\"><code>N</code></em> \u4e2a\u5143\u7d20\u7684\u552f\u4e00\u529e\u6cd5\u5c31\u662f\u626b\u63cf\u5b83\u524d\u9762\u7684\u6240\u6709\u5143\u7d20\u3002\u8fd9\u79cd\u8868\u793a\u5f62\u5f0f\u56e0\u5176\u7d27\u51d1\u6027\u800c\u9002\u5408\u78c1\u76d8\u5b58\u50a8\uff0c\u4f46\u5bf9\u4e8e\u6570\u7ec4\u8ba1\u7b97\u800c\u8a00\uff0c\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u5c55\u5f00</span>\u201d</span>\u6216<span class=\"quote\">\u201c<span class=\"quote\">\u89e3\u6784</span>\u201d</span>\u7684\u8868\u793a\u4f1a\u66f4\u597d\uff0c\u56e0\u4e3a\u5176\u4e2d\u6240\u6709\u5143\u7d20\u7684\u8d77\u59cb\u4f4d\u7f6e\u90fd\u5df2\u8bc6\u522b\u51fa\u6765\u3002<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u673a\u5236\u901a\u8fc7\u5141\u8bb8\u6309\u5f15\u7528\u4f20\u9012\u7684 Datum \u6307\u5411\u6807\u51c6 varlena \u503c\uff08\u5373\u78c1\u76d8\u8868\u793a\uff09\u6216\u8005\u6307\u5411\u5185\u5b58\u4e2d\u67d0\u5904\u5c55\u5f00\u8868\u793a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c\u6765\u6ee1\u8db3\u8fd9\u4e00\u9700\u8981\u3002\u8fd9\u79cd\u5c55\u5f00\u8868\u793a\u7684\u5177\u4f53\u7ec6\u8282\u7531\u6570\u636e\u7c7b\u578b\u81ea\u884c\u51b3\u5b9a\uff0c\u4e0d\u8fc7\u5b83\u5fc5\u987b\u5177\u6709\u6807\u51c6\u5934\u90e8\uff0c\u5e76\u6ee1\u8db3 <code class=\"filename\">src/include/utils/expandeddatum.h</code> \u4e2d\u7ed9\u51fa\u7684\u5176\u4ed6 API \u8981\u6c42\u3002\u5904\u7406\u8be5\u6570\u636e\u7c7b\u578b\u7684 C \u7ea7\u51fd\u6570\u53ef\u4ee5\u9009\u62e9\u652f\u6301\u4efb\u4e00\u79cd\u8868\u793a\u3002\u4e0d\u77e5\u9053\u5c55\u5f00\u8868\u793a\u3001\u4f46\u53ea\u662f\u5bf9\u8f93\u5165\u5e94\u7528 <code class=\"function\">PG_DETOAST_DATUM</code> \u7684\u51fd\u6570\uff0c\u4f1a\u81ea\u52a8\u83b7\u5f97\u4f20\u7edf\u7684 varlena \u8868\u793a\uff1b\u56e0\u6b64\uff0c\u5bf9\u5c55\u5f00\u8868\u793a\u7684\u652f\u6301\u53ef\u4ee5\u9010\u6b65\u5f15\u5165\uff0c\u4e00\u6b21\u589e\u52a0\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\u3002</p>\n<p lang=\"zh\">\u6307\u5411\u5c55\u5f00\u503c\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u8fd8\u53ef\u8fdb\u4e00\u6b65\u5206\u4e3a<em class=\"firstterm\">\u53ef\u8bfb\u5199\uff08read-write\uff09</em>\u548c<em class=\"firstterm\">\u53ea\u8bfb\uff08read-only\uff09</em>\u6307\u9488\u3002\u65e0\u8bba\u54ea\u79cd\u65b9\u5f0f\uff0c\u88ab\u6307\u5411\u7684\u8868\u793a\u662f\u76f8\u540c\u7684\uff1b\u4f46\u6536\u5230\u53ef\u8bfb\u5199\u6307\u9488\u7684\u51fd\u6570\u53ef\u4ee5\u539f\u5730\u4fee\u6539\u6240\u5f15\u7528\u7684\u503c\uff0c\u800c\u6536\u5230\u53ea\u8bfb\u6307\u9488\u7684\u51fd\u6570\u5219\u4e0d\u53ef\u4ee5\uff0c\u5982\u679c\u5b83\u60f3\u751f\u6210\u8be5\u503c\u7684\u4fee\u6539\u7248\u672c\uff0c\u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u526f\u672c\u3002\u8fd9\u79cd\u533a\u5206\u4ee5\u53ca\u4e00\u4e9b\u76f8\u5173\u7ea6\u5b9a\uff0c\u4f7f\u5f97\u5728\u67e5\u8be2\u6267\u884c\u671f\u95f4\u53ef\u4ee5\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u5c55\u5f00\u503c\u590d\u5236\u3002</p>\n<p lang=\"zh\">\u5bf9\u4e8e\u6240\u6709\u7c7b\u578b\u7684\u5185\u5b58\u4e2d <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c<acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u90fd\u4f1a\u786e\u4fdd\u8fd9\u7c7b\u6307\u9488 datum \u4e0d\u4f1a\u610f\u5916\u5730\u88ab\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u3002\u5185\u5b58\u4e2d\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5728\u5b58\u50a8\u524d\u4f1a\u81ea\u52a8\u5c55\u5f00\u4e3a\u666e\u901a\u7684\u884c\u5185 varlena \u503c\uff0c\u5982\u679c\u8fd9\u6837\u4f1a\u4f7f\u627f\u8f7d\u5b83\u7684\u5143\u7ec4\u8fc7\u5927\uff0c\u8fd8\u53ef\u80fd\u8fdb\u4e00\u6b65\u8f6c\u6362\u4e3a\u78c1\u76d8\u4e0a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u3002</p>\n</div>\n</div>", "manual_path": "/docs/16/storage-toast.html", "localization": {"status": "complete", "sources": [{"url": "/docs/16/storage-toast.html", "method": "same-major semantic node", "sha256": "2c614afa0a91cd0d0db3110367a3cf0300d93e72db4fd5ca359ad902eaf235c5", "language": "zh", "matched_nodes": ["#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[2]", "#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[3]", "#STORAGE-TOAST/div[10]/p[3]", "#STORAGE-TOAST/div[10]/p[7]", "#STORAGE-TOAST/div[11]/p[1]", "#STORAGE-TOAST/div[11]/p[2]", "#STORAGE-TOAST/div[11]/p[3]", "#STORAGE-TOAST/div[11]/p[4]", "#STORAGE-TOAST/div[11]/p[5]", "#STORAGE-TOAST/div[1]/dl[0]/dt[0]", "#STORAGE-TOAST/div[1]/dl[0]/dt[1]", "#STORAGE-TOAST/p[4]", "#STORAGE-TOAST/p[5]", "#STORAGE-TOAST/p[8]", "#STORAGE-TOAST/p[9]"]}], "language": "zh", "original_text": {"/versions/16/description/0": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/versions/16/facts/0/label": "Definition scope", "/versions/16/facts/0/value": "Same-version core physical storage documentation", "/versions/16/related/1/label": "Storage Parameters"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "0b4445c732028a5ab1e3a2b45016b7d4e9dfe24e5352f66fb3472e4e85d25ecb"}, "comparison_data": {"layouts": []}, "comparison_hash": "27341929154bfb55531f03501322b65af719c5561f3c4ddc9528a14aa4df69b5", "manual_language": "zh"}, "17": {"facts": [{"label": "\u5b9a\u4e49\u8303\u56f4", "value": "\u540c\u7248\u672c\u6838\u5fc3\u7269\u7406\u5b58\u50a8\u6587\u6863"}], "tables": [], "related": [{"url": "/wiki/tableam/?v=17", "label": "Table AM"}, {"url": "/wiki/relopts/?v=17", "label": "\u5b58\u50a8\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v17.11/postgresql-17.11.tar.bz2", "label": "17.11", "major": "17", "channel": "stable", "revision": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "sources": [{"url": "https://pg.center/docs/17/storage-toast.html", "path": "storage-toast.html", "label": "PostgreSQL 17 English manual", "sha256": "06251af26377523dbcc2b9164e5536c4c43bb7023869c147236f975c4069357a", "language": "en", "original_url": "/docs/17/storage-toast.html"}], "sections": [], "signature": "", "description": ["\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002"], "manual_html": "<div class=\"sect1\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h2 class=\"title\">65.2.\u00a0TOAST </h2>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08<acronym class=\"acronym\">TOAST</acronym>, The Oversized-Attribute Storage Technique\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"productname\">PostgreSQL</span> \u4f7f\u7528\u56fa\u5b9a\u9875\u9762\u5927\u5c0f\uff08\u901a\u5e38\u4e3a 8 kB\uff09\uff0c\u5e76\u4e14\u4e0d\u5141\u8bb8\u5143\u7ec4\u8de8\u8d8a\u591a\u4e2a\u9875\u9762\u3002\u56e0\u6b64\uff0c\u65e0\u6cd5\u76f4\u63a5\u5b58\u50a8\u975e\u5e38\u5927\u7684\u5b57\u6bb5\u503c\u3002\u4e3a\u514b\u670d\u8fd9\u4e00\u9650\u5236\uff0c\u5927\u5b57\u6bb5\u503c\u4f1a\u88ab\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u62c6\u5206\u6210\u591a\u4e2a\u7269\u7406\u884c\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u5bf9\u7528\u6237\u662f\u900f\u660e\u7684\uff0c\u800c\u4e14\u5bf9\u5927\u90e8\u5206\u540e\u7aef\u4ee3\u7801\u7684\u5f71\u54cd\u5f88\u5c0f\u3002\u8fd9\u9879\u6280\u672f\u88ab\u4eb2\u5207\u5730\u79f0\u4e3a <acronym class=\"acronym\">TOAST</acronym>\uff08\u6216\u8005<span class=\"quote\">\u201c<span class=\"quote\">\u81ea\u5207\u7247\u9762\u5305\u95ee\u4e16\u4ee5\u6765\u6700\u68d2\u7684\u4e1c\u897f</span>\u201d</span>\uff09\u3002<acronym class=\"acronym\">TOAST</acronym> \u57fa\u7840\u8bbe\u65bd\u4e5f\u88ab\u7528\u4e8e\u6539\u8fdb\u5185\u5b58\u4e2d\u5927\u578b\u6570\u636e\u503c\u7684\u5904\u7406\u3002</p>\n<p lang=\"zh\">\u53ea\u6709\u90e8\u5206\u6570\u636e\u7c7b\u578b\u652f\u6301 TOAST\uff1b\u65e0\u9700\u8ba9\u4e0d\u4f1a\u4ea7\u751f\u5927\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u627f\u62c5\u989d\u5916\u5f00\u9500\u3002\u8981\u652f\u6301 TOAST\uff0c\u7c7b\u578b\u5fc5\u987b\u91c7\u7528\u53d8\u957f\uff08varlena\uff09\u8868\u793a\uff0c\u901a\u5e38\u5176\u5b58\u50a8\u503c\u7684\u7b2c\u4e00\u4e2a\u56db\u5b57\u8282\u5b57\u8bb0\u5f55\u603b\u5b57\u8282\u957f\u5ea6\uff0c\u5305\u62ec\u8be5\u957f\u5ea6\u5b57\u672c\u8eab\u3002TOAST \u4e0d\u9650\u5236\u7c7b\u578b\u8868\u793a\u7684\u5176\u4f59\u90e8\u5206\u3002\u7edf\u79f0\u4e3a TOAST \u503c\u7684\u7279\u6b8a\u8868\u793a\u901a\u8fc7\u4fee\u6539\u6216\u91cd\u65b0\u89e3\u91ca\u8fd9\u4e2a\u9996\u90e8\u957f\u5ea6\u5b57\u5de5\u4f5c\u3002\u56e0\u6b64\uff0c\u652f\u6301 TOAST \u7c7b\u578b\u7684 C \u5c42\u51fd\u6570\u5fc5\u987b\u8c28\u614e\u5904\u7406\u53ef\u80fd\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u8f93\u5165\uff1a\u5728\u89e3\u9664 TOAST \u8868\u793a\u524d\uff0c\u8f93\u5165\u53ef\u80fd\u5e76\u4e0d\u7531\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u52a0\u5b9e\u9645\u5185\u5bb9\u7ec4\u6210\u3002\u901a\u5e38\u5e94\u5728\u4efb\u4f55\u5904\u7406\u4e4b\u524d\u8c03\u7528 PG_DETOAST_DATUM\uff0c\u4f46\u67d0\u4e9b\u60c5\u5f62\u53ef\u91c7\u7528\u66f4\u9ad8\u6548\u7684\u65b9\u6cd5\uff0c\u8be6\u60c5\u53c2\u89c1\u7b2c 36.13.1 \u8282\u3002</p>\n<p lang=\"zh\">TOAST \u5360\u7528 varlena \u957f\u5ea6\u5b57\u7684\u4e24\u4e2a\u4f4d\uff1a\u5927\u7aef\u673a\u5668\u4f7f\u7528\u9ad8\u4f4d\uff0c\u5c0f\u7aef\u673a\u5668\u4f7f\u7528\u4f4e\u4f4d\uff0c\u56e0\u6b64\u652f\u6301 TOAST \u7684\u7c7b\u578b\u4e2d\uff0c\u4efb\u4f55\u503c\u7684\u903b\u8f91\u5927\u5c0f\u90fd\u9650\u4e8e 1 GB\uff082^30 - 1 \u5b57\u8282\uff09\u3002\u4e24\u4f4d\u5747\u4e3a\u96f6\u65f6\uff0c\u8be5\u503c\u662f\u666e\u901a\u7684\u672a\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u503c\uff0c\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u672c\u8eab\u5728\u5185\u7684\u603b\u5b57\u8282\u6570\u3002\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u7f6e\u4f4d\u65f6\uff0c\u8be5\u503c\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u800c\u975e\u901a\u5e38\u7684\u56db\u5b57\u8282\u9996\u90e8\uff0c\u8be5\u5b57\u8282\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u8282\u5728\u5185\u7684\u603b\u5927\u5c0f\u3002\u8fd9\u4f7f\u5c0f\u4e8e 127 \u5b57\u8282\u7684\u503c\u80fd\u591f\u7d27\u51d1\u5b58\u50a8\uff0c\u540c\u65f6\u4ecd\u5141\u8bb8\u7c7b\u578b\u5728\u9700\u8981\u65f6\u589e\u957f\u5230 1 GB\u3002\u5355\u5b57\u8282\u9996\u90e8\u7684\u503c\u65e0\u9700\u6309\u7279\u5b9a\u8fb9\u754c\u5bf9\u9f50\uff1b\u56db\u5b57\u8282\u9996\u90e8\u7684\u503c\u5219\u81f3\u5c11\u6309\u56db\u5b57\u8282\u8fb9\u754c\u5bf9\u9f50\u3002\u7701\u7565\u5bf9\u9f50\u586b\u5145\u8fd8\u80fd\u8282\u7701\u7a7a\u95f4\uff0c\u5bf9\u4e8e\u77ed\u503c\u5c24\u5176\u660e\u663e\u3002\u4e00\u4e2a\u7279\u6b8a\u60c5\u51b5\u662f\uff1a\u5982\u679c\u5355\u5b57\u8282\u9996\u90e8\u7684\u5176\u4f59\u4f4d\u5168\u4e3a\u96f6\u2014\u2014\u8fd9\u4e0d\u53ef\u80fd\u662f\u5305\u542b\u81ea\u8eab\u7684\u957f\u5ea6\u2014\u2014\u8be5\u503c\u5c31\u662f\u6307\u5411\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u5177\u4f53\u5f62\u5f0f\u89c1\u4e0b\u6587\u3002\u6307\u9488\u7684\u7c7b\u578b\u548c\u5927\u5c0f\u7531\u6570\u636e\u7b2c\u4e8c\u4e2a\u5b57\u8282\u4e2d\u7684\u4ee3\u7801\u51b3\u5b9a\u3002\u6700\u540e\uff0c\u5982\u679c\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u6e05\u96f6\uff0c\u800c\u76f8\u90bb\u4f4d\u7f6e\u4f4d\uff0c\u6570\u636e\u5185\u5bb9\u5c31\u5df2\u538b\u7f29\uff0c\u4f7f\u7528\u524d\u5fc5\u987b\u89e3\u538b\u3002\u6b64\u65f6\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u538b\u7f29\u540e\u6570\u636e\u7684\u603b\u5927\u5c0f\uff0c\u800c\u975e\u539f\u59cb\u6570\u636e\u5927\u5c0f\u3002\u884c\u5916\u6570\u636e\u4e5f\u53ef\u80fd\u538b\u7f29\uff0c\u4f46 varlena \u9996\u90e8\u4e0d\u8868\u660e\u8fd9\u4e00\u70b9\uff0c\u9700\u67e5\u770b TOAST \u6307\u9488\u7684\u5185\u5bb9\u3002</p>\n<p lang=\"zh\">\u65e0\u8bba\u662f\u884c\u5185\u538b\u7f29\u6570\u636e\u8fd8\u662f\u884c\u5916\u538b\u7f29\u6570\u636e\uff0c\u5176\u6240\u7528\u7684\u538b\u7f29\u6280\u672f\u90fd\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e <code class=\"literal\">COMPRESSION</code> \u5217\u9009\u9879\u6765\u6309\u5217\u9009\u62e9\uff0c\u8be5\u9009\u9879\u53ef\u5728 <code class=\"command\">CREATE TABLE</code> \u6216 <code class=\"command\">ALTER TABLE</code> \u4e2d\u6307\u5b9a\u3002\u5bf9\u672a\u663e\u5f0f\u8bbe\u7f6e\u7684\u5217\uff0c\u4f1a\u5728\u63d2\u5165\u6570\u636e\u65f6\u53c2\u8003\u53c2\u6570<a class=\"xref\" href=\"/docs/17/runtime-config-client.html#GUC-DEFAULT-TOAST-COMPRESSION\">default_toast_compression</a>\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u5982\u524d\u6240\u8ff0\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u6709\u591a\u79cd\u7c7b\u578b\u3002\u6700\u65e9\u3001\u4e5f\u6700\u5e38\u89c1\u7684\u4e00\u79cd\uff0c\u662f\u6307\u5411\u5b58\u50a8\u5728 <em class=\"firstterm\"><acronym class=\"acronym\">TOAST</acronym> \u8868</em>\u4e2d\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u8be5\u8868\u4e0e\u5305\u542b\u8be5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u672c\u8eab\u7684\u8868\u76f8\u5173\u8054\uff0c\u4f46\u4e0e\u4e4b\u5206\u79bb\u5b58\u50a8\u3002\u5f53\u4e00\u4e2a\u8981\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u7684\u5143\u7ec4\u8fc7\u5927\u800c\u65e0\u6cd5\u539f\u6837\u5b58\u50a8\u65f6\uff0c\u8fd9\u4e9b<em class=\"firstterm\">\u78c1\u76d8\u4e0a\u7684</em>\u6307\u9488 datum \u4f1a\u7531 <acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\uff08\u4f4d\u4e8e <code class=\"filename\">access/common/toast_internals.c</code>\uff09\u521b\u5efa\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/17/storage-toast.html#STORAGE-TOAST-ONDISK\" title=\"65.2.1.\u00a0\u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a065.2.1\u00a0\u8282</a>\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u53ef\u4ee5\u5305\u542b\u6307\u5411\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\u3002\u8fd9\u7c7b datum \u5fc5\u7136\u662f\u77ed\u547d\u7684\uff0c\u6c38\u8fdc\u4e0d\u4f1a\u51fa\u73b0\u5728\u78c1\u76d8\u4e0a\uff0c\u4f46\u5b83\u4eec\u5bf9\u4e8e\u907f\u514d\u5927\u578b\u6570\u636e\u503c\u7684\u590d\u5236\u548c\u5197\u4f59\u5904\u7406\u975e\u5e38\u6709\u7528\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/17/storage-toast.html#STORAGE-TOAST-INMEMORY\" title=\"65.2.2.\u00a0\u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a065.2.2\u00a0\u8282</a>\u3002</p>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/17/storage-toast.html#STORAGE-TOAST-ONDISK\">65.2.1. \u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u5982\u679c\u8868\u4e2d\u6709\u5217\u652f\u6301 TOAST\uff0c\u8868\u5c31\u4f1a\u5173\u8054\u4e00\u4e2a TOAST \u8868\uff0c\u5176 OID \u5b58\u50a8\u5728 pg_class.reltoastrelid \u4e2d\u3002\u78c1\u76d8\u4e0a\u7684 TOAST \u503c\u5b58\u653e\u5728\u8be5 TOAST \u8868\u4e2d\uff0c\u8be6\u60c5\u89c1\u4e0b\u6587\u3002</p>\n<p lang=\"zh\">\u884c\u5916\u503c\u5728\u538b\u7f29\u540e\uff08\u5982\u679c\u4f7f\u7528\u538b\u7f29\uff09\u62c6\u6210\u6700\u591a TOAST_MAX_CHUNK_SIZE \u5b57\u8282\u7684\u5757\u3002\u9ed8\u8ba4\u9009\u62e9\u6b64\u503c\uff0c\u4f7f\u4e00\u4e2a\u9875\u9762\u80fd\u88c5\u4e0b\u56db\u4e2a\u5757\u884c\uff0c\u56e0\u6b64\u7ea6\u4e3a 2000 \u5b57\u8282\u3002\u6bcf\u5757\u4f5c\u4e3a\u72ec\u7acb\u7684\u4e00\u884c\u5b58\u5165\u6240\u5c5e\u8868\u7684 TOAST \u8868\u3002\u6bcf\u4e2a TOAST \u8868\u90fd\u6709 chunk_id\uff08\u6807\u8bc6\u7279\u5b9a TOAST \u503c\u7684 OID\uff09\u3001chunk_seq\uff08\u8be5\u5757\u5728\u503c\u4e2d\u7684\u5e8f\u53f7\uff09\u548c chunk_data\uff08\u5b9e\u9645\u5757\u6570\u636e\uff09\u4e09\u5217\u3002chunk_id \u4e0e chunk_seq \u4e0a\u7684\u552f\u4e00\u7d22\u5f15\u7528\u4e8e\u5feb\u901f\u68c0\u7d22\u503c\u3002\u56e0\u6b64\uff0c\u8868\u793a\u78c1\u76d8\u884c\u5916 TOAST \u503c\u7684\u6307\u9488\u9700\u8981\u5b58\u50a8 TOAST \u8868\u7684 OID\uff0c\u4ee5\u53ca\u7279\u5b9a\u503c\u7684 OID\uff0c\u5373 chunk_id\u3002\u4e3a\u65b9\u4fbf\u4f7f\u7528\uff0c\u6307\u9488\u8fd8\u5b58\u50a8\u903b\u8f91\u6570\u636e\u5927\u5c0f\uff08\u539f\u59cb\u672a\u538b\u7f29\u957f\u5ea6\uff09\u548c\u7269\u7406\u5b58\u50a8\u5927\u5c0f\uff08\u4f7f\u7528\u538b\u7f29\u65f6\u4e0e\u539f\u59cb\u5927\u5c0f\u4e0d\u540c\uff09\uff0c\u4ee5\u53ca\u6240\u4f7f\u7528\u7684\u538b\u7f29\u65b9\u6cd5\uff08\u5982\u679c\u6709\uff09\u3002\u7b97\u4e0a varlena \u9996\u90e8\u5b57\u8282\uff0c\u78c1\u76d8 TOAST \u6307\u9488\u7684\u603b\u5927\u5c0f\u4e3a 18 \u5b57\u8282\uff0c\u4e0e\u5176\u8868\u793a\u7684\u503c\u7684\u5b9e\u9645\u5927\u5c0f\u65e0\u5173\u3002</p>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u53ea\u6709\u5728\u8981\u5b58\u5165\u8868\u4e2d\u7684\u884c\u503c\u5bbd\u4e8e <code class=\"symbol\">TOAST_TUPLE_THRESHOLD</code> \u5b57\u8282\uff08\u901a\u5e38\u4e3a 2 kB\uff09\u65f6\u624d\u4f1a\u88ab\u89e6\u53d1\u3002<acronym class=\"acronym\">TOAST</acronym> \u4ee3\u7801\u4f1a\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u628a\u5b57\u6bb5\u503c\u79fb\u5230\u884c\u5916\uff0c\u76f4\u5230\u8be5\u884c\u503c\u77ed\u4e8e <code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u5b57\u8282\uff08\u901a\u5e38\u4e5f\u4e3a 2 kB\uff0c\u4f46\u53ef\u8c03\u6574\uff09\uff0c\u6216\u8005\u5df2\u7ecf\u65e0\u6cd5\u518d\u83b7\u5f97\u66f4\u591a\u6536\u76ca\u3002\u5728 UPDATE \u64cd\u4f5c\u4e2d\uff0c\u672a\u66f4\u6539\u5b57\u6bb5\u7684\u503c\u901a\u5e38\u4f1a\u539f\u6837\u4fdd\u7559\uff1b\u56e0\u6b64\uff0c\u5982\u679c\u66f4\u65b0\u4e00\u884c\u65f6\u5176\u884c\u5916\u503c\u90fd\u6ca1\u6709\u53d8\u5316\uff0c\u4fbf\u4e0d\u4f1a\u4ea7\u751f <acronym class=\"acronym\">TOAST</acronym> \u6210\u672c\u3002</p>\n<p lang=\"zh\">TOAST \u7ba1\u7406\u4ee3\u7801\u652f\u6301\u56db\u79cd\u5c06\u53ef TOAST \u5217\u5b58\u50a8\u5230\u78c1\u76d8\u7684\u7b56\u7565\uff1a</p>\n<div class=\"itemizedlist\">\n<ul class=\"itemizedlist\">\n<li class=\"listitem\" lang=\"zh\">PLAIN \u7981\u6b62\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\u3002\u5bf9\u4e8e\u4e0d\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\uff0c\u8fd9\u662f\u552f\u4e00\u53ef\u7528\u7684\u5217\u5b58\u50a8\u7b56\u7565\u3002</li>\n<li class=\"listitem\" lang=\"zh\">EXTENDED \u540c\u65f6\u5141\u8bb8\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u662f\u5927\u591a\u6570\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u7684\u9ed8\u8ba4\u7b56\u7565\u3002\u5148\u5c1d\u8bd5\u538b\u7f29\uff1b\u5982\u679c\u884c\u4ecd\u7136\u8fc7\u5927\uff0c\u518d\u4f7f\u7528\u884c\u5916\u5b58\u50a8\u3002</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">EXTERNAL</code> \u5141\u8bb8\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u4e0d\u5141\u8bb8\u538b\u7f29\u3002\u4f7f\u7528 <code class=\"literal\">EXTERNAL</code> \u4f1a\u8ba9\u5bbd <code class=\"type\">text</code> \u548c <code class=\"type\">bytea</code> \u5217\u4e0a\u7684\u5b50\u4e32\u64cd\u4f5c\u66f4\u5feb\uff08\u4ee3\u4ef7\u662f\u5360\u7528\u66f4\u591a\u5b58\u50a8\u7a7a\u95f4\uff09\uff0c\u56e0\u4e3a\u5728\u503c\u672a\u538b\u7f29\u65f6\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u7ecf\u8fc7\u4f18\u5316\uff0c\u53ea\u9700\u63d0\u53d6\u884c\u5916\u503c\u4e2d\u6240\u9700\u7684\u90e8\u5206\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">MAIN</code> \u5141\u8bb8\u538b\u7f29\uff0c\u4f46\u4e0d\u5141\u8bb8\u884c\u5916\u5b58\u50a8\u3002\uff08\u5b9e\u9645\u4e0a\uff0c\u5bf9\u4e8e\u8fd9\u7c7b\u5217\uff0c\u4ecd\u7136\u53ef\u80fd\u8fdb\u884c\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u53ea\u6709\u5728\u522b\u65e0\u4ed6\u6cd5\u3001\u5fc5\u987b\u8fd9\u6837\u505a\u624d\u80fd\u8ba9\u884c\u8db3\u591f\u5c0f\u4ee5\u653e\u5165\u9875\u9762\u65f6\uff0c\u624d\u4f1a\u628a\u5b83\u4f5c\u4e3a\u6700\u540e\u624b\u6bb5\u3002\uff09</p>\n</li>\n</ul>\n</div>\n<p lang=\"zh\">\u6bcf\u79cd\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u90fd\u4e3a\u5176\u5217\u6307\u5b9a\u9ed8\u8ba4\u7b56\u7565\uff0c\u4f46\u5177\u4f53\u8868\u5217\u7684\u7b56\u7565\u53ef\u901a\u8fc7 ALTER TABLE ... SET STORAGE \u4fee\u6539\u3002</p>\n<p lang=\"zh\"><code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u4e5f\u53ef\u4ee5\u9488\u5bf9\u6bcf\u4e2a\u8868\u901a\u8fc7 <a class=\"link\" href=\"/docs/17/sql-altertable.html\" title=\"ALTER TABLE\"><code class=\"command\">ALTER TABLE ... SET (toast_tuple_target = N)</code></a> \u8fdb\u884c\u8c03\u6574\u3002</p>\n<p lang=\"zh\">\u4e0e\u8ba9\u884c\u503c\u8de8\u9875\u7b49\u66f4\u76f4\u63a5\u7684\u505a\u6cd5\u76f8\u6bd4\uff0c\u6b64\u65b9\u6848\u6709\u591a\u9879\u4f18\u52bf\u3002\u5047\u8bbe\u67e5\u8be2\u901a\u5e38\u6309\u8f83\u5c0f\u952e\u503c\u8fdb\u884c\u6bd4\u8f83\u7b5b\u9009\uff0c\u6267\u884c\u5668\u7684\u5927\u90e8\u5206\u5de5\u4f5c\u5c31\u53ef\u53ea\u4f7f\u7528\u4e3b\u884c\u6570\u636e\u3002TOAST \u5c5e\u6027\u7684\u5927\u503c\u4ec5\u5728\u5c06\u7ed3\u679c\u53d1\u9001\u7ed9\u5ba2\u6237\u7aef\u65f6\u624d\u8bfb\u53d6\uff0c\u800c\u4e14\u524d\u63d0\u662f\u67e5\u8be2\u786e\u5b9e\u9009\u62e9\u4e86\u8fd9\u4e9b\u503c\u3002\u56e0\u800c\u4e3b\u8868\u663e\u8457\u7f29\u5c0f\uff0c\u5171\u4eab\u7f13\u51b2\u533a\u53ef\u5bb9\u7eb3\u66f4\u591a\u884c\uff1b\u6392\u5e8f\u6570\u636e\u96c6\u4e5f\u4f1a\u7f29\u5c0f\uff0c\u66f4\u5bb9\u6613\u5b8c\u5168\u5728\u5185\u5b58\u4e2d\u6392\u5e8f\u3002\u539f\u6587\u4e2d\u7684\u4e00\u4e2a\u5c0f\u6d4b\u8bd5\u8868\u660e\uff1a\u5305\u542b\u5178\u578b HTML \u9875\u9762\u53ca URL \u7684\u8868\u8fde\u540c TOAST \u8868\uff0c\u5360\u7528\u7ea6\u4e3a\u539f\u59cb\u6570\u636e\u7684\u4e00\u534a\uff1b\u4e3b\u8868\u53ea\u5360\u603b\u6570\u636e\u7ea6 10%\uff0c\u5305\u62ec URL \u548c\u5c11\u91cf\u5c0f HTML \u9875\u9762\u3002\u4e0e\u5c06\u6240\u6709 HTML \u9875\u9762\u622a\u77ed\u81f3 7 kB \u4ee5\u4fbf\u88c5\u5165\u884c\u5185\u3001\u672a\u4f7f\u7528 TOAST \u7684\u5bf9\u7167\u8868\u76f8\u6bd4\uff0c\u8fd0\u884c\u65f6\u95f4\u6ca1\u6709\u5dee\u5f02\u3002</p>\n</div>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/17/storage-toast.html#STORAGE-TOAST-INMEMORY\">65.2.2. \u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ef\u4ee5\u6307\u5411\u4e0d\u5728\u78c1\u76d8\u4e0a\u3001\u800c\u4f4d\u4e8e\u5f53\u524d\u670d\u52a1\u5668\u8fdb\u7a0b\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u6570\u636e\u3002\u8fd9\u7c7b\u6307\u9488\u663e\u7136\u4e0d\u53ef\u80fd\u957f\u671f\u5b58\u5728\uff0c\u4f46\u4ecd\u7136\u5f88\u6709\u7528\u3002\u76ee\u524d\u6709\u4e24\u4e2a\u5b50\u60c5\u51b5\uff1a\u6307\u5411<em class=\"firstterm\">\u95f4\u63a5</em>\u6570\u636e\u7684\u6307\u9488\uff0c\u4ee5\u53ca\u6307\u5411<em class=\"firstterm\">\u5c55\u5f00</em>\u6570\u636e\u7684\u6307\u9488\u3002</p>\n<p lang=\"zh\">\u95f4\u63a5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ea\u662f\u7b80\u5355\u5730\u6307\u5411\u67d0\u5904\u5185\u5b58\u4e2d\u5b58\u653e\u7684\u4e00\u4e2a\u975e\u95f4\u63a5 varlena \u503c\u3002\u8fd9\u4e00\u60c5\u51b5\u6700\u521d\u53ea\u662f\u4f5c\u4e3a\u6982\u5ff5\u9a8c\u8bc1\u800c\u521b\u5efa\uff0c\u4f46\u76ee\u524d\u5728\u903b\u8f91\u89e3\u7801\u671f\u95f4\u4f1a\u7528\u5230\u5b83\uff0c\u4ee5\u907f\u514d\u53ef\u80fd\u4e0d\u5f97\u4e0d\u521b\u5efa\u8d85\u8fc7 1 GB \u7684\u7269\u7406\u5143\u7ec4\uff08\u628a\u6240\u6709\u884c\u5916\u5b57\u6bb5\u503c\u90fd\u62c9\u5165\u5143\u7ec4\u5c31\u53ef\u80fd\u5bfc\u81f4\u8fd9\u79cd\u60c5\u51b5\uff09\u3002\u8fd9\u79cd\u673a\u5236\u7684\u7528\u9014\u6709\u9650\uff0c\u56e0\u4e3a\u521b\u5efa\u8be5\u6307\u9488 datum \u7684\u4e00\u65b9\u5fc5\u987b\u5b8c\u5168\u8d1f\u8d23\u786e\u4fdd\u88ab\u5f15\u7528\u6570\u636e\u5728\u6307\u9488\u53ef\u80fd\u5b58\u5728\u7684\u6574\u4e2a\u671f\u95f4\u90fd\u4fdd\u6301\u6709\u6548\uff0c\u800c\u4e14\u7cfb\u7edf\u5e76\u6ca1\u6709\u4efb\u4f55\u57fa\u7840\u8bbe\u65bd\u6765\u5e2e\u52a9\u505a\u5230\u8fd9\u4e00\u70b9\u3002</p>\n<p lang=\"zh\">\u5c55\u5f00\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5bf9\u90a3\u4e9b\u78c1\u76d8\u8868\u793a\u5f62\u5f0f\u5e76\u4e0d\u7279\u522b\u9002\u5408\u8ba1\u7b97\u7528\u9014\u7684\u590d\u6742\u6570\u636e\u7c7b\u578b\u5f88\u6709\u7528\u3002\u4ee5\u6807\u51c6\u7684 <span class=\"productname\">PostgreSQL</span> \u6570\u7ec4 varlena \u8868\u793a\u4e3a\u4f8b\uff0c\u5b83\u5305\u542b\u7ef4\u5ea6\u4fe1\u606f\u3001\u4e00\u4e2a\u7a7a\u503c\u4f4d\u56fe\uff08\u5982\u679c\u5b58\u5728\u7a7a\u503c\u5143\u7d20\uff09\uff0c\u7136\u540e\u4f9d\u6b21\u4fdd\u5b58\u6240\u6709\u5143\u7d20\u7684\u503c\u3002\u5f53\u5143\u7d20\u7c7b\u578b\u672c\u8eab\u4e5f\u662f\u53d8\u957f\u65f6\uff0c\u5b9a\u4f4d\u7b2c <em class=\"replaceable\"><code>N</code></em> \u4e2a\u5143\u7d20\u7684\u552f\u4e00\u529e\u6cd5\u5c31\u662f\u626b\u63cf\u5b83\u524d\u9762\u7684\u6240\u6709\u5143\u7d20\u3002\u8fd9\u79cd\u8868\u793a\u5f62\u5f0f\u56e0\u5176\u7d27\u51d1\u6027\u800c\u9002\u5408\u78c1\u76d8\u5b58\u50a8\uff0c\u4f46\u5bf9\u4e8e\u6570\u7ec4\u8ba1\u7b97\u800c\u8a00\uff0c\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u5c55\u5f00</span>\u201d</span>\u6216<span class=\"quote\">\u201c<span class=\"quote\">\u89e3\u6784</span>\u201d</span>\u7684\u8868\u793a\u4f1a\u66f4\u597d\uff0c\u56e0\u4e3a\u5176\u4e2d\u6240\u6709\u5143\u7d20\u7684\u8d77\u59cb\u4f4d\u7f6e\u90fd\u5df2\u8bc6\u522b\u51fa\u6765\u3002<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u673a\u5236\u901a\u8fc7\u5141\u8bb8\u6309\u5f15\u7528\u4f20\u9012\u7684 Datum \u6307\u5411\u6807\u51c6 varlena \u503c\uff08\u5373\u78c1\u76d8\u8868\u793a\uff09\u6216\u8005\u6307\u5411\u5185\u5b58\u4e2d\u67d0\u5904\u5c55\u5f00\u8868\u793a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c\u6765\u6ee1\u8db3\u8fd9\u4e00\u9700\u8981\u3002\u8fd9\u79cd\u5c55\u5f00\u8868\u793a\u7684\u5177\u4f53\u7ec6\u8282\u7531\u6570\u636e\u7c7b\u578b\u81ea\u884c\u51b3\u5b9a\uff0c\u4e0d\u8fc7\u5b83\u5fc5\u987b\u5177\u6709\u6807\u51c6\u5934\u90e8\uff0c\u5e76\u6ee1\u8db3 <code class=\"filename\">src/include/utils/expandeddatum.h</code> \u4e2d\u7ed9\u51fa\u7684\u5176\u4ed6 API \u8981\u6c42\u3002\u5904\u7406\u8be5\u6570\u636e\u7c7b\u578b\u7684 C \u7ea7\u51fd\u6570\u53ef\u4ee5\u9009\u62e9\u652f\u6301\u4efb\u4e00\u79cd\u8868\u793a\u3002\u4e0d\u77e5\u9053\u5c55\u5f00\u8868\u793a\u3001\u4f46\u53ea\u662f\u5bf9\u8f93\u5165\u5e94\u7528 <code class=\"function\">PG_DETOAST_DATUM</code> \u7684\u51fd\u6570\uff0c\u4f1a\u81ea\u52a8\u83b7\u5f97\u4f20\u7edf\u7684 varlena \u8868\u793a\uff1b\u56e0\u6b64\uff0c\u5bf9\u5c55\u5f00\u8868\u793a\u7684\u652f\u6301\u53ef\u4ee5\u9010\u6b65\u5f15\u5165\uff0c\u4e00\u6b21\u589e\u52a0\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\u3002</p>\n<p lang=\"zh\">\u6307\u5411\u5c55\u5f00\u503c\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u8fd8\u53ef\u8fdb\u4e00\u6b65\u5206\u4e3a<em class=\"firstterm\">\u53ef\u8bfb\u5199\uff08read-write\uff09</em>\u548c<em class=\"firstterm\">\u53ea\u8bfb\uff08read-only\uff09</em>\u6307\u9488\u3002\u65e0\u8bba\u54ea\u79cd\u65b9\u5f0f\uff0c\u88ab\u6307\u5411\u7684\u8868\u793a\u662f\u76f8\u540c\u7684\uff1b\u4f46\u6536\u5230\u53ef\u8bfb\u5199\u6307\u9488\u7684\u51fd\u6570\u53ef\u4ee5\u539f\u5730\u4fee\u6539\u6240\u5f15\u7528\u7684\u503c\uff0c\u800c\u6536\u5230\u53ea\u8bfb\u6307\u9488\u7684\u51fd\u6570\u5219\u4e0d\u53ef\u4ee5\uff0c\u5982\u679c\u5b83\u60f3\u751f\u6210\u8be5\u503c\u7684\u4fee\u6539\u7248\u672c\uff0c\u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u526f\u672c\u3002\u8fd9\u79cd\u533a\u5206\u4ee5\u53ca\u4e00\u4e9b\u76f8\u5173\u7ea6\u5b9a\uff0c\u4f7f\u5f97\u5728\u67e5\u8be2\u6267\u884c\u671f\u95f4\u53ef\u4ee5\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u5c55\u5f00\u503c\u590d\u5236\u3002</p>\n<p lang=\"zh\">\u5bf9\u4e8e\u6240\u6709\u7c7b\u578b\u7684\u5185\u5b58\u4e2d <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c<acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u90fd\u4f1a\u786e\u4fdd\u8fd9\u7c7b\u6307\u9488 datum \u4e0d\u4f1a\u610f\u5916\u5730\u88ab\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u3002\u5185\u5b58\u4e2d\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5728\u5b58\u50a8\u524d\u4f1a\u81ea\u52a8\u5c55\u5f00\u4e3a\u666e\u901a\u7684\u884c\u5185 varlena \u503c\uff0c\u5982\u679c\u8fd9\u6837\u4f1a\u4f7f\u627f\u8f7d\u5b83\u7684\u5143\u7ec4\u8fc7\u5927\uff0c\u8fd8\u53ef\u80fd\u8fdb\u4e00\u6b65\u8f6c\u6362\u4e3a\u78c1\u76d8\u4e0a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u3002</p>\n</div>\n</div>", "manual_path": "/docs/17/storage-toast.html", "localization": {"status": "complete", "sources": [{"url": "/docs/17/storage-toast.html", "method": "same-major semantic node", "sha256": "84b3f044b3afcbbc127327cc037a31a48dae87a990a4c09912e0de902a2c26ea", "language": "zh", "matched_nodes": ["#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[2]", "#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[3]", "#STORAGE-TOAST/div[10]/p[3]", "#STORAGE-TOAST/div[10]/p[7]", "#STORAGE-TOAST/div[11]/p[1]", "#STORAGE-TOAST/div[11]/p[2]", "#STORAGE-TOAST/div[11]/p[3]", "#STORAGE-TOAST/div[11]/p[4]", "#STORAGE-TOAST/div[11]/p[5]", "#STORAGE-TOAST/div[1]/dl[0]/dt[0]", "#STORAGE-TOAST/div[1]/dl[0]/dt[1]", "#STORAGE-TOAST/p[4]", "#STORAGE-TOAST/p[5]", "#STORAGE-TOAST/p[8]", "#STORAGE-TOAST/p[9]"]}], "language": "zh", "original_text": {"/versions/17/description/0": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/versions/17/facts/0/label": "Definition scope", "/versions/17/facts/0/value": "Same-version core physical storage documentation", "/versions/17/related/1/label": "Storage Parameters"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "0106d69856307efba869844d15f17234cfcd4748c9b52e61348658ad97735db9"}, "comparison_data": {"layouts": []}, "comparison_hash": "27341929154bfb55531f03501322b65af719c5561f3c4ddc9528a14aa4df69b5", "manual_language": "zh"}, "18": {"facts": [{"label": "\u5b9a\u4e49\u8303\u56f4", "value": "\u540c\u7248\u672c\u6838\u5fc3\u7269\u7406\u5b58\u50a8\u6587\u6863"}], "tables": [], "related": [{"url": "/wiki/tableam/?v=18", "label": "Table AM"}, {"url": "/wiki/relopts/?v=18", "label": "\u5b58\u50a8\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2", "label": "18.6", "major": "18", "channel": "stable", "revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "sources": [{"url": "https://pg.center/docs/18/storage-toast.html", "path": "storage-toast.html", "label": "PostgreSQL 18 English manual", "sha256": "acf77f02dfcc808c3e24632ad05409f7f45f62773defd38453a433c15393df90", "language": "en", "original_url": "/docs/18/storage-toast.html"}], "sections": [], "signature": "", "description": ["\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002"], "manual_html": "<div class=\"sect1\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h2 class=\"title\">66.2.\u00a0TOAST </h2>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08<acronym class=\"acronym\">TOAST</acronym>, The Oversized-Attribute Storage Technique\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"productname\">PostgreSQL</span> \u4f7f\u7528\u56fa\u5b9a\u9875\u9762\u5927\u5c0f\uff08\u901a\u5e38\u4e3a 8 kB\uff09\uff0c\u5e76\u4e14\u4e0d\u5141\u8bb8\u5143\u7ec4\u8de8\u8d8a\u591a\u4e2a\u9875\u9762\u3002\u56e0\u6b64\uff0c\u65e0\u6cd5\u76f4\u63a5\u5b58\u50a8\u975e\u5e38\u5927\u7684\u5b57\u6bb5\u503c\u3002\u4e3a\u514b\u670d\u8fd9\u4e00\u9650\u5236\uff0c\u5927\u5b57\u6bb5\u503c\u4f1a\u88ab\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u62c6\u5206\u6210\u591a\u4e2a\u7269\u7406\u884c\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u5bf9\u7528\u6237\u662f\u900f\u660e\u7684\uff0c\u800c\u4e14\u5bf9\u5927\u90e8\u5206\u540e\u7aef\u4ee3\u7801\u7684\u5f71\u54cd\u5f88\u5c0f\u3002\u8fd9\u9879\u6280\u672f\u88ab\u4eb2\u5207\u5730\u79f0\u4e3a <acronym class=\"acronym\">TOAST</acronym>\uff08\u6216\u8005<span class=\"quote\">\u201c<span class=\"quote\">\u81ea\u5207\u7247\u9762\u5305\u95ee\u4e16\u4ee5\u6765\u6700\u68d2\u7684\u4e1c\u897f</span>\u201d</span>\uff09\u3002<acronym class=\"acronym\">TOAST</acronym> \u57fa\u7840\u8bbe\u65bd\u4e5f\u88ab\u7528\u4e8e\u6539\u8fdb\u5185\u5b58\u4e2d\u5927\u578b\u6570\u636e\u503c\u7684\u5904\u7406\u3002</p>\n<p lang=\"zh\">\u53ea\u6709\u90e8\u5206\u6570\u636e\u7c7b\u578b\u652f\u6301 TOAST\uff1b\u65e0\u9700\u8ba9\u4e0d\u4f1a\u4ea7\u751f\u5927\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u627f\u62c5\u989d\u5916\u5f00\u9500\u3002\u8981\u652f\u6301 TOAST\uff0c\u7c7b\u578b\u5fc5\u987b\u91c7\u7528\u53d8\u957f\uff08varlena\uff09\u8868\u793a\uff0c\u901a\u5e38\u5176\u5b58\u50a8\u503c\u7684\u7b2c\u4e00\u4e2a\u56db\u5b57\u8282\u5b57\u8bb0\u5f55\u603b\u5b57\u8282\u957f\u5ea6\uff0c\u5305\u62ec\u8be5\u957f\u5ea6\u5b57\u672c\u8eab\u3002TOAST \u4e0d\u9650\u5236\u7c7b\u578b\u8868\u793a\u7684\u5176\u4f59\u90e8\u5206\u3002\u7edf\u79f0\u4e3a TOAST \u503c\u7684\u7279\u6b8a\u8868\u793a\u901a\u8fc7\u4fee\u6539\u6216\u91cd\u65b0\u89e3\u91ca\u8fd9\u4e2a\u9996\u90e8\u957f\u5ea6\u5b57\u5de5\u4f5c\u3002\u56e0\u6b64\uff0c\u652f\u6301 TOAST \u7c7b\u578b\u7684 C \u5c42\u51fd\u6570\u5fc5\u987b\u8c28\u614e\u5904\u7406\u53ef\u80fd\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u8f93\u5165\uff1a\u5728\u89e3\u9664 TOAST \u8868\u793a\u524d\uff0c\u8f93\u5165\u53ef\u80fd\u5e76\u4e0d\u7531\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u52a0\u5b9e\u9645\u5185\u5bb9\u7ec4\u6210\u3002\u901a\u5e38\u5e94\u5728\u4efb\u4f55\u5904\u7406\u4e4b\u524d\u8c03\u7528 PG_DETOAST_DATUM\uff0c\u4f46\u67d0\u4e9b\u60c5\u5f62\u53ef\u91c7\u7528\u66f4\u9ad8\u6548\u7684\u65b9\u6cd5\uff0c\u8be6\u60c5\u53c2\u89c1\u7b2c 36.13.1 \u8282\u3002</p>\n<p lang=\"zh\">TOAST \u5360\u7528 varlena \u957f\u5ea6\u5b57\u7684\u4e24\u4e2a\u4f4d\uff1a\u5927\u7aef\u673a\u5668\u4f7f\u7528\u9ad8\u4f4d\uff0c\u5c0f\u7aef\u673a\u5668\u4f7f\u7528\u4f4e\u4f4d\uff0c\u56e0\u6b64\u652f\u6301 TOAST \u7684\u7c7b\u578b\u4e2d\uff0c\u4efb\u4f55\u503c\u7684\u903b\u8f91\u5927\u5c0f\u90fd\u9650\u4e8e 1 GB\uff082^30 - 1 \u5b57\u8282\uff09\u3002\u4e24\u4f4d\u5747\u4e3a\u96f6\u65f6\uff0c\u8be5\u503c\u662f\u666e\u901a\u7684\u672a\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u503c\uff0c\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u672c\u8eab\u5728\u5185\u7684\u603b\u5b57\u8282\u6570\u3002\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u7f6e\u4f4d\u65f6\uff0c\u8be5\u503c\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u800c\u975e\u901a\u5e38\u7684\u56db\u5b57\u8282\u9996\u90e8\uff0c\u8be5\u5b57\u8282\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u8282\u5728\u5185\u7684\u603b\u5927\u5c0f\u3002\u8fd9\u4f7f\u5c0f\u4e8e 127 \u5b57\u8282\u7684\u503c\u80fd\u591f\u7d27\u51d1\u5b58\u50a8\uff0c\u540c\u65f6\u4ecd\u5141\u8bb8\u7c7b\u578b\u5728\u9700\u8981\u65f6\u589e\u957f\u5230 1 GB\u3002\u5355\u5b57\u8282\u9996\u90e8\u7684\u503c\u65e0\u9700\u6309\u7279\u5b9a\u8fb9\u754c\u5bf9\u9f50\uff1b\u56db\u5b57\u8282\u9996\u90e8\u7684\u503c\u5219\u81f3\u5c11\u6309\u56db\u5b57\u8282\u8fb9\u754c\u5bf9\u9f50\u3002\u7701\u7565\u5bf9\u9f50\u586b\u5145\u8fd8\u80fd\u8282\u7701\u7a7a\u95f4\uff0c\u5bf9\u4e8e\u77ed\u503c\u5c24\u5176\u660e\u663e\u3002\u4e00\u4e2a\u7279\u6b8a\u60c5\u51b5\u662f\uff1a\u5982\u679c\u5355\u5b57\u8282\u9996\u90e8\u7684\u5176\u4f59\u4f4d\u5168\u4e3a\u96f6\u2014\u2014\u8fd9\u4e0d\u53ef\u80fd\u662f\u5305\u542b\u81ea\u8eab\u7684\u957f\u5ea6\u2014\u2014\u8be5\u503c\u5c31\u662f\u6307\u5411\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u5177\u4f53\u5f62\u5f0f\u89c1\u4e0b\u6587\u3002\u6307\u9488\u7684\u7c7b\u578b\u548c\u5927\u5c0f\u7531\u6570\u636e\u7b2c\u4e8c\u4e2a\u5b57\u8282\u4e2d\u7684\u4ee3\u7801\u51b3\u5b9a\u3002\u6700\u540e\uff0c\u5982\u679c\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u6e05\u96f6\uff0c\u800c\u76f8\u90bb\u4f4d\u7f6e\u4f4d\uff0c\u6570\u636e\u5185\u5bb9\u5c31\u5df2\u538b\u7f29\uff0c\u4f7f\u7528\u524d\u5fc5\u987b\u89e3\u538b\u3002\u6b64\u65f6\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u538b\u7f29\u540e\u6570\u636e\u7684\u603b\u5927\u5c0f\uff0c\u800c\u975e\u539f\u59cb\u6570\u636e\u5927\u5c0f\u3002\u884c\u5916\u6570\u636e\u4e5f\u53ef\u80fd\u538b\u7f29\uff0c\u4f46 varlena \u9996\u90e8\u4e0d\u8868\u660e\u8fd9\u4e00\u70b9\uff0c\u9700\u67e5\u770b TOAST \u6307\u9488\u7684\u5185\u5bb9\u3002</p>\n<p lang=\"zh\">\u65e0\u8bba\u662f\u884c\u5185\u538b\u7f29\u6570\u636e\u8fd8\u662f\u884c\u5916\u538b\u7f29\u6570\u636e\uff0c\u5176\u6240\u7528\u7684\u538b\u7f29\u6280\u672f\u90fd\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e <code class=\"literal\">COMPRESSION</code> \u5217\u9009\u9879\u6765\u6309\u5217\u9009\u62e9\uff0c\u8be5\u9009\u9879\u53ef\u5728 <code class=\"command\">CREATE TABLE</code> \u6216 <code class=\"command\">ALTER TABLE</code> \u4e2d\u6307\u5b9a\u3002\u5bf9\u672a\u663e\u5f0f\u8bbe\u7f6e\u7684\u5217\uff0c\u4f1a\u5728\u63d2\u5165\u6570\u636e\u65f6\u53c2\u8003\u53c2\u6570<a class=\"xref\" href=\"/docs/18/runtime-config-client.html#GUC-DEFAULT-TOAST-COMPRESSION\">default_toast_compression</a>\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u5982\u524d\u6240\u8ff0\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u6709\u591a\u79cd\u7c7b\u578b\u3002\u6700\u65e9\u3001\u4e5f\u6700\u5e38\u89c1\u7684\u4e00\u79cd\uff0c\u662f\u6307\u5411\u5b58\u50a8\u5728 <em class=\"firstterm\"><acronym class=\"acronym\">TOAST</acronym> \u8868</em>\u4e2d\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u8be5\u8868\u4e0e\u5305\u542b\u8be5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u672c\u8eab\u7684\u8868\u76f8\u5173\u8054\uff0c\u4f46\u4e0e\u4e4b\u5206\u79bb\u5b58\u50a8\u3002\u5f53\u4e00\u4e2a\u8981\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u7684\u5143\u7ec4\u8fc7\u5927\u800c\u65e0\u6cd5\u539f\u6837\u5b58\u50a8\u65f6\uff0c\u8fd9\u4e9b<em class=\"firstterm\">\u78c1\u76d8\u4e0a\u7684</em>\u6307\u9488 datum \u4f1a\u7531 <acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\uff08\u4f4d\u4e8e <code class=\"filename\">access/common/toast_internals.c</code>\uff09\u521b\u5efa\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/18/storage-toast.html#STORAGE-TOAST-ONDISK\" title=\"66.2.1.\u00a0\u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a066.2.1\u00a0\u8282</a>\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u53ef\u4ee5\u5305\u542b\u6307\u5411\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\u3002\u8fd9\u7c7b datum \u5fc5\u7136\u662f\u77ed\u547d\u7684\uff0c\u6c38\u8fdc\u4e0d\u4f1a\u51fa\u73b0\u5728\u78c1\u76d8\u4e0a\uff0c\u4f46\u5b83\u4eec\u5bf9\u4e8e\u907f\u514d\u5927\u578b\u6570\u636e\u503c\u7684\u590d\u5236\u548c\u5197\u4f59\u5904\u7406\u975e\u5e38\u6709\u7528\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/18/storage-toast.html#STORAGE-TOAST-INMEMORY\" title=\"66.2.2.\u00a0\u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a066.2.2\u00a0\u8282</a>\u3002</p>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/18/storage-toast.html#STORAGE-TOAST-ONDISK\">66.2.1. \u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u5982\u679c\u8868\u4e2d\u6709\u5217\u652f\u6301 TOAST\uff0c\u8868\u5c31\u4f1a\u5173\u8054\u4e00\u4e2a TOAST \u8868\uff0c\u5176 OID \u5b58\u50a8\u5728 pg_class.reltoastrelid \u4e2d\u3002\u78c1\u76d8\u4e0a\u7684 TOAST \u503c\u5b58\u653e\u5728\u8be5 TOAST \u8868\u4e2d\uff0c\u8be6\u60c5\u89c1\u4e0b\u6587\u3002</p>\n<p lang=\"zh\">\u884c\u5916\u503c\u5728\u538b\u7f29\u540e\uff08\u5982\u679c\u4f7f\u7528\u538b\u7f29\uff09\u62c6\u6210\u6700\u591a TOAST_MAX_CHUNK_SIZE \u5b57\u8282\u7684\u5757\u3002\u9ed8\u8ba4\u9009\u62e9\u6b64\u503c\uff0c\u4f7f\u4e00\u4e2a\u9875\u9762\u80fd\u88c5\u4e0b\u56db\u4e2a\u5757\u884c\uff0c\u56e0\u6b64\u7ea6\u4e3a 2000 \u5b57\u8282\u3002\u6bcf\u5757\u4f5c\u4e3a\u72ec\u7acb\u7684\u4e00\u884c\u5b58\u5165\u6240\u5c5e\u8868\u7684 TOAST \u8868\u3002\u6bcf\u4e2a TOAST \u8868\u90fd\u6709 chunk_id\uff08\u6807\u8bc6\u7279\u5b9a TOAST \u503c\u7684 OID\uff09\u3001chunk_seq\uff08\u8be5\u5757\u5728\u503c\u4e2d\u7684\u5e8f\u53f7\uff09\u548c chunk_data\uff08\u5b9e\u9645\u5757\u6570\u636e\uff09\u4e09\u5217\u3002chunk_id \u4e0e chunk_seq \u4e0a\u7684\u552f\u4e00\u7d22\u5f15\u7528\u4e8e\u5feb\u901f\u68c0\u7d22\u503c\u3002\u56e0\u6b64\uff0c\u8868\u793a\u78c1\u76d8\u884c\u5916 TOAST \u503c\u7684\u6307\u9488\u9700\u8981\u5b58\u50a8 TOAST \u8868\u7684 OID\uff0c\u4ee5\u53ca\u7279\u5b9a\u503c\u7684 OID\uff0c\u5373 chunk_id\u3002\u4e3a\u65b9\u4fbf\u4f7f\u7528\uff0c\u6307\u9488\u8fd8\u5b58\u50a8\u903b\u8f91\u6570\u636e\u5927\u5c0f\uff08\u539f\u59cb\u672a\u538b\u7f29\u957f\u5ea6\uff09\u548c\u7269\u7406\u5b58\u50a8\u5927\u5c0f\uff08\u4f7f\u7528\u538b\u7f29\u65f6\u4e0e\u539f\u59cb\u5927\u5c0f\u4e0d\u540c\uff09\uff0c\u4ee5\u53ca\u6240\u4f7f\u7528\u7684\u538b\u7f29\u65b9\u6cd5\uff08\u5982\u679c\u6709\uff09\u3002\u7b97\u4e0a varlena \u9996\u90e8\u5b57\u8282\uff0c\u78c1\u76d8 TOAST \u6307\u9488\u7684\u603b\u5927\u5c0f\u4e3a 18 \u5b57\u8282\uff0c\u4e0e\u5176\u8868\u793a\u7684\u503c\u7684\u5b9e\u9645\u5927\u5c0f\u65e0\u5173\u3002</p>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u53ea\u6709\u5728\u8981\u5b58\u5165\u8868\u4e2d\u7684\u884c\u503c\u5bbd\u4e8e <code class=\"symbol\">TOAST_TUPLE_THRESHOLD</code> \u5b57\u8282\uff08\u901a\u5e38\u4e3a 2 kB\uff09\u65f6\u624d\u4f1a\u88ab\u89e6\u53d1\u3002<acronym class=\"acronym\">TOAST</acronym> \u4ee3\u7801\u4f1a\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u628a\u5b57\u6bb5\u503c\u79fb\u5230\u884c\u5916\uff0c\u76f4\u5230\u8be5\u884c\u503c\u77ed\u4e8e <code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u5b57\u8282\uff08\u901a\u5e38\u4e5f\u4e3a 2 kB\uff0c\u4f46\u53ef\u8c03\u6574\uff09\uff0c\u6216\u8005\u5df2\u7ecf\u65e0\u6cd5\u518d\u83b7\u5f97\u66f4\u591a\u6536\u76ca\u3002\u5728 UPDATE \u64cd\u4f5c\u4e2d\uff0c\u672a\u66f4\u6539\u5b57\u6bb5\u7684\u503c\u901a\u5e38\u4f1a\u539f\u6837\u4fdd\u7559\uff1b\u56e0\u6b64\uff0c\u5982\u679c\u66f4\u65b0\u4e00\u884c\u65f6\u5176\u884c\u5916\u503c\u90fd\u6ca1\u6709\u53d8\u5316\uff0c\u4fbf\u4e0d\u4f1a\u4ea7\u751f <acronym class=\"acronym\">TOAST</acronym> \u6210\u672c\u3002</p>\n<p lang=\"zh\">TOAST \u7ba1\u7406\u4ee3\u7801\u652f\u6301\u56db\u79cd\u5c06\u53ef TOAST \u5217\u5b58\u50a8\u5230\u78c1\u76d8\u7684\u7b56\u7565\uff1a</p>\n<div class=\"itemizedlist\">\n<ul class=\"itemizedlist\">\n<li class=\"listitem\" lang=\"zh\">PLAIN \u7981\u6b62\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\u3002\u5bf9\u4e8e\u4e0d\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\uff0c\u8fd9\u662f\u552f\u4e00\u53ef\u7528\u7684\u5217\u5b58\u50a8\u7b56\u7565\u3002</li>\n<li class=\"listitem\" lang=\"zh\">EXTENDED \u540c\u65f6\u5141\u8bb8\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u662f\u5927\u591a\u6570\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u7684\u9ed8\u8ba4\u7b56\u7565\u3002\u5148\u5c1d\u8bd5\u538b\u7f29\uff1b\u5982\u679c\u884c\u4ecd\u7136\u8fc7\u5927\uff0c\u518d\u4f7f\u7528\u884c\u5916\u5b58\u50a8\u3002</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">EXTERNAL</code> \u5141\u8bb8\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u4e0d\u5141\u8bb8\u538b\u7f29\u3002\u4f7f\u7528 <code class=\"literal\">EXTERNAL</code> \u4f1a\u8ba9\u5bbd <code class=\"type\">text</code> \u548c <code class=\"type\">bytea</code> \u5217\u4e0a\u7684\u5b50\u4e32\u64cd\u4f5c\u66f4\u5feb\uff08\u4ee3\u4ef7\u662f\u5360\u7528\u66f4\u591a\u5b58\u50a8\u7a7a\u95f4\uff09\uff0c\u56e0\u4e3a\u5728\u503c\u672a\u538b\u7f29\u65f6\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u7ecf\u8fc7\u4f18\u5316\uff0c\u53ea\u9700\u63d0\u53d6\u884c\u5916\u503c\u4e2d\u6240\u9700\u7684\u90e8\u5206\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">MAIN</code> \u5141\u8bb8\u538b\u7f29\uff0c\u4f46\u4e0d\u5141\u8bb8\u884c\u5916\u5b58\u50a8\u3002\uff08\u5b9e\u9645\u4e0a\uff0c\u5bf9\u4e8e\u8fd9\u7c7b\u5217\uff0c\u4ecd\u7136\u53ef\u80fd\u8fdb\u884c\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u53ea\u6709\u5728\u522b\u65e0\u4ed6\u6cd5\u3001\u5fc5\u987b\u8fd9\u6837\u505a\u624d\u80fd\u8ba9\u884c\u8db3\u591f\u5c0f\u4ee5\u653e\u5165\u9875\u9762\u65f6\uff0c\u624d\u4f1a\u628a\u5b83\u4f5c\u4e3a\u6700\u540e\u624b\u6bb5\u3002\uff09</p>\n</li>\n</ul>\n</div>\n<p lang=\"zh\">\u6bcf\u79cd\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u90fd\u4e3a\u5176\u5217\u6307\u5b9a\u9ed8\u8ba4\u7b56\u7565\uff0c\u4f46\u5177\u4f53\u8868\u5217\u7684\u7b56\u7565\u53ef\u901a\u8fc7 ALTER TABLE ... SET STORAGE \u4fee\u6539\u3002</p>\n<p lang=\"zh\"><code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u4e5f\u53ef\u4ee5\u9488\u5bf9\u6bcf\u4e2a\u8868\u901a\u8fc7 <a class=\"link\" href=\"/docs/18/sql-altertable.html\" title=\"ALTER TABLE\"><code class=\"command\">ALTER TABLE ... SET (toast_tuple_target = N)</code></a> \u8fdb\u884c\u8c03\u6574\u3002</p>\n<p lang=\"zh\">\u4e0e\u8ba9\u884c\u503c\u8de8\u9875\u7b49\u66f4\u76f4\u63a5\u7684\u505a\u6cd5\u76f8\u6bd4\uff0c\u6b64\u65b9\u6848\u6709\u591a\u9879\u4f18\u52bf\u3002\u5047\u8bbe\u67e5\u8be2\u901a\u5e38\u6309\u8f83\u5c0f\u952e\u503c\u8fdb\u884c\u6bd4\u8f83\u7b5b\u9009\uff0c\u6267\u884c\u5668\u7684\u5927\u90e8\u5206\u5de5\u4f5c\u5c31\u53ef\u53ea\u4f7f\u7528\u4e3b\u884c\u6570\u636e\u3002TOAST \u5c5e\u6027\u7684\u5927\u503c\u4ec5\u5728\u5c06\u7ed3\u679c\u53d1\u9001\u7ed9\u5ba2\u6237\u7aef\u65f6\u624d\u8bfb\u53d6\uff0c\u800c\u4e14\u524d\u63d0\u662f\u67e5\u8be2\u786e\u5b9e\u9009\u62e9\u4e86\u8fd9\u4e9b\u503c\u3002\u56e0\u800c\u4e3b\u8868\u663e\u8457\u7f29\u5c0f\uff0c\u5171\u4eab\u7f13\u51b2\u533a\u53ef\u5bb9\u7eb3\u66f4\u591a\u884c\uff1b\u6392\u5e8f\u6570\u636e\u96c6\u4e5f\u4f1a\u7f29\u5c0f\uff0c\u66f4\u5bb9\u6613\u5b8c\u5168\u5728\u5185\u5b58\u4e2d\u6392\u5e8f\u3002\u539f\u6587\u4e2d\u7684\u4e00\u4e2a\u5c0f\u6d4b\u8bd5\u8868\u660e\uff1a\u5305\u542b\u5178\u578b HTML \u9875\u9762\u53ca URL \u7684\u8868\u8fde\u540c TOAST \u8868\uff0c\u5360\u7528\u7ea6\u4e3a\u539f\u59cb\u6570\u636e\u7684\u4e00\u534a\uff1b\u4e3b\u8868\u53ea\u5360\u603b\u6570\u636e\u7ea6 10%\uff0c\u5305\u62ec URL \u548c\u5c11\u91cf\u5c0f HTML \u9875\u9762\u3002\u4e0e\u5c06\u6240\u6709 HTML \u9875\u9762\u622a\u77ed\u81f3 7 kB \u4ee5\u4fbf\u88c5\u5165\u884c\u5185\u3001\u672a\u4f7f\u7528 TOAST \u7684\u5bf9\u7167\u8868\u76f8\u6bd4\uff0c\u8fd0\u884c\u65f6\u95f4\u6ca1\u6709\u5dee\u5f02\u3002</p>\n</div>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/18/storage-toast.html#STORAGE-TOAST-INMEMORY\">66.2.2. \u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ef\u4ee5\u6307\u5411\u4e0d\u5728\u78c1\u76d8\u4e0a\u3001\u800c\u4f4d\u4e8e\u5f53\u524d\u670d\u52a1\u5668\u8fdb\u7a0b\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u6570\u636e\u3002\u8fd9\u7c7b\u6307\u9488\u663e\u7136\u4e0d\u53ef\u80fd\u957f\u671f\u5b58\u5728\uff0c\u4f46\u4ecd\u7136\u5f88\u6709\u7528\u3002\u76ee\u524d\u6709\u4e24\u4e2a\u5b50\u60c5\u51b5\uff1a\u6307\u5411<em class=\"firstterm\">\u95f4\u63a5</em>\u6570\u636e\u7684\u6307\u9488\uff0c\u4ee5\u53ca\u6307\u5411<em class=\"firstterm\">\u5c55\u5f00</em>\u6570\u636e\u7684\u6307\u9488\u3002</p>\n<p lang=\"zh\">\u95f4\u63a5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ea\u662f\u7b80\u5355\u5730\u6307\u5411\u67d0\u5904\u5185\u5b58\u4e2d\u5b58\u653e\u7684\u4e00\u4e2a\u975e\u95f4\u63a5 varlena \u503c\u3002\u8fd9\u4e00\u60c5\u51b5\u6700\u521d\u53ea\u662f\u4f5c\u4e3a\u6982\u5ff5\u9a8c\u8bc1\u800c\u521b\u5efa\uff0c\u4f46\u76ee\u524d\u5728\u903b\u8f91\u89e3\u7801\u671f\u95f4\u4f1a\u7528\u5230\u5b83\uff0c\u4ee5\u907f\u514d\u53ef\u80fd\u4e0d\u5f97\u4e0d\u521b\u5efa\u8d85\u8fc7 1 GB \u7684\u7269\u7406\u5143\u7ec4\uff08\u628a\u6240\u6709\u884c\u5916\u5b57\u6bb5\u503c\u90fd\u62c9\u5165\u5143\u7ec4\u5c31\u53ef\u80fd\u5bfc\u81f4\u8fd9\u79cd\u60c5\u51b5\uff09\u3002\u8fd9\u79cd\u673a\u5236\u7684\u7528\u9014\u6709\u9650\uff0c\u56e0\u4e3a\u521b\u5efa\u8be5\u6307\u9488 datum \u7684\u4e00\u65b9\u5fc5\u987b\u5b8c\u5168\u8d1f\u8d23\u786e\u4fdd\u88ab\u5f15\u7528\u6570\u636e\u5728\u6307\u9488\u53ef\u80fd\u5b58\u5728\u7684\u6574\u4e2a\u671f\u95f4\u90fd\u4fdd\u6301\u6709\u6548\uff0c\u800c\u4e14\u7cfb\u7edf\u5e76\u6ca1\u6709\u4efb\u4f55\u57fa\u7840\u8bbe\u65bd\u6765\u5e2e\u52a9\u505a\u5230\u8fd9\u4e00\u70b9\u3002</p>\n<p lang=\"zh\">\u5c55\u5f00\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5bf9\u90a3\u4e9b\u78c1\u76d8\u8868\u793a\u5f62\u5f0f\u5e76\u4e0d\u7279\u522b\u9002\u5408\u8ba1\u7b97\u7528\u9014\u7684\u590d\u6742\u6570\u636e\u7c7b\u578b\u5f88\u6709\u7528\u3002\u4ee5\u6807\u51c6\u7684 <span class=\"productname\">PostgreSQL</span> \u6570\u7ec4 varlena \u8868\u793a\u4e3a\u4f8b\uff0c\u5b83\u5305\u542b\u7ef4\u5ea6\u4fe1\u606f\u3001\u4e00\u4e2a\u7a7a\u503c\u4f4d\u56fe\uff08\u5982\u679c\u5b58\u5728\u7a7a\u503c\u5143\u7d20\uff09\uff0c\u7136\u540e\u4f9d\u6b21\u4fdd\u5b58\u6240\u6709\u5143\u7d20\u7684\u503c\u3002\u5f53\u5143\u7d20\u7c7b\u578b\u672c\u8eab\u4e5f\u662f\u53d8\u957f\u65f6\uff0c\u5b9a\u4f4d\u7b2c <em class=\"replaceable\"><code>N</code></em> \u4e2a\u5143\u7d20\u7684\u552f\u4e00\u529e\u6cd5\u5c31\u662f\u626b\u63cf\u5b83\u524d\u9762\u7684\u6240\u6709\u5143\u7d20\u3002\u8fd9\u79cd\u8868\u793a\u5f62\u5f0f\u56e0\u5176\u7d27\u51d1\u6027\u800c\u9002\u5408\u78c1\u76d8\u5b58\u50a8\uff0c\u4f46\u5bf9\u4e8e\u6570\u7ec4\u8ba1\u7b97\u800c\u8a00\uff0c\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u5c55\u5f00</span>\u201d</span>\u6216<span class=\"quote\">\u201c<span class=\"quote\">\u89e3\u6784</span>\u201d</span>\u7684\u8868\u793a\u4f1a\u66f4\u597d\uff0c\u56e0\u4e3a\u5176\u4e2d\u6240\u6709\u5143\u7d20\u7684\u8d77\u59cb\u4f4d\u7f6e\u90fd\u5df2\u8bc6\u522b\u51fa\u6765\u3002<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u673a\u5236\u901a\u8fc7\u5141\u8bb8\u6309\u5f15\u7528\u4f20\u9012\u7684 Datum \u6307\u5411\u6807\u51c6 varlena \u503c\uff08\u5373\u78c1\u76d8\u8868\u793a\uff09\u6216\u8005\u6307\u5411\u5185\u5b58\u4e2d\u67d0\u5904\u5c55\u5f00\u8868\u793a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c\u6765\u6ee1\u8db3\u8fd9\u4e00\u9700\u8981\u3002\u8fd9\u79cd\u5c55\u5f00\u8868\u793a\u7684\u5177\u4f53\u7ec6\u8282\u7531\u6570\u636e\u7c7b\u578b\u81ea\u884c\u51b3\u5b9a\uff0c\u4e0d\u8fc7\u5b83\u5fc5\u987b\u5177\u6709\u6807\u51c6\u5934\u90e8\uff0c\u5e76\u6ee1\u8db3 <code class=\"filename\">src/include/utils/expandeddatum.h</code> \u4e2d\u7ed9\u51fa\u7684\u5176\u4ed6 API \u8981\u6c42\u3002\u5904\u7406\u8be5\u6570\u636e\u7c7b\u578b\u7684 C \u7ea7\u51fd\u6570\u53ef\u4ee5\u9009\u62e9\u652f\u6301\u4efb\u4e00\u79cd\u8868\u793a\u3002\u4e0d\u77e5\u9053\u5c55\u5f00\u8868\u793a\u3001\u4f46\u53ea\u662f\u5bf9\u8f93\u5165\u5e94\u7528 <code class=\"function\">PG_DETOAST_DATUM</code> \u7684\u51fd\u6570\uff0c\u4f1a\u81ea\u52a8\u83b7\u5f97\u4f20\u7edf\u7684 varlena \u8868\u793a\uff1b\u56e0\u6b64\uff0c\u5bf9\u5c55\u5f00\u8868\u793a\u7684\u652f\u6301\u53ef\u4ee5\u9010\u6b65\u5f15\u5165\uff0c\u4e00\u6b21\u589e\u52a0\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\u3002</p>\n<p lang=\"zh\">\u6307\u5411\u5c55\u5f00\u503c\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u8fd8\u53ef\u8fdb\u4e00\u6b65\u5206\u4e3a<em class=\"firstterm\">\u53ef\u8bfb\u5199\uff08read-write\uff09</em>\u548c<em class=\"firstterm\">\u53ea\u8bfb\uff08read-only\uff09</em>\u6307\u9488\u3002\u65e0\u8bba\u54ea\u79cd\u65b9\u5f0f\uff0c\u88ab\u6307\u5411\u7684\u8868\u793a\u662f\u76f8\u540c\u7684\uff1b\u4f46\u6536\u5230\u53ef\u8bfb\u5199\u6307\u9488\u7684\u51fd\u6570\u53ef\u4ee5\u539f\u5730\u4fee\u6539\u6240\u5f15\u7528\u7684\u503c\uff0c\u800c\u6536\u5230\u53ea\u8bfb\u6307\u9488\u7684\u51fd\u6570\u5219\u4e0d\u53ef\u4ee5\uff0c\u5982\u679c\u5b83\u60f3\u751f\u6210\u8be5\u503c\u7684\u4fee\u6539\u7248\u672c\uff0c\u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u526f\u672c\u3002\u8fd9\u79cd\u533a\u5206\u4ee5\u53ca\u4e00\u4e9b\u76f8\u5173\u7ea6\u5b9a\uff0c\u4f7f\u5f97\u5728\u67e5\u8be2\u6267\u884c\u671f\u95f4\u53ef\u4ee5\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u5c55\u5f00\u503c\u590d\u5236\u3002</p>\n<p lang=\"zh\">\u5bf9\u4e8e\u6240\u6709\u7c7b\u578b\u7684\u5185\u5b58\u4e2d <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c<acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u90fd\u4f1a\u786e\u4fdd\u8fd9\u7c7b\u6307\u9488 datum \u4e0d\u4f1a\u610f\u5916\u5730\u88ab\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u3002\u5185\u5b58\u4e2d\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5728\u5b58\u50a8\u524d\u4f1a\u81ea\u52a8\u5c55\u5f00\u4e3a\u666e\u901a\u7684\u884c\u5185 varlena \u503c\uff0c\u5982\u679c\u8fd9\u6837\u4f1a\u4f7f\u627f\u8f7d\u5b83\u7684\u5143\u7ec4\u8fc7\u5927\uff0c\u8fd8\u53ef\u80fd\u8fdb\u4e00\u6b65\u8f6c\u6362\u4e3a\u78c1\u76d8\u4e0a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u3002</p>\n</div>\n</div>", "manual_path": "/docs/18/storage-toast.html", "localization": {"status": "complete", "sources": [{"url": "/docs/18/storage-toast.html", "method": "same-major semantic node", "sha256": "d65ec97abae68b1c03e4b3d8a512d8c04d0f32b09b5f5b59e5ec7bf146dd48c2", "language": "zh", "matched_nodes": ["#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[2]", "#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[3]", "#STORAGE-TOAST/div[10]/p[3]", "#STORAGE-TOAST/div[10]/p[7]", "#STORAGE-TOAST/div[11]/p[1]", "#STORAGE-TOAST/div[11]/p[2]", "#STORAGE-TOAST/div[11]/p[3]", "#STORAGE-TOAST/div[11]/p[4]", "#STORAGE-TOAST/div[11]/p[5]", "#STORAGE-TOAST/div[1]/dl[0]/dt[0]", "#STORAGE-TOAST/div[1]/dl[0]/dt[1]", "#STORAGE-TOAST/p[4]", "#STORAGE-TOAST/p[5]", "#STORAGE-TOAST/p[8]", "#STORAGE-TOAST/p[9]"]}], "language": "zh", "original_text": {"/versions/18/description/0": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/versions/18/facts/0/label": "Definition scope", "/versions/18/facts/0/value": "Same-version core physical storage documentation", "/versions/18/related/1/label": "Storage Parameters"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "40ed0a69ccc0d16b21eeb3f17acf4133d20a99fc89c0d1accf58296c981be1ee"}, "comparison_data": {"layouts": []}, "comparison_hash": "27341929154bfb55531f03501322b65af719c5561f3c4ddc9528a14aa4df69b5", "manual_language": "zh"}, "19": {"facts": [{"label": "\u5b9a\u4e49\u8303\u56f4", "value": "\u540c\u7248\u672c\u6838\u5fc3\u7269\u7406\u5b58\u50a8\u6587\u6863"}], "tables": [], "related": [{"url": "/wiki/tableam/?v=19", "label": "Table AM"}, {"url": "/wiki/relopts/?v=19", "label": "\u5b58\u50a8\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v19beta4/postgresql-19beta4.tar.bz2", "label": "19beta4", "major": "19", "channel": "preview", "revision": "83157ee9c599d03b2f7a3d73ef3a56ec24e0e79cc2b3501a64d1364f56398c86"}, "sources": [{"url": "https://pg.center/docs/19/storage-toast.html", "path": "storage-toast.html", "label": "PostgreSQL 19 English manual", "sha256": "21cc7ce0f8d3b157045f6fb485cca607b937a6975e730d966f9d41c0cea37315", "language": "en", "original_url": "/docs/19/storage-toast.html"}], "sections": [], "signature": "", "description": ["\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002"], "manual_html": "<div class=\"sect1\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h2 class=\"title\">66.2.\u00a0TOAST </h2>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08<acronym class=\"acronym\">TOAST</acronym>, The Oversized-Attribute Storage Technique\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"productname\">PostgreSQL</span> \u4f7f\u7528\u56fa\u5b9a\u9875\u9762\u5927\u5c0f\uff08\u901a\u5e38\u4e3a 8 kB\uff09\uff0c\u5e76\u4e14\u4e0d\u5141\u8bb8\u5143\u7ec4\u8de8\u8d8a\u591a\u4e2a\u9875\u9762\u3002\u56e0\u6b64\uff0c\u65e0\u6cd5\u76f4\u63a5\u5b58\u50a8\u975e\u5e38\u5927\u7684\u5b57\u6bb5\u503c\u3002\u4e3a\u514b\u670d\u8fd9\u4e00\u9650\u5236\uff0c\u5927\u5b57\u6bb5\u503c\u4f1a\u88ab\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u62c6\u5206\u6210\u591a\u4e2a\u7269\u7406\u884c\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u5bf9\u7528\u6237\u662f\u900f\u660e\u7684\uff0c\u800c\u4e14\u5bf9\u5927\u90e8\u5206\u540e\u7aef\u4ee3\u7801\u7684\u5f71\u54cd\u5f88\u5c0f\u3002\u8fd9\u9879\u6280\u672f\u88ab\u4eb2\u5207\u5730\u79f0\u4e3a <acronym class=\"acronym\">TOAST</acronym>\uff08\u6216\u8005<span class=\"quote\">\u201c<span class=\"quote\">\u81ea\u5207\u7247\u9762\u5305\u95ee\u4e16\u4ee5\u6765\u6700\u68d2\u7684\u4e1c\u897f</span>\u201d</span>\uff09\u3002<acronym class=\"acronym\">TOAST</acronym> \u57fa\u7840\u8bbe\u65bd\u4e5f\u88ab\u7528\u4e8e\u6539\u8fdb\u5185\u5b58\u4e2d\u5927\u578b\u6570\u636e\u503c\u7684\u5904\u7406\u3002</p>\n<p lang=\"zh\">\u53ea\u6709\u90e8\u5206\u6570\u636e\u7c7b\u578b\u652f\u6301 TOAST\uff1b\u65e0\u9700\u8ba9\u4e0d\u4f1a\u4ea7\u751f\u5927\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u627f\u62c5\u989d\u5916\u5f00\u9500\u3002\u8981\u652f\u6301 TOAST\uff0c\u7c7b\u578b\u5fc5\u987b\u91c7\u7528\u53d8\u957f\uff08varlena\uff09\u8868\u793a\uff0c\u901a\u5e38\u5176\u5b58\u50a8\u503c\u7684\u7b2c\u4e00\u4e2a\u56db\u5b57\u8282\u5b57\u8bb0\u5f55\u603b\u5b57\u8282\u957f\u5ea6\uff0c\u5305\u62ec\u8be5\u957f\u5ea6\u5b57\u672c\u8eab\u3002TOAST \u4e0d\u9650\u5236\u7c7b\u578b\u8868\u793a\u7684\u5176\u4f59\u90e8\u5206\u3002\u7edf\u79f0\u4e3a TOAST \u503c\u7684\u7279\u6b8a\u8868\u793a\u901a\u8fc7\u4fee\u6539\u6216\u91cd\u65b0\u89e3\u91ca\u8fd9\u4e2a\u9996\u90e8\u957f\u5ea6\u5b57\u5de5\u4f5c\u3002\u56e0\u6b64\uff0c\u652f\u6301 TOAST \u7c7b\u578b\u7684 C \u5c42\u51fd\u6570\u5fc5\u987b\u8c28\u614e\u5904\u7406\u53ef\u80fd\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u8f93\u5165\uff1a\u5728\u89e3\u9664 TOAST \u8868\u793a\u524d\uff0c\u8f93\u5165\u53ef\u80fd\u5e76\u4e0d\u7531\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u52a0\u5b9e\u9645\u5185\u5bb9\u7ec4\u6210\u3002\u901a\u5e38\u5e94\u5728\u4efb\u4f55\u5904\u7406\u4e4b\u524d\u8c03\u7528 PG_DETOAST_DATUM\uff0c\u4f46\u67d0\u4e9b\u60c5\u5f62\u53ef\u91c7\u7528\u66f4\u9ad8\u6548\u7684\u65b9\u6cd5\uff0c\u8be6\u60c5\u53c2\u89c1\u7b2c 36.13.1 \u8282\u3002</p>\n<p lang=\"zh\">TOAST \u5360\u7528 varlena \u957f\u5ea6\u5b57\u7684\u4e24\u4e2a\u4f4d\uff1a\u5927\u7aef\u673a\u5668\u4f7f\u7528\u9ad8\u4f4d\uff0c\u5c0f\u7aef\u673a\u5668\u4f7f\u7528\u4f4e\u4f4d\uff0c\u56e0\u6b64\u652f\u6301 TOAST \u7684\u7c7b\u578b\u4e2d\uff0c\u4efb\u4f55\u503c\u7684\u903b\u8f91\u5927\u5c0f\u90fd\u9650\u4e8e 1 GB\uff082^30 - 1 \u5b57\u8282\uff09\u3002\u4e24\u4f4d\u5747\u4e3a\u96f6\u65f6\uff0c\u8be5\u503c\u662f\u666e\u901a\u7684\u672a\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u503c\uff0c\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u672c\u8eab\u5728\u5185\u7684\u603b\u5b57\u8282\u6570\u3002\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u7f6e\u4f4d\u65f6\uff0c\u8be5\u503c\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u800c\u975e\u901a\u5e38\u7684\u56db\u5b57\u8282\u9996\u90e8\uff0c\u8be5\u5b57\u8282\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u8282\u5728\u5185\u7684\u603b\u5927\u5c0f\u3002\u8fd9\u4f7f\u5c0f\u4e8e 127 \u5b57\u8282\u7684\u503c\u80fd\u591f\u7d27\u51d1\u5b58\u50a8\uff0c\u540c\u65f6\u4ecd\u5141\u8bb8\u7c7b\u578b\u5728\u9700\u8981\u65f6\u589e\u957f\u5230 1 GB\u3002\u5355\u5b57\u8282\u9996\u90e8\u7684\u503c\u65e0\u9700\u6309\u7279\u5b9a\u8fb9\u754c\u5bf9\u9f50\uff1b\u56db\u5b57\u8282\u9996\u90e8\u7684\u503c\u5219\u81f3\u5c11\u6309\u56db\u5b57\u8282\u8fb9\u754c\u5bf9\u9f50\u3002\u7701\u7565\u5bf9\u9f50\u586b\u5145\u8fd8\u80fd\u8282\u7701\u7a7a\u95f4\uff0c\u5bf9\u4e8e\u77ed\u503c\u5c24\u5176\u660e\u663e\u3002\u4e00\u4e2a\u7279\u6b8a\u60c5\u51b5\u662f\uff1a\u5982\u679c\u5355\u5b57\u8282\u9996\u90e8\u7684\u5176\u4f59\u4f4d\u5168\u4e3a\u96f6\u2014\u2014\u8fd9\u4e0d\u53ef\u80fd\u662f\u5305\u542b\u81ea\u8eab\u7684\u957f\u5ea6\u2014\u2014\u8be5\u503c\u5c31\u662f\u6307\u5411\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u5177\u4f53\u5f62\u5f0f\u89c1\u4e0b\u6587\u3002\u6307\u9488\u7684\u7c7b\u578b\u548c\u5927\u5c0f\u7531\u6570\u636e\u7b2c\u4e8c\u4e2a\u5b57\u8282\u4e2d\u7684\u4ee3\u7801\u51b3\u5b9a\u3002\u6700\u540e\uff0c\u5982\u679c\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u6e05\u96f6\uff0c\u800c\u76f8\u90bb\u4f4d\u7f6e\u4f4d\uff0c\u6570\u636e\u5185\u5bb9\u5c31\u5df2\u538b\u7f29\uff0c\u4f7f\u7528\u524d\u5fc5\u987b\u89e3\u538b\u3002\u6b64\u65f6\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u538b\u7f29\u540e\u6570\u636e\u7684\u603b\u5927\u5c0f\uff0c\u800c\u975e\u539f\u59cb\u6570\u636e\u5927\u5c0f\u3002\u884c\u5916\u6570\u636e\u4e5f\u53ef\u80fd\u538b\u7f29\uff0c\u4f46 varlena \u9996\u90e8\u4e0d\u8868\u660e\u8fd9\u4e00\u70b9\uff0c\u9700\u67e5\u770b TOAST \u6307\u9488\u7684\u5185\u5bb9\u3002</p>\n<p lang=\"zh\">\u65e0\u8bba\u662f\u884c\u5185\u538b\u7f29\u6570\u636e\u8fd8\u662f\u884c\u5916\u538b\u7f29\u6570\u636e\uff0c\u5176\u6240\u7528\u7684\u538b\u7f29\u6280\u672f\u90fd\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e <code class=\"literal\">COMPRESSION</code> \u5217\u9009\u9879\u6765\u6309\u5217\u9009\u62e9\uff0c\u8be5\u9009\u9879\u53ef\u5728 <code class=\"command\">CREATE TABLE</code> \u6216 <code class=\"command\">ALTER TABLE</code> \u4e2d\u6307\u5b9a\u3002\u5bf9\u672a\u663e\u5f0f\u8bbe\u7f6e\u7684\u5217\uff0c\u4f1a\u5728\u63d2\u5165\u6570\u636e\u65f6\u53c2\u8003\u53c2\u6570<a class=\"xref\" href=\"/docs/19/runtime-config-client.html#GUC-DEFAULT-TOAST-COMPRESSION\">default_toast_compression</a>\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u5982\u524d\u6240\u8ff0\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u6709\u591a\u79cd\u7c7b\u578b\u3002\u6700\u65e9\u3001\u4e5f\u6700\u5e38\u89c1\u7684\u4e00\u79cd\uff0c\u662f\u6307\u5411\u5b58\u50a8\u5728 <em class=\"firstterm\"><acronym class=\"acronym\">TOAST</acronym> \u8868</em>\u4e2d\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u8be5\u8868\u4e0e\u5305\u542b\u8be5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u672c\u8eab\u7684\u8868\u76f8\u5173\u8054\uff0c\u4f46\u4e0e\u4e4b\u5206\u79bb\u5b58\u50a8\u3002\u5f53\u4e00\u4e2a\u8981\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u7684\u5143\u7ec4\u8fc7\u5927\u800c\u65e0\u6cd5\u539f\u6837\u5b58\u50a8\u65f6\uff0c\u8fd9\u4e9b<em class=\"firstterm\">\u78c1\u76d8\u4e0a\u7684</em>\u6307\u9488 datum \u4f1a\u7531 <acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\uff08\u4f4d\u4e8e <code class=\"filename\">access/common/toast_internals.c</code>\uff09\u521b\u5efa\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/19/storage-toast.html#STORAGE-TOAST-ONDISK\" title=\"66.2.1.\u00a0\u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a066.2.1\u00a0\u8282</a>\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u53ef\u4ee5\u5305\u542b\u6307\u5411\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\u3002\u8fd9\u7c7b datum \u5fc5\u7136\u662f\u77ed\u547d\u7684\uff0c\u6c38\u8fdc\u4e0d\u4f1a\u51fa\u73b0\u5728\u78c1\u76d8\u4e0a\uff0c\u4f46\u5b83\u4eec\u5bf9\u4e8e\u907f\u514d\u5927\u578b\u6570\u636e\u503c\u7684\u590d\u5236\u548c\u5197\u4f59\u5904\u7406\u975e\u5e38\u6709\u7528\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/19/storage-toast.html#STORAGE-TOAST-INMEMORY\" title=\"66.2.2.\u00a0\u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a066.2.2\u00a0\u8282</a>\u3002</p>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/19/storage-toast.html#STORAGE-TOAST-ONDISK\">66.2.1. \u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u5982\u679c\u8868\u4e2d\u6709\u5217\u652f\u6301 TOAST\uff0c\u8868\u5c31\u4f1a\u5173\u8054\u4e00\u4e2a TOAST \u8868\uff0c\u5176 OID \u5b58\u50a8\u5728 pg_class.reltoastrelid \u4e2d\u3002\u78c1\u76d8\u4e0a\u7684 TOAST \u503c\u5b58\u653e\u5728\u8be5 TOAST \u8868\u4e2d\uff0c\u8be6\u60c5\u89c1\u4e0b\u6587\u3002</p>\n<p lang=\"zh\">\u884c\u5916\u503c\u5728\u538b\u7f29\u540e\uff08\u5982\u679c\u4f7f\u7528\u538b\u7f29\uff09\u62c6\u6210\u6700\u591a TOAST_MAX_CHUNK_SIZE \u5b57\u8282\u7684\u5757\u3002\u9ed8\u8ba4\u9009\u62e9\u6b64\u503c\uff0c\u4f7f\u4e00\u4e2a\u9875\u9762\u80fd\u88c5\u4e0b\u56db\u4e2a\u5757\u884c\uff0c\u56e0\u6b64\u7ea6\u4e3a 2000 \u5b57\u8282\u3002\u6bcf\u5757\u4f5c\u4e3a\u72ec\u7acb\u7684\u4e00\u884c\u5b58\u5165\u6240\u5c5e\u8868\u7684 TOAST \u8868\u3002\u6bcf\u4e2a TOAST \u8868\u90fd\u6709 chunk_id\uff08\u6807\u8bc6\u7279\u5b9a TOAST \u503c\u7684 OID\uff09\u3001chunk_seq\uff08\u8be5\u5757\u5728\u503c\u4e2d\u7684\u5e8f\u53f7\uff09\u548c chunk_data\uff08\u5b9e\u9645\u5757\u6570\u636e\uff09\u4e09\u5217\u3002chunk_id \u4e0e chunk_seq \u4e0a\u7684\u552f\u4e00\u7d22\u5f15\u7528\u4e8e\u5feb\u901f\u68c0\u7d22\u503c\u3002\u56e0\u6b64\uff0c\u8868\u793a\u78c1\u76d8\u884c\u5916 TOAST \u503c\u7684\u6307\u9488\u9700\u8981\u5b58\u50a8 TOAST \u8868\u7684 OID\uff0c\u4ee5\u53ca\u7279\u5b9a\u503c\u7684 OID\uff0c\u5373 chunk_id\u3002\u4e3a\u65b9\u4fbf\u4f7f\u7528\uff0c\u6307\u9488\u8fd8\u5b58\u50a8\u903b\u8f91\u6570\u636e\u5927\u5c0f\uff08\u539f\u59cb\u672a\u538b\u7f29\u957f\u5ea6\uff09\u548c\u7269\u7406\u5b58\u50a8\u5927\u5c0f\uff08\u4f7f\u7528\u538b\u7f29\u65f6\u4e0e\u539f\u59cb\u5927\u5c0f\u4e0d\u540c\uff09\uff0c\u4ee5\u53ca\u6240\u4f7f\u7528\u7684\u538b\u7f29\u65b9\u6cd5\uff08\u5982\u679c\u6709\uff09\u3002\u7b97\u4e0a varlena \u9996\u90e8\u5b57\u8282\uff0c\u78c1\u76d8 TOAST \u6307\u9488\u7684\u603b\u5927\u5c0f\u4e3a 18 \u5b57\u8282\uff0c\u4e0e\u5176\u8868\u793a\u7684\u503c\u7684\u5b9e\u9645\u5927\u5c0f\u65e0\u5173\u3002</p>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u53ea\u6709\u5728\u8981\u5b58\u5165\u8868\u4e2d\u7684\u884c\u503c\u5bbd\u4e8e <code class=\"symbol\">TOAST_TUPLE_THRESHOLD</code> \u5b57\u8282\uff08\u901a\u5e38\u4e3a 2 kB\uff09\u65f6\u624d\u4f1a\u88ab\u89e6\u53d1\u3002<acronym class=\"acronym\">TOAST</acronym> \u4ee3\u7801\u4f1a\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u628a\u5b57\u6bb5\u503c\u79fb\u5230\u884c\u5916\uff0c\u76f4\u5230\u8be5\u884c\u503c\u77ed\u4e8e <code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u5b57\u8282\uff08\u901a\u5e38\u4e5f\u4e3a 2 kB\uff0c\u4f46\u53ef\u8c03\u6574\uff09\uff0c\u6216\u8005\u5df2\u7ecf\u65e0\u6cd5\u518d\u83b7\u5f97\u66f4\u591a\u6536\u76ca\u3002\u5728 UPDATE \u64cd\u4f5c\u4e2d\uff0c\u672a\u66f4\u6539\u5b57\u6bb5\u7684\u503c\u901a\u5e38\u4f1a\u539f\u6837\u4fdd\u7559\uff1b\u56e0\u6b64\uff0c\u5982\u679c\u66f4\u65b0\u4e00\u884c\u65f6\u5176\u884c\u5916\u503c\u90fd\u6ca1\u6709\u53d8\u5316\uff0c\u4fbf\u4e0d\u4f1a\u4ea7\u751f <acronym class=\"acronym\">TOAST</acronym> \u6210\u672c\u3002</p>\n<p lang=\"zh\">TOAST \u7ba1\u7406\u4ee3\u7801\u652f\u6301\u56db\u79cd\u5c06\u53ef TOAST \u5217\u5b58\u50a8\u5230\u78c1\u76d8\u7684\u7b56\u7565\uff1a</p>\n<div class=\"itemizedlist\">\n<ul class=\"itemizedlist\">\n<li class=\"listitem\" lang=\"zh\">PLAIN \u7981\u6b62\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\u3002\u5bf9\u4e8e\u4e0d\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\uff0c\u8fd9\u662f\u552f\u4e00\u53ef\u7528\u7684\u5217\u5b58\u50a8\u7b56\u7565\u3002</li>\n<li class=\"listitem\" lang=\"zh\">EXTENDED \u540c\u65f6\u5141\u8bb8\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u662f\u5927\u591a\u6570\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u7684\u9ed8\u8ba4\u7b56\u7565\u3002\u5148\u5c1d\u8bd5\u538b\u7f29\uff1b\u5982\u679c\u884c\u4ecd\u7136\u8fc7\u5927\uff0c\u518d\u4f7f\u7528\u884c\u5916\u5b58\u50a8\u3002</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">EXTERNAL</code> \u5141\u8bb8\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u4e0d\u5141\u8bb8\u538b\u7f29\u3002\u4f7f\u7528 <code class=\"literal\">EXTERNAL</code> \u4f1a\u8ba9\u5bbd <code class=\"type\">text</code> \u548c <code class=\"type\">bytea</code> \u5217\u4e0a\u7684\u5b50\u4e32\u64cd\u4f5c\u66f4\u5feb\uff08\u4ee3\u4ef7\u662f\u5360\u7528\u66f4\u591a\u5b58\u50a8\u7a7a\u95f4\uff09\uff0c\u56e0\u4e3a\u5728\u503c\u672a\u538b\u7f29\u65f6\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u7ecf\u8fc7\u4f18\u5316\uff0c\u53ea\u9700\u63d0\u53d6\u884c\u5916\u503c\u4e2d\u6240\u9700\u7684\u90e8\u5206\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">MAIN</code> \u5141\u8bb8\u538b\u7f29\uff0c\u4f46\u4e0d\u5141\u8bb8\u884c\u5916\u5b58\u50a8\u3002\uff08\u5b9e\u9645\u4e0a\uff0c\u5bf9\u4e8e\u8fd9\u7c7b\u5217\uff0c\u4ecd\u7136\u53ef\u80fd\u8fdb\u884c\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u53ea\u6709\u5728\u522b\u65e0\u4ed6\u6cd5\u3001\u5fc5\u987b\u8fd9\u6837\u505a\u624d\u80fd\u8ba9\u884c\u8db3\u591f\u5c0f\u4ee5\u653e\u5165\u9875\u9762\u65f6\uff0c\u624d\u4f1a\u628a\u5b83\u4f5c\u4e3a\u6700\u540e\u624b\u6bb5\u3002\uff09</p>\n</li>\n</ul>\n</div>\n<p lang=\"zh\">\u6bcf\u79cd\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u90fd\u4e3a\u5176\u5217\u6307\u5b9a\u9ed8\u8ba4\u7b56\u7565\uff0c\u4f46\u5177\u4f53\u8868\u5217\u7684\u7b56\u7565\u53ef\u901a\u8fc7 ALTER TABLE ... SET STORAGE \u4fee\u6539\u3002</p>\n<p lang=\"zh\"><code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u4e5f\u53ef\u4ee5\u9488\u5bf9\u6bcf\u4e2a\u8868\u901a\u8fc7 <a class=\"link\" href=\"/docs/19/sql-altertable.html\" title=\"ALTER TABLE\"><code class=\"command\">ALTER TABLE ... SET (toast_tuple_target = N)</code></a> \u8fdb\u884c\u8c03\u6574\u3002</p>\n<p lang=\"zh\">\u4e0e\u8ba9\u884c\u503c\u8de8\u9875\u7b49\u66f4\u76f4\u63a5\u7684\u505a\u6cd5\u76f8\u6bd4\uff0c\u6b64\u65b9\u6848\u6709\u591a\u9879\u4f18\u52bf\u3002\u5047\u8bbe\u67e5\u8be2\u901a\u5e38\u6309\u8f83\u5c0f\u952e\u503c\u8fdb\u884c\u6bd4\u8f83\u7b5b\u9009\uff0c\u6267\u884c\u5668\u7684\u5927\u90e8\u5206\u5de5\u4f5c\u5c31\u53ef\u53ea\u4f7f\u7528\u4e3b\u884c\u6570\u636e\u3002TOAST \u5c5e\u6027\u7684\u5927\u503c\u4ec5\u5728\u5c06\u7ed3\u679c\u53d1\u9001\u7ed9\u5ba2\u6237\u7aef\u65f6\u624d\u8bfb\u53d6\uff0c\u800c\u4e14\u524d\u63d0\u662f\u67e5\u8be2\u786e\u5b9e\u9009\u62e9\u4e86\u8fd9\u4e9b\u503c\u3002\u56e0\u800c\u4e3b\u8868\u663e\u8457\u7f29\u5c0f\uff0c\u5171\u4eab\u7f13\u51b2\u533a\u53ef\u5bb9\u7eb3\u66f4\u591a\u884c\uff1b\u6392\u5e8f\u6570\u636e\u96c6\u4e5f\u4f1a\u7f29\u5c0f\uff0c\u66f4\u5bb9\u6613\u5b8c\u5168\u5728\u5185\u5b58\u4e2d\u6392\u5e8f\u3002\u539f\u6587\u4e2d\u7684\u4e00\u4e2a\u5c0f\u6d4b\u8bd5\u8868\u660e\uff1a\u5305\u542b\u5178\u578b HTML \u9875\u9762\u53ca URL \u7684\u8868\u8fde\u540c TOAST \u8868\uff0c\u5360\u7528\u7ea6\u4e3a\u539f\u59cb\u6570\u636e\u7684\u4e00\u534a\uff1b\u4e3b\u8868\u53ea\u5360\u603b\u6570\u636e\u7ea6 10%\uff0c\u5305\u62ec URL \u548c\u5c11\u91cf\u5c0f HTML \u9875\u9762\u3002\u4e0e\u5c06\u6240\u6709 HTML \u9875\u9762\u622a\u77ed\u81f3 7 kB \u4ee5\u4fbf\u88c5\u5165\u884c\u5185\u3001\u672a\u4f7f\u7528 TOAST \u7684\u5bf9\u7167\u8868\u76f8\u6bd4\uff0c\u8fd0\u884c\u65f6\u95f4\u6ca1\u6709\u5dee\u5f02\u3002</p>\n</div>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/19/storage-toast.html#STORAGE-TOAST-INMEMORY\">66.2.2. \u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ef\u4ee5\u6307\u5411\u4e0d\u5728\u78c1\u76d8\u4e0a\u3001\u800c\u4f4d\u4e8e\u5f53\u524d\u670d\u52a1\u5668\u8fdb\u7a0b\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u6570\u636e\u3002\u8fd9\u7c7b\u6307\u9488\u663e\u7136\u4e0d\u53ef\u80fd\u957f\u671f\u5b58\u5728\uff0c\u4f46\u4ecd\u7136\u5f88\u6709\u7528\u3002\u76ee\u524d\u6709\u4e24\u4e2a\u5b50\u60c5\u51b5\uff1a\u6307\u5411<em class=\"firstterm\">\u95f4\u63a5</em>\u6570\u636e\u7684\u6307\u9488\uff0c\u4ee5\u53ca\u6307\u5411<em class=\"firstterm\">\u5c55\u5f00</em>\u6570\u636e\u7684\u6307\u9488\u3002</p>\n<p lang=\"zh\">\u95f4\u63a5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ea\u662f\u7b80\u5355\u5730\u6307\u5411\u67d0\u5904\u5185\u5b58\u4e2d\u5b58\u653e\u7684\u4e00\u4e2a\u975e\u95f4\u63a5 varlena \u503c\u3002\u8fd9\u4e00\u60c5\u51b5\u6700\u521d\u53ea\u662f\u4f5c\u4e3a\u6982\u5ff5\u9a8c\u8bc1\u800c\u521b\u5efa\uff0c\u4f46\u76ee\u524d\u5728\u903b\u8f91\u89e3\u7801\u671f\u95f4\u4f1a\u7528\u5230\u5b83\uff0c\u4ee5\u907f\u514d\u53ef\u80fd\u4e0d\u5f97\u4e0d\u521b\u5efa\u8d85\u8fc7 1 GB \u7684\u7269\u7406\u5143\u7ec4\uff08\u628a\u6240\u6709\u884c\u5916\u5b57\u6bb5\u503c\u90fd\u62c9\u5165\u5143\u7ec4\u5c31\u53ef\u80fd\u5bfc\u81f4\u8fd9\u79cd\u60c5\u51b5\uff09\u3002\u8fd9\u79cd\u673a\u5236\u7684\u7528\u9014\u6709\u9650\uff0c\u56e0\u4e3a\u521b\u5efa\u8be5\u6307\u9488 datum \u7684\u4e00\u65b9\u5fc5\u987b\u5b8c\u5168\u8d1f\u8d23\u786e\u4fdd\u88ab\u5f15\u7528\u6570\u636e\u5728\u6307\u9488\u53ef\u80fd\u5b58\u5728\u7684\u6574\u4e2a\u671f\u95f4\u90fd\u4fdd\u6301\u6709\u6548\uff0c\u800c\u4e14\u7cfb\u7edf\u5e76\u6ca1\u6709\u4efb\u4f55\u57fa\u7840\u8bbe\u65bd\u6765\u5e2e\u52a9\u505a\u5230\u8fd9\u4e00\u70b9\u3002</p>\n<p lang=\"zh\">\u5c55\u5f00\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5bf9\u90a3\u4e9b\u78c1\u76d8\u8868\u793a\u5f62\u5f0f\u5e76\u4e0d\u7279\u522b\u9002\u5408\u8ba1\u7b97\u7528\u9014\u7684\u590d\u6742\u6570\u636e\u7c7b\u578b\u5f88\u6709\u7528\u3002\u4ee5\u6807\u51c6\u7684 <span class=\"productname\">PostgreSQL</span> \u6570\u7ec4 varlena \u8868\u793a\u4e3a\u4f8b\uff0c\u5b83\u5305\u542b\u7ef4\u5ea6\u4fe1\u606f\u3001\u4e00\u4e2a\u7a7a\u503c\u4f4d\u56fe\uff08\u5982\u679c\u5b58\u5728\u7a7a\u503c\u5143\u7d20\uff09\uff0c\u7136\u540e\u4f9d\u6b21\u4fdd\u5b58\u6240\u6709\u5143\u7d20\u7684\u503c\u3002\u5f53\u5143\u7d20\u7c7b\u578b\u672c\u8eab\u4e5f\u662f\u53d8\u957f\u65f6\uff0c\u5b9a\u4f4d\u7b2c <em class=\"replaceable\"><code>N</code></em> \u4e2a\u5143\u7d20\u7684\u552f\u4e00\u529e\u6cd5\u5c31\u662f\u626b\u63cf\u5b83\u524d\u9762\u7684\u6240\u6709\u5143\u7d20\u3002\u8fd9\u79cd\u8868\u793a\u5f62\u5f0f\u56e0\u5176\u7d27\u51d1\u6027\u800c\u9002\u5408\u78c1\u76d8\u5b58\u50a8\uff0c\u4f46\u5bf9\u4e8e\u6570\u7ec4\u8ba1\u7b97\u800c\u8a00\uff0c\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u5c55\u5f00</span>\u201d</span>\u6216<span class=\"quote\">\u201c<span class=\"quote\">\u89e3\u6784</span>\u201d</span>\u7684\u8868\u793a\u4f1a\u66f4\u597d\uff0c\u56e0\u4e3a\u5176\u4e2d\u6240\u6709\u5143\u7d20\u7684\u8d77\u59cb\u4f4d\u7f6e\u90fd\u5df2\u8bc6\u522b\u51fa\u6765\u3002<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u673a\u5236\u901a\u8fc7\u5141\u8bb8\u6309\u5f15\u7528\u4f20\u9012\u7684 Datum \u6307\u5411\u6807\u51c6 varlena \u503c\uff08\u5373\u78c1\u76d8\u8868\u793a\uff09\u6216\u8005\u6307\u5411\u5185\u5b58\u4e2d\u67d0\u5904\u5c55\u5f00\u8868\u793a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c\u6765\u6ee1\u8db3\u8fd9\u4e00\u9700\u8981\u3002\u8fd9\u79cd\u5c55\u5f00\u8868\u793a\u7684\u5177\u4f53\u7ec6\u8282\u7531\u6570\u636e\u7c7b\u578b\u81ea\u884c\u51b3\u5b9a\uff0c\u4e0d\u8fc7\u5b83\u5fc5\u987b\u5177\u6709\u6807\u51c6\u5934\u90e8\uff0c\u5e76\u6ee1\u8db3 <code class=\"filename\">src/include/utils/expandeddatum.h</code> \u4e2d\u7ed9\u51fa\u7684\u5176\u4ed6 API \u8981\u6c42\u3002\u5904\u7406\u8be5\u6570\u636e\u7c7b\u578b\u7684 C \u7ea7\u51fd\u6570\u53ef\u4ee5\u9009\u62e9\u652f\u6301\u4efb\u4e00\u79cd\u8868\u793a\u3002\u4e0d\u77e5\u9053\u5c55\u5f00\u8868\u793a\u3001\u4f46\u53ea\u662f\u5bf9\u8f93\u5165\u5e94\u7528 <code class=\"function\">PG_DETOAST_DATUM</code> \u7684\u51fd\u6570\uff0c\u4f1a\u81ea\u52a8\u83b7\u5f97\u4f20\u7edf\u7684 varlena \u8868\u793a\uff1b\u56e0\u6b64\uff0c\u5bf9\u5c55\u5f00\u8868\u793a\u7684\u652f\u6301\u53ef\u4ee5\u9010\u6b65\u5f15\u5165\uff0c\u4e00\u6b21\u589e\u52a0\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\u3002</p>\n<p lang=\"zh\">\u6307\u5411\u5c55\u5f00\u503c\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u8fd8\u53ef\u8fdb\u4e00\u6b65\u5206\u4e3a<em class=\"firstterm\">\u53ef\u8bfb\u5199\uff08read-write\uff09</em>\u548c<em class=\"firstterm\">\u53ea\u8bfb\uff08read-only\uff09</em>\u6307\u9488\u3002\u65e0\u8bba\u54ea\u79cd\u65b9\u5f0f\uff0c\u88ab\u6307\u5411\u7684\u8868\u793a\u662f\u76f8\u540c\u7684\uff1b\u4f46\u6536\u5230\u53ef\u8bfb\u5199\u6307\u9488\u7684\u51fd\u6570\u53ef\u4ee5\u539f\u5730\u4fee\u6539\u6240\u5f15\u7528\u7684\u503c\uff0c\u800c\u6536\u5230\u53ea\u8bfb\u6307\u9488\u7684\u51fd\u6570\u5219\u4e0d\u53ef\u4ee5\uff0c\u5982\u679c\u5b83\u60f3\u751f\u6210\u8be5\u503c\u7684\u4fee\u6539\u7248\u672c\uff0c\u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u526f\u672c\u3002\u8fd9\u79cd\u533a\u5206\u4ee5\u53ca\u4e00\u4e9b\u76f8\u5173\u7ea6\u5b9a\uff0c\u4f7f\u5f97\u5728\u67e5\u8be2\u6267\u884c\u671f\u95f4\u53ef\u4ee5\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u5c55\u5f00\u503c\u590d\u5236\u3002</p>\n<p lang=\"zh\">\u5bf9\u4e8e\u6240\u6709\u7c7b\u578b\u7684\u5185\u5b58\u4e2d <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c<acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u90fd\u4f1a\u786e\u4fdd\u8fd9\u7c7b\u6307\u9488 datum \u4e0d\u4f1a\u610f\u5916\u5730\u88ab\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u3002\u5185\u5b58\u4e2d\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5728\u5b58\u50a8\u524d\u4f1a\u81ea\u52a8\u5c55\u5f00\u4e3a\u666e\u901a\u7684\u884c\u5185 varlena \u503c\uff0c\u5982\u679c\u8fd9\u6837\u4f1a\u4f7f\u627f\u8f7d\u5b83\u7684\u5143\u7ec4\u8fc7\u5927\uff0c\u8fd8\u53ef\u80fd\u8fdb\u4e00\u6b65\u8f6c\u6362\u4e3a\u78c1\u76d8\u4e0a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u3002</p>\n</div>\n</div>", "manual_path": "/docs/19/storage-toast.html", "localization": {"status": "complete", "sources": [{"url": "/docs/19/storage-toast.html", "method": "same-major semantic node", "sha256": "ec338e5f077ab4973036c9f0f5c8f6636e72d495c61046ae86b9d2f5f97ee6b1", "language": "zh", "matched_nodes": ["#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[2]", "#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[3]", "#STORAGE-TOAST/div[10]/p[3]", "#STORAGE-TOAST/div[10]/p[7]", "#STORAGE-TOAST/div[11]/p[1]", "#STORAGE-TOAST/div[11]/p[2]", "#STORAGE-TOAST/div[11]/p[3]", "#STORAGE-TOAST/div[11]/p[4]", "#STORAGE-TOAST/div[11]/p[5]", "#STORAGE-TOAST/div[1]/dl[0]/dt[0]", "#STORAGE-TOAST/div[1]/dl[0]/dt[1]", "#STORAGE-TOAST/p[4]", "#STORAGE-TOAST/p[5]", "#STORAGE-TOAST/p[8]", "#STORAGE-TOAST/p[9]"]}], "language": "zh", "original_text": {"/versions/19/description/0": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/versions/19/facts/0/label": "Definition scope", "/versions/19/facts/0/value": "Same-version core physical storage documentation", "/versions/19/related/1/label": "Storage Parameters"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "916899e97b81652987d694efd9d520b5d32810cc5f454fed65a2528dd57e5a0a"}, "comparison_data": {"layouts": []}, "comparison_hash": "27341929154bfb55531f03501322b65af719c5561f3c4ddc9528a14aa4df69b5", "manual_language": "zh"}, "20": {"facts": [{"label": "\u5b9a\u4e49\u8303\u56f4", "value": "\u540c\u7248\u672c\u6838\u5fc3\u7269\u7406\u5b58\u50a8\u6587\u6863"}], "tables": [], "related": [{"url": "/wiki/tableam/?v=20", "label": "Table AM"}, {"url": "/wiki/relopts/?v=20", "label": "\u5b58\u50a8\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/snapshot/dev/postgresql-snapshot.tar.bz2", "label": "20devel", "major": "20", "channel": "devel", "revision": "4d3346909b201ac1648232cf290462a7070c119326f56196f1f0253ed80fae41"}, "sources": [{"url": "https://pg.center/docs/devel/storage-toast.html", "path": "storage-toast.html", "label": "PostgreSQL 20 English manual", "sha256": "b6ba243d9e6c9d53e6f7de513a3909c67ed75f8ca2ee81c2fef14200fff2a0ed", "language": "en", "original_url": "/docs/devel/storage-toast.html"}], "sections": [], "signature": "", "description": ["\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002"], "manual_html": "<div class=\"sect1\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h2 class=\"title\">66.2.\u00a0TOAST </h2>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08<acronym class=\"acronym\">TOAST</acronym>, The Oversized-Attribute Storage Technique\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"productname\">PostgreSQL</span> \u4f7f\u7528\u56fa\u5b9a\u9875\u9762\u5927\u5c0f\uff08\u901a\u5e38\u4e3a 8 kB\uff09\uff0c\u5e76\u4e14\u4e0d\u5141\u8bb8\u5143\u7ec4\u8de8\u8d8a\u591a\u4e2a\u9875\u9762\u3002\u56e0\u6b64\uff0c\u65e0\u6cd5\u76f4\u63a5\u5b58\u50a8\u975e\u5e38\u5927\u7684\u5b57\u6bb5\u503c\u3002\u4e3a\u514b\u670d\u8fd9\u4e00\u9650\u5236\uff0c\u5927\u5b57\u6bb5\u503c\u4f1a\u88ab\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u62c6\u5206\u6210\u591a\u4e2a\u7269\u7406\u884c\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u5bf9\u7528\u6237\u662f\u900f\u660e\u7684\uff0c\u800c\u4e14\u5bf9\u5927\u90e8\u5206\u540e\u7aef\u4ee3\u7801\u7684\u5f71\u54cd\u5f88\u5c0f\u3002\u8fd9\u9879\u6280\u672f\u88ab\u4eb2\u5207\u5730\u79f0\u4e3a <acronym class=\"acronym\">TOAST</acronym>\uff08\u6216\u8005<span class=\"quote\">\u201c<span class=\"quote\">\u81ea\u5207\u7247\u9762\u5305\u95ee\u4e16\u4ee5\u6765\u6700\u68d2\u7684\u4e1c\u897f</span>\u201d</span>\uff09\u3002<acronym class=\"acronym\">TOAST</acronym> \u57fa\u7840\u8bbe\u65bd\u4e5f\u88ab\u7528\u4e8e\u6539\u8fdb\u5185\u5b58\u4e2d\u5927\u578b\u6570\u636e\u503c\u7684\u5904\u7406\u3002</p>\n<p lang=\"zh\">\u53ea\u6709\u90e8\u5206\u6570\u636e\u7c7b\u578b\u652f\u6301 TOAST\uff1b\u65e0\u9700\u8ba9\u4e0d\u4f1a\u4ea7\u751f\u5927\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u627f\u62c5\u989d\u5916\u5f00\u9500\u3002\u8981\u652f\u6301 TOAST\uff0c\u7c7b\u578b\u5fc5\u987b\u91c7\u7528\u53d8\u957f\uff08varlena\uff09\u8868\u793a\uff0c\u901a\u5e38\u5176\u5b58\u50a8\u503c\u7684\u7b2c\u4e00\u4e2a\u56db\u5b57\u8282\u5b57\u8bb0\u5f55\u603b\u5b57\u8282\u957f\u5ea6\uff0c\u5305\u62ec\u8be5\u957f\u5ea6\u5b57\u672c\u8eab\u3002TOAST \u4e0d\u9650\u5236\u7c7b\u578b\u8868\u793a\u7684\u5176\u4f59\u90e8\u5206\u3002\u7edf\u79f0\u4e3a TOAST \u503c\u7684\u7279\u6b8a\u8868\u793a\u901a\u8fc7\u4fee\u6539\u6216\u91cd\u65b0\u89e3\u91ca\u8fd9\u4e2a\u9996\u90e8\u957f\u5ea6\u5b57\u5de5\u4f5c\u3002\u56e0\u6b64\uff0c\u652f\u6301 TOAST \u7c7b\u578b\u7684 C \u5c42\u51fd\u6570\u5fc5\u987b\u8c28\u614e\u5904\u7406\u53ef\u80fd\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u8f93\u5165\uff1a\u5728\u89e3\u9664 TOAST \u8868\u793a\u524d\uff0c\u8f93\u5165\u53ef\u80fd\u5e76\u4e0d\u7531\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u52a0\u5b9e\u9645\u5185\u5bb9\u7ec4\u6210\u3002\u901a\u5e38\u5e94\u5728\u4efb\u4f55\u5904\u7406\u4e4b\u524d\u8c03\u7528 PG_DETOAST_DATUM\uff0c\u4f46\u67d0\u4e9b\u60c5\u5f62\u53ef\u91c7\u7528\u66f4\u9ad8\u6548\u7684\u65b9\u6cd5\uff0c\u8be6\u60c5\u53c2\u89c1\u7b2c 36.13.1 \u8282\u3002</p>\n<p lang=\"zh\">TOAST \u5360\u7528 varlena \u957f\u5ea6\u5b57\u7684\u4e24\u4e2a\u4f4d\uff1a\u5927\u7aef\u673a\u5668\u4f7f\u7528\u9ad8\u4f4d\uff0c\u5c0f\u7aef\u673a\u5668\u4f7f\u7528\u4f4e\u4f4d\uff0c\u56e0\u6b64\u652f\u6301 TOAST \u7684\u7c7b\u578b\u4e2d\uff0c\u4efb\u4f55\u503c\u7684\u903b\u8f91\u5927\u5c0f\u90fd\u9650\u4e8e 1 GB\uff082^30 - 1 \u5b57\u8282\uff09\u3002\u4e24\u4f4d\u5747\u4e3a\u96f6\u65f6\uff0c\u8be5\u503c\u662f\u666e\u901a\u7684\u672a\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u503c\uff0c\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u672c\u8eab\u5728\u5185\u7684\u603b\u5b57\u8282\u6570\u3002\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u7f6e\u4f4d\u65f6\uff0c\u8be5\u503c\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u800c\u975e\u901a\u5e38\u7684\u56db\u5b57\u8282\u9996\u90e8\uff0c\u8be5\u5b57\u8282\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u8282\u5728\u5185\u7684\u603b\u5927\u5c0f\u3002\u8fd9\u4f7f\u5c0f\u4e8e 127 \u5b57\u8282\u7684\u503c\u80fd\u591f\u7d27\u51d1\u5b58\u50a8\uff0c\u540c\u65f6\u4ecd\u5141\u8bb8\u7c7b\u578b\u5728\u9700\u8981\u65f6\u589e\u957f\u5230 1 GB\u3002\u5355\u5b57\u8282\u9996\u90e8\u7684\u503c\u65e0\u9700\u6309\u7279\u5b9a\u8fb9\u754c\u5bf9\u9f50\uff1b\u56db\u5b57\u8282\u9996\u90e8\u7684\u503c\u5219\u81f3\u5c11\u6309\u56db\u5b57\u8282\u8fb9\u754c\u5bf9\u9f50\u3002\u7701\u7565\u5bf9\u9f50\u586b\u5145\u8fd8\u80fd\u8282\u7701\u7a7a\u95f4\uff0c\u5bf9\u4e8e\u77ed\u503c\u5c24\u5176\u660e\u663e\u3002\u4e00\u4e2a\u7279\u6b8a\u60c5\u51b5\u662f\uff1a\u5982\u679c\u5355\u5b57\u8282\u9996\u90e8\u7684\u5176\u4f59\u4f4d\u5168\u4e3a\u96f6\u2014\u2014\u8fd9\u4e0d\u53ef\u80fd\u662f\u5305\u542b\u81ea\u8eab\u7684\u957f\u5ea6\u2014\u2014\u8be5\u503c\u5c31\u662f\u6307\u5411\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u5177\u4f53\u5f62\u5f0f\u89c1\u4e0b\u6587\u3002\u6307\u9488\u7684\u7c7b\u578b\u548c\u5927\u5c0f\u7531\u6570\u636e\u7b2c\u4e8c\u4e2a\u5b57\u8282\u4e2d\u7684\u4ee3\u7801\u51b3\u5b9a\u3002\u6700\u540e\uff0c\u5982\u679c\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u6e05\u96f6\uff0c\u800c\u76f8\u90bb\u4f4d\u7f6e\u4f4d\uff0c\u6570\u636e\u5185\u5bb9\u5c31\u5df2\u538b\u7f29\uff0c\u4f7f\u7528\u524d\u5fc5\u987b\u89e3\u538b\u3002\u6b64\u65f6\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u538b\u7f29\u540e\u6570\u636e\u7684\u603b\u5927\u5c0f\uff0c\u800c\u975e\u539f\u59cb\u6570\u636e\u5927\u5c0f\u3002\u884c\u5916\u6570\u636e\u4e5f\u53ef\u80fd\u538b\u7f29\uff0c\u4f46 varlena \u9996\u90e8\u4e0d\u8868\u660e\u8fd9\u4e00\u70b9\uff0c\u9700\u67e5\u770b TOAST \u6307\u9488\u7684\u5185\u5bb9\u3002</p>\n<p lang=\"zh\">\u65e0\u8bba\u662f\u884c\u5185\u538b\u7f29\u6570\u636e\u8fd8\u662f\u884c\u5916\u538b\u7f29\u6570\u636e\uff0c\u5176\u6240\u7528\u7684\u538b\u7f29\u6280\u672f\u90fd\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e <code class=\"literal\">COMPRESSION</code> \u5217\u9009\u9879\u6765\u6309\u5217\u9009\u62e9\uff0c\u8be5\u9009\u9879\u53ef\u5728 <code class=\"command\">CREATE TABLE</code> \u6216 <code class=\"command\">ALTER TABLE</code> \u4e2d\u6307\u5b9a\u3002\u5bf9\u672a\u663e\u5f0f\u8bbe\u7f6e\u7684\u5217\uff0c\u4f1a\u5728\u63d2\u5165\u6570\u636e\u65f6\u53c2\u8003\u53c2\u6570<a class=\"xref\" href=\"/docs/devel/runtime-config-client.html#GUC-DEFAULT-TOAST-COMPRESSION\">default_toast_compression</a>\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u5982\u524d\u6240\u8ff0\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u6709\u591a\u79cd\u7c7b\u578b\u3002\u6700\u65e9\u3001\u4e5f\u6700\u5e38\u89c1\u7684\u4e00\u79cd\uff0c\u662f\u6307\u5411\u5b58\u50a8\u5728 <em class=\"firstterm\"><acronym class=\"acronym\">TOAST</acronym> \u8868</em>\u4e2d\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u8be5\u8868\u4e0e\u5305\u542b\u8be5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u672c\u8eab\u7684\u8868\u76f8\u5173\u8054\uff0c\u4f46\u4e0e\u4e4b\u5206\u79bb\u5b58\u50a8\u3002\u5f53\u4e00\u4e2a\u8981\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u7684\u5143\u7ec4\u8fc7\u5927\u800c\u65e0\u6cd5\u539f\u6837\u5b58\u50a8\u65f6\uff0c\u8fd9\u4e9b<em class=\"firstterm\">\u78c1\u76d8\u4e0a\u7684</em>\u6307\u9488 datum \u4f1a\u7531 <acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\uff08\u4f4d\u4e8e <code class=\"filename\">access/common/toast_internals.c</code>\uff09\u521b\u5efa\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/devel/storage-toast.html#STORAGE-TOAST-ONDISK\" title=\"66.2.1.\u00a0\u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a066.2.1\u00a0\u8282</a>\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u53ef\u4ee5\u5305\u542b\u6307\u5411\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\u3002\u8fd9\u7c7b datum \u5fc5\u7136\u662f\u77ed\u547d\u7684\uff0c\u6c38\u8fdc\u4e0d\u4f1a\u51fa\u73b0\u5728\u78c1\u76d8\u4e0a\uff0c\u4f46\u5b83\u4eec\u5bf9\u4e8e\u907f\u514d\u5927\u578b\u6570\u636e\u503c\u7684\u590d\u5236\u548c\u5197\u4f59\u5904\u7406\u975e\u5e38\u6709\u7528\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/devel/storage-toast.html#STORAGE-TOAST-INMEMORY\" title=\"66.2.2.\u00a0\u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a066.2.2\u00a0\u8282</a>\u3002</p>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/devel/storage-toast.html#STORAGE-TOAST-ONDISK\">66.2.1. \u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u5982\u679c\u8868\u4e2d\u6709\u5217\u652f\u6301 TOAST\uff0c\u8868\u5c31\u4f1a\u5173\u8054\u4e00\u4e2a TOAST \u8868\uff0c\u5176 OID \u5b58\u50a8\u5728 pg_class.reltoastrelid \u4e2d\u3002\u78c1\u76d8\u4e0a\u7684 TOAST \u503c\u5b58\u653e\u5728\u8be5 TOAST \u8868\u4e2d\uff0c\u8be6\u60c5\u89c1\u4e0b\u6587\u3002</p>\n<p lang=\"zh\">\u884c\u5916\u503c\u5728\u538b\u7f29\u540e\uff08\u5982\u679c\u4f7f\u7528\u538b\u7f29\uff09\u6839\u636e chunk_id \u7684\u7c7b\u578b\u62c6\u6210\u6700\u591a TOAST_OID_MAX_CHUNK_SIZE \u6216 TOAST_OID8_MAX_CHUNK_SIZE \u5b57\u8282\u7684\u5757\u3002\u9ed8\u8ba4\u9009\u62e9\u8fd9\u4e9b\u503c\uff0c\u4f7f\u4e00\u4e2a\u9875\u9762\u80fd\u88c5\u4e0b\u56db\u4e2a\u5757\u884c\uff0c\u56e0\u6b64\u7ea6\u4e3a 2000 \u5b57\u8282\u3002\u6bcf\u5757\u4f5c\u4e3a\u72ec\u7acb\u7684\u4e00\u884c\u5b58\u5165\u6240\u5c5e\u8868\u7684 TOAST \u8868\u3002\u6bcf\u4e2a TOAST \u8868\u90fd\u6709 chunk_id\uff08\u6807\u8bc6\u7279\u5b9a TOAST \u503c\u7684 OID \u6216 OID8\uff09\u3001chunk_seq\uff08\u8be5\u5757\u5728\u503c\u4e2d\u7684\u5e8f\u53f7\uff09\u548c chunk_data\uff08\u5b9e\u9645\u5757\u6570\u636e\uff09\u4e09\u5217\u3002chunk_id \u4e0e chunk_seq \u4e0a\u7684\u552f\u4e00\u7d22\u5f15\u7528\u4e8e\u5feb\u901f\u68c0\u7d22\u503c\u3002\u56e0\u6b64\uff0c\u8868\u793a\u78c1\u76d8\u884c\u5916 TOAST \u503c\u7684\u6307\u9488\u9700\u8981\u5b58\u50a8 TOAST \u8868\u7684 OID\uff0c\u4ee5\u53ca\u7279\u5b9a\u503c\u7684 chunk_id\u3002\u4e3a\u65b9\u4fbf\u4f7f\u7528\uff0c\u6307\u9488\u8fd8\u5b58\u50a8\u903b\u8f91\u6570\u636e\u5927\u5c0f\uff08\u539f\u59cb\u672a\u538b\u7f29\u957f\u5ea6\uff09\u548c\u7269\u7406\u5b58\u50a8\u5927\u5c0f\uff08\u4f7f\u7528\u538b\u7f29\u65f6\u4e0e\u539f\u59cb\u5927\u5c0f\u4e0d\u540c\uff09\uff0c\u4ee5\u53ca\u6240\u4f7f\u7528\u7684\u538b\u7f29\u65b9\u6cd5\uff08\u5982\u679c\u6709\uff09\u3002\u7b97\u4e0a varlena \u9996\u90e8\u5b57\u8282\uff0c\u78c1\u76d8 TOAST \u6307\u9488\u7684\u603b\u5927\u5c0f\u5728 chunk_id \u4f7f\u7528 OID \u65f6\u4e3a 18 \u5b57\u8282\u3001\u4f7f\u7528 OID8 \u65f6\u4e3a 22 \u5b57\u8282\uff0c\u4e0e\u5176\u8868\u793a\u7684\u503c\u7684\u5b9e\u9645\u5927\u5c0f\u65e0\u5173\u3002</p>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u53ea\u6709\u5728\u8981\u5b58\u5165\u8868\u4e2d\u7684\u884c\u503c\u5bbd\u4e8e <code class=\"symbol\">TOAST_TUPLE_THRESHOLD</code> \u5b57\u8282\uff08\u901a\u5e38\u4e3a 2 kB\uff09\u65f6\u624d\u4f1a\u88ab\u89e6\u53d1\u3002<acronym class=\"acronym\">TOAST</acronym> \u4ee3\u7801\u4f1a\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u628a\u5b57\u6bb5\u503c\u79fb\u5230\u884c\u5916\uff0c\u76f4\u5230\u8be5\u884c\u503c\u77ed\u4e8e <code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u5b57\u8282\uff08\u901a\u5e38\u4e5f\u4e3a 2 kB\uff0c\u4f46\u53ef\u8c03\u6574\uff09\uff0c\u6216\u8005\u5df2\u7ecf\u65e0\u6cd5\u518d\u83b7\u5f97\u66f4\u591a\u6536\u76ca\u3002\u5728 UPDATE \u64cd\u4f5c\u4e2d\uff0c\u672a\u66f4\u6539\u5b57\u6bb5\u7684\u503c\u901a\u5e38\u4f1a\u539f\u6837\u4fdd\u7559\uff1b\u56e0\u6b64\uff0c\u5982\u679c\u66f4\u65b0\u4e00\u884c\u65f6\u5176\u884c\u5916\u503c\u90fd\u6ca1\u6709\u53d8\u5316\uff0c\u4fbf\u4e0d\u4f1a\u4ea7\u751f <acronym class=\"acronym\">TOAST</acronym> \u6210\u672c\u3002</p>\n<p lang=\"zh\">TOAST \u7ba1\u7406\u4ee3\u7801\u652f\u6301\u56db\u79cd\u5c06\u53ef TOAST \u5217\u5b58\u50a8\u5230\u78c1\u76d8\u7684\u7b56\u7565\uff1a</p>\n<div class=\"itemizedlist\">\n<ul class=\"itemizedlist\">\n<li class=\"listitem\" lang=\"zh\">PLAIN \u7981\u6b62\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\u3002\u5bf9\u4e8e\u4e0d\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\uff0c\u8fd9\u662f\u552f\u4e00\u53ef\u7528\u7684\u5217\u5b58\u50a8\u7b56\u7565\u3002</li>\n<li class=\"listitem\" lang=\"zh\">EXTENDED \u540c\u65f6\u5141\u8bb8\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u662f\u5927\u591a\u6570\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u7684\u9ed8\u8ba4\u7b56\u7565\u3002\u5148\u5c1d\u8bd5\u538b\u7f29\uff1b\u5982\u679c\u884c\u4ecd\u7136\u8fc7\u5927\uff0c\u518d\u4f7f\u7528\u884c\u5916\u5b58\u50a8\u3002</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">EXTERNAL</code> \u5141\u8bb8\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u4e0d\u5141\u8bb8\u538b\u7f29\u3002\u4f7f\u7528 <code class=\"literal\">EXTERNAL</code> \u4f1a\u8ba9\u5bbd <code class=\"type\">text</code> \u548c <code class=\"type\">bytea</code> \u5217\u4e0a\u7684\u5b50\u4e32\u64cd\u4f5c\u66f4\u5feb\uff08\u4ee3\u4ef7\u662f\u5360\u7528\u66f4\u591a\u5b58\u50a8\u7a7a\u95f4\uff09\uff0c\u56e0\u4e3a\u5728\u503c\u672a\u538b\u7f29\u65f6\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u7ecf\u8fc7\u4f18\u5316\uff0c\u53ea\u9700\u63d0\u53d6\u884c\u5916\u503c\u4e2d\u6240\u9700\u7684\u90e8\u5206\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">MAIN</code> \u5141\u8bb8\u538b\u7f29\uff0c\u4f46\u4e0d\u5141\u8bb8\u884c\u5916\u5b58\u50a8\u3002\uff08\u5b9e\u9645\u4e0a\uff0c\u5bf9\u4e8e\u8fd9\u7c7b\u5217\uff0c\u4ecd\u7136\u53ef\u80fd\u8fdb\u884c\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u53ea\u6709\u5728\u522b\u65e0\u4ed6\u6cd5\u3001\u5fc5\u987b\u8fd9\u6837\u505a\u624d\u80fd\u8ba9\u884c\u8db3\u591f\u5c0f\u4ee5\u653e\u5165\u9875\u9762\u65f6\uff0c\u624d\u4f1a\u628a\u5b83\u4f5c\u4e3a\u6700\u540e\u624b\u6bb5\u3002\uff09</p>\n</li>\n</ul>\n</div>\n<p lang=\"zh\">\u6bcf\u79cd\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u90fd\u4e3a\u5176\u5217\u6307\u5b9a\u9ed8\u8ba4\u7b56\u7565\uff0c\u4f46\u5177\u4f53\u8868\u5217\u7684\u7b56\u7565\u53ef\u901a\u8fc7 ALTER TABLE ... SET STORAGE \u4fee\u6539\u3002</p>\n<p lang=\"zh\"><code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u4e5f\u53ef\u4ee5\u9488\u5bf9\u6bcf\u4e2a\u8868\u901a\u8fc7 <a class=\"link\" href=\"/docs/devel/sql-altertable.html\" title=\"ALTER TABLE\"><code class=\"command\">ALTER TABLE ... SET (toast_tuple_target = N)</code></a> \u8fdb\u884c\u8c03\u6574\u3002</p>\n<p lang=\"zh\">\u4e0e\u8ba9\u884c\u503c\u8de8\u9875\u7b49\u66f4\u76f4\u63a5\u7684\u505a\u6cd5\u76f8\u6bd4\uff0c\u6b64\u65b9\u6848\u6709\u591a\u9879\u4f18\u52bf\u3002\u5047\u8bbe\u67e5\u8be2\u901a\u5e38\u6309\u8f83\u5c0f\u952e\u503c\u8fdb\u884c\u6bd4\u8f83\u7b5b\u9009\uff0c\u6267\u884c\u5668\u7684\u5927\u90e8\u5206\u5de5\u4f5c\u5c31\u53ef\u53ea\u4f7f\u7528\u4e3b\u884c\u6570\u636e\u3002TOAST \u5c5e\u6027\u7684\u5927\u503c\u4ec5\u5728\u5c06\u7ed3\u679c\u53d1\u9001\u7ed9\u5ba2\u6237\u7aef\u65f6\u624d\u8bfb\u53d6\uff0c\u800c\u4e14\u524d\u63d0\u662f\u67e5\u8be2\u786e\u5b9e\u9009\u62e9\u4e86\u8fd9\u4e9b\u503c\u3002\u56e0\u800c\u4e3b\u8868\u663e\u8457\u7f29\u5c0f\uff0c\u5171\u4eab\u7f13\u51b2\u533a\u53ef\u5bb9\u7eb3\u66f4\u591a\u884c\uff1b\u6392\u5e8f\u6570\u636e\u96c6\u4e5f\u4f1a\u7f29\u5c0f\uff0c\u66f4\u5bb9\u6613\u5b8c\u5168\u5728\u5185\u5b58\u4e2d\u6392\u5e8f\u3002\u539f\u6587\u4e2d\u7684\u4e00\u4e2a\u5c0f\u6d4b\u8bd5\u8868\u660e\uff1a\u5305\u542b\u5178\u578b HTML \u9875\u9762\u53ca URL \u7684\u8868\u8fde\u540c TOAST \u8868\uff0c\u5360\u7528\u7ea6\u4e3a\u539f\u59cb\u6570\u636e\u7684\u4e00\u534a\uff1b\u4e3b\u8868\u53ea\u5360\u603b\u6570\u636e\u7ea6 10%\uff0c\u5305\u62ec URL \u548c\u5c11\u91cf\u5c0f HTML \u9875\u9762\u3002\u4e0e\u5c06\u6240\u6709 HTML \u9875\u9762\u622a\u77ed\u81f3 7 kB \u4ee5\u4fbf\u88c5\u5165\u884c\u5185\u3001\u672a\u4f7f\u7528 TOAST \u7684\u5bf9\u7167\u8868\u76f8\u6bd4\uff0c\u8fd0\u884c\u65f6\u95f4\u6ca1\u6709\u5dee\u5f02\u3002</p>\n</div>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/devel/storage-toast.html#STORAGE-TOAST-INMEMORY\">66.2.2. \u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ef\u4ee5\u6307\u5411\u4e0d\u5728\u78c1\u76d8\u4e0a\u3001\u800c\u4f4d\u4e8e\u5f53\u524d\u670d\u52a1\u5668\u8fdb\u7a0b\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u6570\u636e\u3002\u8fd9\u7c7b\u6307\u9488\u663e\u7136\u4e0d\u53ef\u80fd\u957f\u671f\u5b58\u5728\uff0c\u4f46\u4ecd\u7136\u5f88\u6709\u7528\u3002\u76ee\u524d\u6709\u4e24\u4e2a\u5b50\u60c5\u51b5\uff1a\u6307\u5411<em class=\"firstterm\">\u95f4\u63a5</em>\u6570\u636e\u7684\u6307\u9488\uff0c\u4ee5\u53ca\u6307\u5411<em class=\"firstterm\">\u5c55\u5f00</em>\u6570\u636e\u7684\u6307\u9488\u3002</p>\n<p lang=\"zh\">\u95f4\u63a5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ea\u662f\u7b80\u5355\u5730\u6307\u5411\u67d0\u5904\u5185\u5b58\u4e2d\u5b58\u653e\u7684\u4e00\u4e2a\u975e\u95f4\u63a5 varlena \u503c\u3002\u8fd9\u4e00\u60c5\u51b5\u6700\u521d\u53ea\u662f\u4f5c\u4e3a\u6982\u5ff5\u9a8c\u8bc1\u800c\u521b\u5efa\uff0c\u4f46\u76ee\u524d\u5728\u903b\u8f91\u89e3\u7801\u671f\u95f4\u4f1a\u7528\u5230\u5b83\uff0c\u4ee5\u907f\u514d\u53ef\u80fd\u4e0d\u5f97\u4e0d\u521b\u5efa\u8d85\u8fc7 1 GB \u7684\u7269\u7406\u5143\u7ec4\uff08\u628a\u6240\u6709\u884c\u5916\u5b57\u6bb5\u503c\u90fd\u62c9\u5165\u5143\u7ec4\u5c31\u53ef\u80fd\u5bfc\u81f4\u8fd9\u79cd\u60c5\u51b5\uff09\u3002\u8fd9\u79cd\u673a\u5236\u7684\u7528\u9014\u6709\u9650\uff0c\u56e0\u4e3a\u521b\u5efa\u8be5\u6307\u9488 datum \u7684\u4e00\u65b9\u5fc5\u987b\u5b8c\u5168\u8d1f\u8d23\u786e\u4fdd\u88ab\u5f15\u7528\u6570\u636e\u5728\u6307\u9488\u53ef\u80fd\u5b58\u5728\u7684\u6574\u4e2a\u671f\u95f4\u90fd\u4fdd\u6301\u6709\u6548\uff0c\u800c\u4e14\u7cfb\u7edf\u5e76\u6ca1\u6709\u4efb\u4f55\u57fa\u7840\u8bbe\u65bd\u6765\u5e2e\u52a9\u505a\u5230\u8fd9\u4e00\u70b9\u3002</p>\n<p lang=\"zh\">\u5c55\u5f00\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5bf9\u90a3\u4e9b\u78c1\u76d8\u8868\u793a\u5f62\u5f0f\u5e76\u4e0d\u7279\u522b\u9002\u5408\u8ba1\u7b97\u7528\u9014\u7684\u590d\u6742\u6570\u636e\u7c7b\u578b\u5f88\u6709\u7528\u3002\u4ee5\u6807\u51c6\u7684 <span class=\"productname\">PostgreSQL</span> \u6570\u7ec4 varlena \u8868\u793a\u4e3a\u4f8b\uff0c\u5b83\u5305\u542b\u7ef4\u5ea6\u4fe1\u606f\u3001\u4e00\u4e2a\u7a7a\u503c\u4f4d\u56fe\uff08\u5982\u679c\u5b58\u5728\u7a7a\u503c\u5143\u7d20\uff09\uff0c\u7136\u540e\u4f9d\u6b21\u4fdd\u5b58\u6240\u6709\u5143\u7d20\u7684\u503c\u3002\u5f53\u5143\u7d20\u7c7b\u578b\u672c\u8eab\u4e5f\u662f\u53d8\u957f\u65f6\uff0c\u5b9a\u4f4d\u7b2c <em class=\"replaceable\"><code>N</code></em> \u4e2a\u5143\u7d20\u7684\u552f\u4e00\u529e\u6cd5\u5c31\u662f\u626b\u63cf\u5b83\u524d\u9762\u7684\u6240\u6709\u5143\u7d20\u3002\u8fd9\u79cd\u8868\u793a\u5f62\u5f0f\u56e0\u5176\u7d27\u51d1\u6027\u800c\u9002\u5408\u78c1\u76d8\u5b58\u50a8\uff0c\u4f46\u5bf9\u4e8e\u6570\u7ec4\u8ba1\u7b97\u800c\u8a00\uff0c\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u5c55\u5f00</span>\u201d</span>\u6216<span class=\"quote\">\u201c<span class=\"quote\">\u89e3\u6784</span>\u201d</span>\u7684\u8868\u793a\u4f1a\u66f4\u597d\uff0c\u56e0\u4e3a\u5176\u4e2d\u6240\u6709\u5143\u7d20\u7684\u8d77\u59cb\u4f4d\u7f6e\u90fd\u5df2\u8bc6\u522b\u51fa\u6765\u3002<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u673a\u5236\u901a\u8fc7\u5141\u8bb8\u6309\u5f15\u7528\u4f20\u9012\u7684 Datum \u6307\u5411\u6807\u51c6 varlena \u503c\uff08\u5373\u78c1\u76d8\u8868\u793a\uff09\u6216\u8005\u6307\u5411\u5185\u5b58\u4e2d\u67d0\u5904\u5c55\u5f00\u8868\u793a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c\u6765\u6ee1\u8db3\u8fd9\u4e00\u9700\u8981\u3002\u8fd9\u79cd\u5c55\u5f00\u8868\u793a\u7684\u5177\u4f53\u7ec6\u8282\u7531\u6570\u636e\u7c7b\u578b\u81ea\u884c\u51b3\u5b9a\uff0c\u4e0d\u8fc7\u5b83\u5fc5\u987b\u5177\u6709\u6807\u51c6\u5934\u90e8\uff0c\u5e76\u6ee1\u8db3 <code class=\"filename\">src/include/utils/expandeddatum.h</code> \u4e2d\u7ed9\u51fa\u7684\u5176\u4ed6 API \u8981\u6c42\u3002\u5904\u7406\u8be5\u6570\u636e\u7c7b\u578b\u7684 C \u7ea7\u51fd\u6570\u53ef\u4ee5\u9009\u62e9\u652f\u6301\u4efb\u4e00\u79cd\u8868\u793a\u3002\u4e0d\u77e5\u9053\u5c55\u5f00\u8868\u793a\u3001\u4f46\u53ea\u662f\u5bf9\u8f93\u5165\u5e94\u7528 <code class=\"function\">PG_DETOAST_DATUM</code> \u7684\u51fd\u6570\uff0c\u4f1a\u81ea\u52a8\u83b7\u5f97\u4f20\u7edf\u7684 varlena \u8868\u793a\uff1b\u56e0\u6b64\uff0c\u5bf9\u5c55\u5f00\u8868\u793a\u7684\u652f\u6301\u53ef\u4ee5\u9010\u6b65\u5f15\u5165\uff0c\u4e00\u6b21\u589e\u52a0\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\u3002</p>\n<p lang=\"zh\">\u6307\u5411\u5c55\u5f00\u503c\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u8fd8\u53ef\u8fdb\u4e00\u6b65\u5206\u4e3a<em class=\"firstterm\">\u53ef\u8bfb\u5199\uff08read-write\uff09</em>\u548c<em class=\"firstterm\">\u53ea\u8bfb\uff08read-only\uff09</em>\u6307\u9488\u3002\u65e0\u8bba\u54ea\u79cd\u65b9\u5f0f\uff0c\u88ab\u6307\u5411\u7684\u8868\u793a\u662f\u76f8\u540c\u7684\uff1b\u4f46\u6536\u5230\u53ef\u8bfb\u5199\u6307\u9488\u7684\u51fd\u6570\u53ef\u4ee5\u539f\u5730\u4fee\u6539\u6240\u5f15\u7528\u7684\u503c\uff0c\u800c\u6536\u5230\u53ea\u8bfb\u6307\u9488\u7684\u51fd\u6570\u5219\u4e0d\u53ef\u4ee5\uff0c\u5982\u679c\u5b83\u60f3\u751f\u6210\u8be5\u503c\u7684\u4fee\u6539\u7248\u672c\uff0c\u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u526f\u672c\u3002\u8fd9\u79cd\u533a\u5206\u4ee5\u53ca\u4e00\u4e9b\u76f8\u5173\u7ea6\u5b9a\uff0c\u4f7f\u5f97\u5728\u67e5\u8be2\u6267\u884c\u671f\u95f4\u53ef\u4ee5\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u5c55\u5f00\u503c\u590d\u5236\u3002</p>\n<p lang=\"zh\">\u5bf9\u4e8e\u6240\u6709\u7c7b\u578b\u7684\u5185\u5b58\u4e2d <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c<acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u90fd\u4f1a\u786e\u4fdd\u8fd9\u7c7b\u6307\u9488 datum \u4e0d\u4f1a\u610f\u5916\u5730\u88ab\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u3002\u5185\u5b58\u4e2d\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5728\u5b58\u50a8\u524d\u4f1a\u81ea\u52a8\u5c55\u5f00\u4e3a\u666e\u901a\u7684\u884c\u5185 varlena \u503c\uff0c\u5982\u679c\u8fd9\u6837\u4f1a\u4f7f\u627f\u8f7d\u5b83\u7684\u5143\u7ec4\u8fc7\u5927\uff0c\u8fd8\u53ef\u80fd\u8fdb\u4e00\u6b65\u8f6c\u6362\u4e3a\u78c1\u76d8\u4e0a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u3002</p>\n</div>\n</div>", "manual_path": "/docs/devel/storage-toast.html", "localization": {"status": "complete", "sources": [{"url": "/docs/devel/storage-toast.html", "method": "same-major semantic node", "sha256": "d15c5a9cc7350e6d6dad9001e604c191cb67fdda6697b62410039d0149def455", "language": "zh", "matched_nodes": ["#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[2]", "#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[3]", "#STORAGE-TOAST/div[10]/p[3]", "#STORAGE-TOAST/div[10]/p[7]", "#STORAGE-TOAST/div[11]/p[1]", "#STORAGE-TOAST/div[11]/p[2]", "#STORAGE-TOAST/div[11]/p[3]", "#STORAGE-TOAST/div[11]/p[4]", "#STORAGE-TOAST/div[11]/p[5]", "#STORAGE-TOAST/div[1]/dl[0]/dt[0]", "#STORAGE-TOAST/div[1]/dl[0]/dt[1]", "#STORAGE-TOAST/p[4]", "#STORAGE-TOAST/p[5]", "#STORAGE-TOAST/p[8]", "#STORAGE-TOAST/p[9]"]}], "language": "zh", "original_text": {"/summary": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/category": "Physical structures", "/versions/20/description/0": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/versions/20/facts/0/label": "Definition scope", "/versions/20/facts/0/value": "Same-version core physical storage documentation", "/versions/20/related/1/label": "Storage Parameters"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "a64c888ca3a5f939d1d5063d6f2e874a2c54136613b92c047ed2a1e83ad329b2"}, "comparison_data": {"layouts": []}, "comparison_hash": "27341929154bfb55531f03501322b65af719c5561f3c4ddc9528a14aa4df69b5", "manual_language": "zh"}}}, "snapshot": {"facts": [{"label": "\u5b9a\u4e49\u8303\u56f4", "value": "\u540c\u7248\u672c\u6838\u5fc3\u7269\u7406\u5b58\u50a8\u6587\u6863"}], "tables": [], "related": [{"url": "/wiki/tableam/?v=18", "label": "Table AM"}, {"url": "/wiki/relopts/?v=18", "label": "\u5b58\u50a8\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2", "label": "18.6", "major": "18", "channel": "stable", "revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "sources": [{"url": "https://pg.center/docs/18/storage-toast.html", "path": "storage-toast.html", "label": "PostgreSQL 18 English manual", "sha256": "acf77f02dfcc808c3e24632ad05409f7f45f62773defd38453a433c15393df90", "language": "en", "original_url": "/docs/18/storage-toast.html"}], "sections": [], "signature": "", "description": ["\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08 TOAST , The Oversized-Attribute Storage Technique\uff09\u3002"], "manual_html": "<div class=\"sect1\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h2 class=\"title\">66.2.\u00a0TOAST </h2>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u672c\u8282\u6982\u8ff0\u8d85\u957f\u5c5e\u6027\u5b58\u50a8\u6280\u672f\uff08<acronym class=\"acronym\">TOAST</acronym>, The Oversized-Attribute Storage Technique\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"productname\">PostgreSQL</span> \u4f7f\u7528\u56fa\u5b9a\u9875\u9762\u5927\u5c0f\uff08\u901a\u5e38\u4e3a 8 kB\uff09\uff0c\u5e76\u4e14\u4e0d\u5141\u8bb8\u5143\u7ec4\u8de8\u8d8a\u591a\u4e2a\u9875\u9762\u3002\u56e0\u6b64\uff0c\u65e0\u6cd5\u76f4\u63a5\u5b58\u50a8\u975e\u5e38\u5927\u7684\u5b57\u6bb5\u503c\u3002\u4e3a\u514b\u670d\u8fd9\u4e00\u9650\u5236\uff0c\u5927\u5b57\u6bb5\u503c\u4f1a\u88ab\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u62c6\u5206\u6210\u591a\u4e2a\u7269\u7406\u884c\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u5bf9\u7528\u6237\u662f\u900f\u660e\u7684\uff0c\u800c\u4e14\u5bf9\u5927\u90e8\u5206\u540e\u7aef\u4ee3\u7801\u7684\u5f71\u54cd\u5f88\u5c0f\u3002\u8fd9\u9879\u6280\u672f\u88ab\u4eb2\u5207\u5730\u79f0\u4e3a <acronym class=\"acronym\">TOAST</acronym>\uff08\u6216\u8005<span class=\"quote\">\u201c<span class=\"quote\">\u81ea\u5207\u7247\u9762\u5305\u95ee\u4e16\u4ee5\u6765\u6700\u68d2\u7684\u4e1c\u897f</span>\u201d</span>\uff09\u3002<acronym class=\"acronym\">TOAST</acronym> \u57fa\u7840\u8bbe\u65bd\u4e5f\u88ab\u7528\u4e8e\u6539\u8fdb\u5185\u5b58\u4e2d\u5927\u578b\u6570\u636e\u503c\u7684\u5904\u7406\u3002</p>\n<p lang=\"zh\">\u53ea\u6709\u90e8\u5206\u6570\u636e\u7c7b\u578b\u652f\u6301 TOAST\uff1b\u65e0\u9700\u8ba9\u4e0d\u4f1a\u4ea7\u751f\u5927\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u627f\u62c5\u989d\u5916\u5f00\u9500\u3002\u8981\u652f\u6301 TOAST\uff0c\u7c7b\u578b\u5fc5\u987b\u91c7\u7528\u53d8\u957f\uff08varlena\uff09\u8868\u793a\uff0c\u901a\u5e38\u5176\u5b58\u50a8\u503c\u7684\u7b2c\u4e00\u4e2a\u56db\u5b57\u8282\u5b57\u8bb0\u5f55\u603b\u5b57\u8282\u957f\u5ea6\uff0c\u5305\u62ec\u8be5\u957f\u5ea6\u5b57\u672c\u8eab\u3002TOAST \u4e0d\u9650\u5236\u7c7b\u578b\u8868\u793a\u7684\u5176\u4f59\u90e8\u5206\u3002\u7edf\u79f0\u4e3a TOAST \u503c\u7684\u7279\u6b8a\u8868\u793a\u901a\u8fc7\u4fee\u6539\u6216\u91cd\u65b0\u89e3\u91ca\u8fd9\u4e2a\u9996\u90e8\u957f\u5ea6\u5b57\u5de5\u4f5c\u3002\u56e0\u6b64\uff0c\u652f\u6301 TOAST \u7c7b\u578b\u7684 C \u5c42\u51fd\u6570\u5fc5\u987b\u8c28\u614e\u5904\u7406\u53ef\u80fd\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u8f93\u5165\uff1a\u5728\u89e3\u9664 TOAST \u8868\u793a\u524d\uff0c\u8f93\u5165\u53ef\u80fd\u5e76\u4e0d\u7531\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u52a0\u5b9e\u9645\u5185\u5bb9\u7ec4\u6210\u3002\u901a\u5e38\u5e94\u5728\u4efb\u4f55\u5904\u7406\u4e4b\u524d\u8c03\u7528 PG_DETOAST_DATUM\uff0c\u4f46\u67d0\u4e9b\u60c5\u5f62\u53ef\u91c7\u7528\u66f4\u9ad8\u6548\u7684\u65b9\u6cd5\uff0c\u8be6\u60c5\u53c2\u89c1\u7b2c 36.13.1 \u8282\u3002</p>\n<p lang=\"zh\">TOAST \u5360\u7528 varlena \u957f\u5ea6\u5b57\u7684\u4e24\u4e2a\u4f4d\uff1a\u5927\u7aef\u673a\u5668\u4f7f\u7528\u9ad8\u4f4d\uff0c\u5c0f\u7aef\u673a\u5668\u4f7f\u7528\u4f4e\u4f4d\uff0c\u56e0\u6b64\u652f\u6301 TOAST \u7684\u7c7b\u578b\u4e2d\uff0c\u4efb\u4f55\u503c\u7684\u903b\u8f91\u5927\u5c0f\u90fd\u9650\u4e8e 1 GB\uff082^30 - 1 \u5b57\u8282\uff09\u3002\u4e24\u4f4d\u5747\u4e3a\u96f6\u65f6\uff0c\u8be5\u503c\u662f\u666e\u901a\u7684\u672a\u7ecf\u8fc7 TOAST \u5904\u7406\u7684\u503c\uff0c\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u672c\u8eab\u5728\u5185\u7684\u603b\u5b57\u8282\u6570\u3002\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u7f6e\u4f4d\u65f6\uff0c\u8be5\u503c\u4f7f\u7528\u5355\u5b57\u8282\u9996\u90e8\u800c\u975e\u901a\u5e38\u7684\u56db\u5b57\u8282\u9996\u90e8\uff0c\u8be5\u5b57\u8282\u7684\u5176\u4f59\u4f4d\u8868\u793a\u5305\u62ec\u957f\u5ea6\u5b57\u8282\u5728\u5185\u7684\u603b\u5927\u5c0f\u3002\u8fd9\u4f7f\u5c0f\u4e8e 127 \u5b57\u8282\u7684\u503c\u80fd\u591f\u7d27\u51d1\u5b58\u50a8\uff0c\u540c\u65f6\u4ecd\u5141\u8bb8\u7c7b\u578b\u5728\u9700\u8981\u65f6\u589e\u957f\u5230 1 GB\u3002\u5355\u5b57\u8282\u9996\u90e8\u7684\u503c\u65e0\u9700\u6309\u7279\u5b9a\u8fb9\u754c\u5bf9\u9f50\uff1b\u56db\u5b57\u8282\u9996\u90e8\u7684\u503c\u5219\u81f3\u5c11\u6309\u56db\u5b57\u8282\u8fb9\u754c\u5bf9\u9f50\u3002\u7701\u7565\u5bf9\u9f50\u586b\u5145\u8fd8\u80fd\u8282\u7701\u7a7a\u95f4\uff0c\u5bf9\u4e8e\u77ed\u503c\u5c24\u5176\u660e\u663e\u3002\u4e00\u4e2a\u7279\u6b8a\u60c5\u51b5\u662f\uff1a\u5982\u679c\u5355\u5b57\u8282\u9996\u90e8\u7684\u5176\u4f59\u4f4d\u5168\u4e3a\u96f6\u2014\u2014\u8fd9\u4e0d\u53ef\u80fd\u662f\u5305\u542b\u81ea\u8eab\u7684\u957f\u5ea6\u2014\u2014\u8be5\u503c\u5c31\u662f\u6307\u5411\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u5177\u4f53\u5f62\u5f0f\u89c1\u4e0b\u6587\u3002\u6307\u9488\u7684\u7c7b\u578b\u548c\u5927\u5c0f\u7531\u6570\u636e\u7b2c\u4e8c\u4e2a\u5b57\u8282\u4e2d\u7684\u4ee3\u7801\u51b3\u5b9a\u3002\u6700\u540e\uff0c\u5982\u679c\u6700\u9ad8\u4f4d\u6216\u6700\u4f4e\u4f4d\u6e05\u96f6\uff0c\u800c\u76f8\u90bb\u4f4d\u7f6e\u4f4d\uff0c\u6570\u636e\u5185\u5bb9\u5c31\u5df2\u538b\u7f29\uff0c\u4f7f\u7528\u524d\u5fc5\u987b\u89e3\u538b\u3002\u6b64\u65f6\u56db\u5b57\u8282\u957f\u5ea6\u5b57\u7684\u5176\u4f59\u4f4d\u8868\u793a\u538b\u7f29\u540e\u6570\u636e\u7684\u603b\u5927\u5c0f\uff0c\u800c\u975e\u539f\u59cb\u6570\u636e\u5927\u5c0f\u3002\u884c\u5916\u6570\u636e\u4e5f\u53ef\u80fd\u538b\u7f29\uff0c\u4f46 varlena \u9996\u90e8\u4e0d\u8868\u660e\u8fd9\u4e00\u70b9\uff0c\u9700\u67e5\u770b TOAST \u6307\u9488\u7684\u5185\u5bb9\u3002</p>\n<p lang=\"zh\">\u65e0\u8bba\u662f\u884c\u5185\u538b\u7f29\u6570\u636e\u8fd8\u662f\u884c\u5916\u538b\u7f29\u6570\u636e\uff0c\u5176\u6240\u7528\u7684\u538b\u7f29\u6280\u672f\u90fd\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e <code class=\"literal\">COMPRESSION</code> \u5217\u9009\u9879\u6765\u6309\u5217\u9009\u62e9\uff0c\u8be5\u9009\u9879\u53ef\u5728 <code class=\"command\">CREATE TABLE</code> \u6216 <code class=\"command\">ALTER TABLE</code> \u4e2d\u6307\u5b9a\u3002\u5bf9\u672a\u663e\u5f0f\u8bbe\u7f6e\u7684\u5217\uff0c\u4f1a\u5728\u63d2\u5165\u6570\u636e\u65f6\u53c2\u8003\u53c2\u6570<a class=\"xref\" href=\"/docs/18/runtime-config-client.html#GUC-DEFAULT-TOAST-COMPRESSION\">default_toast_compression</a>\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u5982\u524d\u6240\u8ff0\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u6709\u591a\u79cd\u7c7b\u578b\u3002\u6700\u65e9\u3001\u4e5f\u6700\u5e38\u89c1\u7684\u4e00\u79cd\uff0c\u662f\u6307\u5411\u5b58\u50a8\u5728 <em class=\"firstterm\"><acronym class=\"acronym\">TOAST</acronym> \u8868</em>\u4e2d\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\uff0c\u8be5\u8868\u4e0e\u5305\u542b\u8be5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u672c\u8eab\u7684\u8868\u76f8\u5173\u8054\uff0c\u4f46\u4e0e\u4e4b\u5206\u79bb\u5b58\u50a8\u3002\u5f53\u4e00\u4e2a\u8981\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u7684\u5143\u7ec4\u8fc7\u5927\u800c\u65e0\u6cd5\u539f\u6837\u5b58\u50a8\u65f6\uff0c\u8fd9\u4e9b<em class=\"firstterm\">\u78c1\u76d8\u4e0a\u7684</em>\u6307\u9488 datum \u4f1a\u7531 <acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\uff08\u4f4d\u4e8e <code class=\"filename\">access/common/toast_internals.c</code>\uff09\u521b\u5efa\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/18/storage-toast.html#STORAGE-TOAST-ONDISK\" title=\"66.2.1.\u00a0\u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a066.2.1\u00a0\u8282</a>\u3002\u53e6\u4e00\u79cd\u60c5\u51b5\u662f\uff0c<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488 datum \u53ef\u4ee5\u5305\u542b\u6307\u5411\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u884c\u5916\u6570\u636e\u7684\u6307\u9488\u3002\u8fd9\u7c7b datum \u5fc5\u7136\u662f\u77ed\u547d\u7684\uff0c\u6c38\u8fdc\u4e0d\u4f1a\u51fa\u73b0\u5728\u78c1\u76d8\u4e0a\uff0c\u4f46\u5b83\u4eec\u5bf9\u4e8e\u907f\u514d\u5927\u578b\u6570\u636e\u503c\u7684\u590d\u5236\u548c\u5197\u4f59\u5904\u7406\u975e\u5e38\u6709\u7528\u3002\u66f4\u591a\u7ec6\u8282\u89c1<a class=\"xref\" href=\"/docs/18/storage-toast.html#STORAGE-TOAST-INMEMORY\" title=\"66.2.2.\u00a0\u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8\">\u7b2c\u00a066.2.2\u00a0\u8282</a>\u3002</p>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/18/storage-toast.html#STORAGE-TOAST-ONDISK\">66.2.1. \u884c\u5916\u3001\u78c1\u76d8\u4e0a\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\">\u5982\u679c\u8868\u4e2d\u6709\u5217\u652f\u6301 TOAST\uff0c\u8868\u5c31\u4f1a\u5173\u8054\u4e00\u4e2a TOAST \u8868\uff0c\u5176 OID \u5b58\u50a8\u5728 pg_class.reltoastrelid \u4e2d\u3002\u78c1\u76d8\u4e0a\u7684 TOAST \u503c\u5b58\u653e\u5728\u8be5 TOAST \u8868\u4e2d\uff0c\u8be6\u60c5\u89c1\u4e0b\u6587\u3002</p>\n<p lang=\"zh\">\u884c\u5916\u503c\u5728\u538b\u7f29\u540e\uff08\u5982\u679c\u4f7f\u7528\u538b\u7f29\uff09\u62c6\u6210\u6700\u591a TOAST_MAX_CHUNK_SIZE \u5b57\u8282\u7684\u5757\u3002\u9ed8\u8ba4\u9009\u62e9\u6b64\u503c\uff0c\u4f7f\u4e00\u4e2a\u9875\u9762\u80fd\u88c5\u4e0b\u56db\u4e2a\u5757\u884c\uff0c\u56e0\u6b64\u7ea6\u4e3a 2000 \u5b57\u8282\u3002\u6bcf\u5757\u4f5c\u4e3a\u72ec\u7acb\u7684\u4e00\u884c\u5b58\u5165\u6240\u5c5e\u8868\u7684 TOAST \u8868\u3002\u6bcf\u4e2a TOAST \u8868\u90fd\u6709 chunk_id\uff08\u6807\u8bc6\u7279\u5b9a TOAST \u503c\u7684 OID\uff09\u3001chunk_seq\uff08\u8be5\u5757\u5728\u503c\u4e2d\u7684\u5e8f\u53f7\uff09\u548c chunk_data\uff08\u5b9e\u9645\u5757\u6570\u636e\uff09\u4e09\u5217\u3002chunk_id \u4e0e chunk_seq \u4e0a\u7684\u552f\u4e00\u7d22\u5f15\u7528\u4e8e\u5feb\u901f\u68c0\u7d22\u503c\u3002\u56e0\u6b64\uff0c\u8868\u793a\u78c1\u76d8\u884c\u5916 TOAST \u503c\u7684\u6307\u9488\u9700\u8981\u5b58\u50a8 TOAST \u8868\u7684 OID\uff0c\u4ee5\u53ca\u7279\u5b9a\u503c\u7684 OID\uff0c\u5373 chunk_id\u3002\u4e3a\u65b9\u4fbf\u4f7f\u7528\uff0c\u6307\u9488\u8fd8\u5b58\u50a8\u903b\u8f91\u6570\u636e\u5927\u5c0f\uff08\u539f\u59cb\u672a\u538b\u7f29\u957f\u5ea6\uff09\u548c\u7269\u7406\u5b58\u50a8\u5927\u5c0f\uff08\u4f7f\u7528\u538b\u7f29\u65f6\u4e0e\u539f\u59cb\u5927\u5c0f\u4e0d\u540c\uff09\uff0c\u4ee5\u53ca\u6240\u4f7f\u7528\u7684\u538b\u7f29\u65b9\u6cd5\uff08\u5982\u679c\u6709\uff09\u3002\u7b97\u4e0a varlena \u9996\u90e8\u5b57\u8282\uff0c\u78c1\u76d8 TOAST \u6307\u9488\u7684\u603b\u5927\u5c0f\u4e3a 18 \u5b57\u8282\uff0c\u4e0e\u5176\u8868\u793a\u7684\u503c\u7684\u5b9e\u9645\u5927\u5c0f\u65e0\u5173\u3002</p>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u53ea\u6709\u5728\u8981\u5b58\u5165\u8868\u4e2d\u7684\u884c\u503c\u5bbd\u4e8e <code class=\"symbol\">TOAST_TUPLE_THRESHOLD</code> \u5b57\u8282\uff08\u901a\u5e38\u4e3a 2 kB\uff09\u65f6\u624d\u4f1a\u88ab\u89e6\u53d1\u3002<acronym class=\"acronym\">TOAST</acronym> \u4ee3\u7801\u4f1a\u538b\u7f29\u5e76\u4e14/\u6216\u8005\u628a\u5b57\u6bb5\u503c\u79fb\u5230\u884c\u5916\uff0c\u76f4\u5230\u8be5\u884c\u503c\u77ed\u4e8e <code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u5b57\u8282\uff08\u901a\u5e38\u4e5f\u4e3a 2 kB\uff0c\u4f46\u53ef\u8c03\u6574\uff09\uff0c\u6216\u8005\u5df2\u7ecf\u65e0\u6cd5\u518d\u83b7\u5f97\u66f4\u591a\u6536\u76ca\u3002\u5728 UPDATE \u64cd\u4f5c\u4e2d\uff0c\u672a\u66f4\u6539\u5b57\u6bb5\u7684\u503c\u901a\u5e38\u4f1a\u539f\u6837\u4fdd\u7559\uff1b\u56e0\u6b64\uff0c\u5982\u679c\u66f4\u65b0\u4e00\u884c\u65f6\u5176\u884c\u5916\u503c\u90fd\u6ca1\u6709\u53d8\u5316\uff0c\u4fbf\u4e0d\u4f1a\u4ea7\u751f <acronym class=\"acronym\">TOAST</acronym> \u6210\u672c\u3002</p>\n<p lang=\"zh\">TOAST \u7ba1\u7406\u4ee3\u7801\u652f\u6301\u56db\u79cd\u5c06\u53ef TOAST \u5217\u5b58\u50a8\u5230\u78c1\u76d8\u7684\u7b56\u7565\uff1a</p>\n<div class=\"itemizedlist\">\n<ul class=\"itemizedlist\">\n<li class=\"listitem\" lang=\"zh\">PLAIN \u7981\u6b62\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\u3002\u5bf9\u4e8e\u4e0d\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\uff0c\u8fd9\u662f\u552f\u4e00\u53ef\u7528\u7684\u5217\u5b58\u50a8\u7b56\u7565\u3002</li>\n<li class=\"listitem\" lang=\"zh\">EXTENDED \u540c\u65f6\u5141\u8bb8\u538b\u7f29\u548c\u884c\u5916\u5b58\u50a8\uff0c\u662f\u5927\u591a\u6570\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u7684\u9ed8\u8ba4\u7b56\u7565\u3002\u5148\u5c1d\u8bd5\u538b\u7f29\uff1b\u5982\u679c\u884c\u4ecd\u7136\u8fc7\u5927\uff0c\u518d\u4f7f\u7528\u884c\u5916\u5b58\u50a8\u3002</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">EXTERNAL</code> \u5141\u8bb8\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u4e0d\u5141\u8bb8\u538b\u7f29\u3002\u4f7f\u7528 <code class=\"literal\">EXTERNAL</code> \u4f1a\u8ba9\u5bbd <code class=\"type\">text</code> \u548c <code class=\"type\">bytea</code> \u5217\u4e0a\u7684\u5b50\u4e32\u64cd\u4f5c\u66f4\u5feb\uff08\u4ee3\u4ef7\u662f\u5360\u7528\u66f4\u591a\u5b58\u50a8\u7a7a\u95f4\uff09\uff0c\u56e0\u4e3a\u5728\u503c\u672a\u538b\u7f29\u65f6\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u7ecf\u8fc7\u4f18\u5316\uff0c\u53ea\u9700\u63d0\u53d6\u884c\u5916\u503c\u4e2d\u6240\u9700\u7684\u90e8\u5206\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p><code class=\"literal\">MAIN</code> \u5141\u8bb8\u538b\u7f29\uff0c\u4f46\u4e0d\u5141\u8bb8\u884c\u5916\u5b58\u50a8\u3002\uff08\u5b9e\u9645\u4e0a\uff0c\u5bf9\u4e8e\u8fd9\u7c7b\u5217\uff0c\u4ecd\u7136\u53ef\u80fd\u8fdb\u884c\u884c\u5916\u5b58\u50a8\uff0c\u4f46\u53ea\u6709\u5728\u522b\u65e0\u4ed6\u6cd5\u3001\u5fc5\u987b\u8fd9\u6837\u505a\u624d\u80fd\u8ba9\u884c\u8db3\u591f\u5c0f\u4ee5\u653e\u5165\u9875\u9762\u65f6\uff0c\u624d\u4f1a\u628a\u5b83\u4f5c\u4e3a\u6700\u540e\u624b\u6bb5\u3002\uff09</p>\n</li>\n</ul>\n</div>\n<p lang=\"zh\">\u6bcf\u79cd\u652f\u6301 TOAST \u7684\u6570\u636e\u7c7b\u578b\u90fd\u4e3a\u5176\u5217\u6307\u5b9a\u9ed8\u8ba4\u7b56\u7565\uff0c\u4f46\u5177\u4f53\u8868\u5217\u7684\u7b56\u7565\u53ef\u901a\u8fc7 ALTER TABLE ... SET STORAGE \u4fee\u6539\u3002</p>\n<p lang=\"zh\"><code class=\"symbol\">TOAST_TUPLE_TARGET</code> \u4e5f\u53ef\u4ee5\u9488\u5bf9\u6bcf\u4e2a\u8868\u901a\u8fc7 <a class=\"link\" href=\"/docs/18/sql-altertable.html\" title=\"ALTER TABLE\"><code class=\"command\">ALTER TABLE ... SET (toast_tuple_target = N)</code></a> \u8fdb\u884c\u8c03\u6574\u3002</p>\n<p lang=\"zh\">\u4e0e\u8ba9\u884c\u503c\u8de8\u9875\u7b49\u66f4\u76f4\u63a5\u7684\u505a\u6cd5\u76f8\u6bd4\uff0c\u6b64\u65b9\u6848\u6709\u591a\u9879\u4f18\u52bf\u3002\u5047\u8bbe\u67e5\u8be2\u901a\u5e38\u6309\u8f83\u5c0f\u952e\u503c\u8fdb\u884c\u6bd4\u8f83\u7b5b\u9009\uff0c\u6267\u884c\u5668\u7684\u5927\u90e8\u5206\u5de5\u4f5c\u5c31\u53ef\u53ea\u4f7f\u7528\u4e3b\u884c\u6570\u636e\u3002TOAST \u5c5e\u6027\u7684\u5927\u503c\u4ec5\u5728\u5c06\u7ed3\u679c\u53d1\u9001\u7ed9\u5ba2\u6237\u7aef\u65f6\u624d\u8bfb\u53d6\uff0c\u800c\u4e14\u524d\u63d0\u662f\u67e5\u8be2\u786e\u5b9e\u9009\u62e9\u4e86\u8fd9\u4e9b\u503c\u3002\u56e0\u800c\u4e3b\u8868\u663e\u8457\u7f29\u5c0f\uff0c\u5171\u4eab\u7f13\u51b2\u533a\u53ef\u5bb9\u7eb3\u66f4\u591a\u884c\uff1b\u6392\u5e8f\u6570\u636e\u96c6\u4e5f\u4f1a\u7f29\u5c0f\uff0c\u66f4\u5bb9\u6613\u5b8c\u5168\u5728\u5185\u5b58\u4e2d\u6392\u5e8f\u3002\u539f\u6587\u4e2d\u7684\u4e00\u4e2a\u5c0f\u6d4b\u8bd5\u8868\u660e\uff1a\u5305\u542b\u5178\u578b HTML \u9875\u9762\u53ca URL \u7684\u8868\u8fde\u540c TOAST \u8868\uff0c\u5360\u7528\u7ea6\u4e3a\u539f\u59cb\u6570\u636e\u7684\u4e00\u534a\uff1b\u4e3b\u8868\u53ea\u5360\u603b\u6570\u636e\u7ea6 10%\uff0c\u5305\u62ec URL \u548c\u5c11\u91cf\u5c0f HTML \u9875\u9762\u3002\u4e0e\u5c06\u6240\u6709 HTML \u9875\u9762\u622a\u77ed\u81f3 7 kB \u4ee5\u4fbf\u88c5\u5165\u884c\u5185\u3001\u672a\u4f7f\u7528 TOAST \u7684\u5bf9\u7167\u8868\u76f8\u6bd4\uff0c\u8fd0\u884c\u65f6\u95f4\u6ca1\u6709\u5dee\u5f02\u3002</p>\n</div>\n<div class=\"sect2\">\n<div class=\"titlepage\">\n<div>\n<div>\n<h3 class=\"title\" lang=\"zh\"><span class=\"sect2\"><a href=\"/docs/18/storage-toast.html#STORAGE-TOAST-INMEMORY\">66.2.2. \u884c\u5916\u3001\u5185\u5b58\u4e2d\u7684 TOAST \u5b58\u50a8</a></span></h3>\n</div>\n</div>\n</div>\n<p lang=\"zh\"><acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ef\u4ee5\u6307\u5411\u4e0d\u5728\u78c1\u76d8\u4e0a\u3001\u800c\u4f4d\u4e8e\u5f53\u524d\u670d\u52a1\u5668\u8fdb\u7a0b\u5185\u5b58\u4e2d\u5176\u4ed6\u4f4d\u7f6e\u7684\u6570\u636e\u3002\u8fd9\u7c7b\u6307\u9488\u663e\u7136\u4e0d\u53ef\u80fd\u957f\u671f\u5b58\u5728\uff0c\u4f46\u4ecd\u7136\u5f88\u6709\u7528\u3002\u76ee\u524d\u6709\u4e24\u4e2a\u5b50\u60c5\u51b5\uff1a\u6307\u5411<em class=\"firstterm\">\u95f4\u63a5</em>\u6570\u636e\u7684\u6307\u9488\uff0c\u4ee5\u53ca\u6307\u5411<em class=\"firstterm\">\u5c55\u5f00</em>\u6570\u636e\u7684\u6307\u9488\u3002</p>\n<p lang=\"zh\">\u95f4\u63a5 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u53ea\u662f\u7b80\u5355\u5730\u6307\u5411\u67d0\u5904\u5185\u5b58\u4e2d\u5b58\u653e\u7684\u4e00\u4e2a\u975e\u95f4\u63a5 varlena \u503c\u3002\u8fd9\u4e00\u60c5\u51b5\u6700\u521d\u53ea\u662f\u4f5c\u4e3a\u6982\u5ff5\u9a8c\u8bc1\u800c\u521b\u5efa\uff0c\u4f46\u76ee\u524d\u5728\u903b\u8f91\u89e3\u7801\u671f\u95f4\u4f1a\u7528\u5230\u5b83\uff0c\u4ee5\u907f\u514d\u53ef\u80fd\u4e0d\u5f97\u4e0d\u521b\u5efa\u8d85\u8fc7 1 GB \u7684\u7269\u7406\u5143\u7ec4\uff08\u628a\u6240\u6709\u884c\u5916\u5b57\u6bb5\u503c\u90fd\u62c9\u5165\u5143\u7ec4\u5c31\u53ef\u80fd\u5bfc\u81f4\u8fd9\u79cd\u60c5\u51b5\uff09\u3002\u8fd9\u79cd\u673a\u5236\u7684\u7528\u9014\u6709\u9650\uff0c\u56e0\u4e3a\u521b\u5efa\u8be5\u6307\u9488 datum \u7684\u4e00\u65b9\u5fc5\u987b\u5b8c\u5168\u8d1f\u8d23\u786e\u4fdd\u88ab\u5f15\u7528\u6570\u636e\u5728\u6307\u9488\u53ef\u80fd\u5b58\u5728\u7684\u6574\u4e2a\u671f\u95f4\u90fd\u4fdd\u6301\u6709\u6548\uff0c\u800c\u4e14\u7cfb\u7edf\u5e76\u6ca1\u6709\u4efb\u4f55\u57fa\u7840\u8bbe\u65bd\u6765\u5e2e\u52a9\u505a\u5230\u8fd9\u4e00\u70b9\u3002</p>\n<p lang=\"zh\">\u5c55\u5f00\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5bf9\u90a3\u4e9b\u78c1\u76d8\u8868\u793a\u5f62\u5f0f\u5e76\u4e0d\u7279\u522b\u9002\u5408\u8ba1\u7b97\u7528\u9014\u7684\u590d\u6742\u6570\u636e\u7c7b\u578b\u5f88\u6709\u7528\u3002\u4ee5\u6807\u51c6\u7684 <span class=\"productname\">PostgreSQL</span> \u6570\u7ec4 varlena \u8868\u793a\u4e3a\u4f8b\uff0c\u5b83\u5305\u542b\u7ef4\u5ea6\u4fe1\u606f\u3001\u4e00\u4e2a\u7a7a\u503c\u4f4d\u56fe\uff08\u5982\u679c\u5b58\u5728\u7a7a\u503c\u5143\u7d20\uff09\uff0c\u7136\u540e\u4f9d\u6b21\u4fdd\u5b58\u6240\u6709\u5143\u7d20\u7684\u503c\u3002\u5f53\u5143\u7d20\u7c7b\u578b\u672c\u8eab\u4e5f\u662f\u53d8\u957f\u65f6\uff0c\u5b9a\u4f4d\u7b2c <em class=\"replaceable\"><code>N</code></em> \u4e2a\u5143\u7d20\u7684\u552f\u4e00\u529e\u6cd5\u5c31\u662f\u626b\u63cf\u5b83\u524d\u9762\u7684\u6240\u6709\u5143\u7d20\u3002\u8fd9\u79cd\u8868\u793a\u5f62\u5f0f\u56e0\u5176\u7d27\u51d1\u6027\u800c\u9002\u5408\u78c1\u76d8\u5b58\u50a8\uff0c\u4f46\u5bf9\u4e8e\u6570\u7ec4\u8ba1\u7b97\u800c\u8a00\uff0c\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u5c55\u5f00</span>\u201d</span>\u6216<span class=\"quote\">\u201c<span class=\"quote\">\u89e3\u6784</span>\u201d</span>\u7684\u8868\u793a\u4f1a\u66f4\u597d\uff0c\u56e0\u4e3a\u5176\u4e2d\u6240\u6709\u5143\u7d20\u7684\u8d77\u59cb\u4f4d\u7f6e\u90fd\u5df2\u8bc6\u522b\u51fa\u6765\u3002<acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u673a\u5236\u901a\u8fc7\u5141\u8bb8\u6309\u5f15\u7528\u4f20\u9012\u7684 Datum \u6307\u5411\u6807\u51c6 varlena \u503c\uff08\u5373\u78c1\u76d8\u8868\u793a\uff09\u6216\u8005\u6307\u5411\u5185\u5b58\u4e2d\u67d0\u5904\u5c55\u5f00\u8868\u793a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c\u6765\u6ee1\u8db3\u8fd9\u4e00\u9700\u8981\u3002\u8fd9\u79cd\u5c55\u5f00\u8868\u793a\u7684\u5177\u4f53\u7ec6\u8282\u7531\u6570\u636e\u7c7b\u578b\u81ea\u884c\u51b3\u5b9a\uff0c\u4e0d\u8fc7\u5b83\u5fc5\u987b\u5177\u6709\u6807\u51c6\u5934\u90e8\uff0c\u5e76\u6ee1\u8db3 <code class=\"filename\">src/include/utils/expandeddatum.h</code> \u4e2d\u7ed9\u51fa\u7684\u5176\u4ed6 API \u8981\u6c42\u3002\u5904\u7406\u8be5\u6570\u636e\u7c7b\u578b\u7684 C \u7ea7\u51fd\u6570\u53ef\u4ee5\u9009\u62e9\u652f\u6301\u4efb\u4e00\u79cd\u8868\u793a\u3002\u4e0d\u77e5\u9053\u5c55\u5f00\u8868\u793a\u3001\u4f46\u53ea\u662f\u5bf9\u8f93\u5165\u5e94\u7528 <code class=\"function\">PG_DETOAST_DATUM</code> \u7684\u51fd\u6570\uff0c\u4f1a\u81ea\u52a8\u83b7\u5f97\u4f20\u7edf\u7684 varlena \u8868\u793a\uff1b\u56e0\u6b64\uff0c\u5bf9\u5c55\u5f00\u8868\u793a\u7684\u652f\u6301\u53ef\u4ee5\u9010\u6b65\u5f15\u5165\uff0c\u4e00\u6b21\u589e\u52a0\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\u3002</p>\n<p lang=\"zh\">\u6307\u5411\u5c55\u5f00\u503c\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u8fd8\u53ef\u8fdb\u4e00\u6b65\u5206\u4e3a<em class=\"firstterm\">\u53ef\u8bfb\u5199\uff08read-write\uff09</em>\u548c<em class=\"firstterm\">\u53ea\u8bfb\uff08read-only\uff09</em>\u6307\u9488\u3002\u65e0\u8bba\u54ea\u79cd\u65b9\u5f0f\uff0c\u88ab\u6307\u5411\u7684\u8868\u793a\u662f\u76f8\u540c\u7684\uff1b\u4f46\u6536\u5230\u53ef\u8bfb\u5199\u6307\u9488\u7684\u51fd\u6570\u53ef\u4ee5\u539f\u5730\u4fee\u6539\u6240\u5f15\u7528\u7684\u503c\uff0c\u800c\u6536\u5230\u53ea\u8bfb\u6307\u9488\u7684\u51fd\u6570\u5219\u4e0d\u53ef\u4ee5\uff0c\u5982\u679c\u5b83\u60f3\u751f\u6210\u8be5\u503c\u7684\u4fee\u6539\u7248\u672c\uff0c\u5fc5\u987b\u5148\u521b\u5efa\u4e00\u4e2a\u526f\u672c\u3002\u8fd9\u79cd\u533a\u5206\u4ee5\u53ca\u4e00\u4e9b\u76f8\u5173\u7ea6\u5b9a\uff0c\u4f7f\u5f97\u5728\u67e5\u8be2\u6267\u884c\u671f\u95f4\u53ef\u4ee5\u907f\u514d\u4e0d\u5fc5\u8981\u7684\u5c55\u5f00\u503c\u590d\u5236\u3002</p>\n<p lang=\"zh\">\u5bf9\u4e8e\u6240\u6709\u7c7b\u578b\u7684\u5185\u5b58\u4e2d <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\uff0c<acronym class=\"acronym\">TOAST</acronym> \u7ba1\u7406\u4ee3\u7801\u90fd\u4f1a\u786e\u4fdd\u8fd9\u7c7b\u6307\u9488 datum \u4e0d\u4f1a\u610f\u5916\u5730\u88ab\u5b58\u50a8\u5230\u78c1\u76d8\u4e0a\u3002\u5185\u5b58\u4e2d\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u5728\u5b58\u50a8\u524d\u4f1a\u81ea\u52a8\u5c55\u5f00\u4e3a\u666e\u901a\u7684\u884c\u5185 varlena \u503c\uff0c\u5982\u679c\u8fd9\u6837\u4f1a\u4f7f\u627f\u8f7d\u5b83\u7684\u5143\u7ec4\u8fc7\u5927\uff0c\u8fd8\u53ef\u80fd\u8fdb\u4e00\u6b65\u8f6c\u6362\u4e3a\u78c1\u76d8\u4e0a\u7684 <acronym class=\"acronym\">TOAST</acronym> \u6307\u9488\u3002</p>\n</div>\n</div>", "manual_path": "/docs/18/storage-toast.html", "localization": {"status": "complete", "sources": [{"url": "/docs/18/storage-toast.html", "method": "same-major semantic node", "sha256": "d65ec97abae68b1c03e4b3d8a512d8c04d0f32b09b5f5b59e5ec7bf146dd48c2", "language": "zh", "matched_nodes": ["#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[2]", "#STORAGE-TOAST/div[10]/div[5]/ul[0]/li[3]", "#STORAGE-TOAST/div[10]/p[3]", "#STORAGE-TOAST/div[10]/p[7]", "#STORAGE-TOAST/div[11]/p[1]", "#STORAGE-TOAST/div[11]/p[2]", "#STORAGE-TOAST/div[11]/p[3]", "#STORAGE-TOAST/div[11]/p[4]", "#STORAGE-TOAST/div[11]/p[5]", "#STORAGE-TOAST/div[1]/dl[0]/dt[0]", "#STORAGE-TOAST/div[1]/dl[0]/dt[1]", "#STORAGE-TOAST/p[4]", "#STORAGE-TOAST/p[5]", "#STORAGE-TOAST/p[8]", "#STORAGE-TOAST/p[9]"]}], "language": "zh", "original_text": {"/versions/18/description/0": "This section provides an overview of TOAST (The Oversized-Attribute Storage Technique).", "/versions/18/facts/0/label": "Definition scope", "/versions/18/facts/0/value": "Same-version core physical storage documentation", "/versions/18/related/1/label": "Storage Parameters"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "40ed0a69ccc0d16b21eeb3f17acf4133d20a99fc89c0d1accf58296c981be1ee"}, "comparison_data": {"layouts": []}, "comparison_hash": "27341929154bfb55531f03501322b65af719c5561f3c4ddc9528a14aa4df69b5", "manual_language": "zh"}, "comparison": {"left": "17", "right": "18", "status": "unchanged", "diff": ""}}