{"title":"Tablespaces","version":"4.2","locale":"id","docname":"topics/db/tablespaces","url":"/id/4.2/topics/db/tablespaces/","canonical":"https://djangodocs.dev/id/4.2/topics/db/tablespaces/","summary":"Contoh umum untuk mengoptimalkan penampilan dalam sistem basisdata adalah menggunakan tablespaces untuk mengorganisir tata letak cakram.","html":"<h1>Tablespaces<a class=\"heading-anchor\" href=\"#tablespaces\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>Contoh umum untuk mengoptimalkan penampilan dalam sistem basisdata adalah menggunakan <a class=\"reference external\" href=\"https://en.wikipedia.org/wiki/Tablespace\">tablespaces</a> untuk mengorganisir tata letak cakram.</p>\n<aside class=\"admonition admonition-warning\" role=\"note\">\n<p class=\"admonition-title\">Peringatan</p>\n<p>Django tidak membuat tablespace untuk anda. Silahkan mengacu ke dokumentasi mesis basisdata anda untuk rincian di membuat dan mengelola tablespace.</p>\n</aside>\n<section id=\"declaring-tablespaces-for-tables\">\n<h2>Mengumumkan tablespace untuk table<a class=\"heading-anchor\" href=\"#declaring-tablespaces-for-tables\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Sebuah tablespace dapat ditentukan untuk tabel dibangkitkan oleh model dengan menyokong pilihan <a class=\"reference internal\" href=\"/id/4.2/ref/models/options/#django.db.models.Options.db_tablespace\" title=\"django.db.models.Options.db_tablespace\"><code class=\"xref py py-attr docutils literal notranslate\">db_tablespace</code></a> didalam <code class=\"docutils literal notranslate\">class Meta</code> model. Pilihan ini juga mempengaruhi tabel-tabel otomatis dibuat untuk <a class=\"reference internal\" href=\"/id/4.2/ref/models/fields/#django.db.models.ManyToManyField\" title=\"django.db.models.ManyToManyField\"><code class=\"xref py py-class docutils literal notranslate\">ManyToManyField</code></a> dalam model.</p>\n<p>Anda dapat menggunakan pengaturan <a class=\"reference internal\" href=\"/id/4.2/ref/settings/#std-setting-DEFAULT_TABLESPACE\"><code class=\"xref std std-setting docutils literal notranslate\">DEFAULT_TABLESPACE</code></a> untuk menentukan nilai untuk <a class=\"reference internal\" href=\"/id/4.2/ref/models/options/#django.db.models.Options.db_tablespace\" title=\"django.db.models.Options.db_tablespace\"><code class=\"xref py py-attr docutils literal notranslate\">db_tablespace</code></a>. Ini berguna untuk mengatur tablespace untuk aplikasi Django siap-pakai dan aplikasi lain yang kodenya tidak dapat dikendalikan.</p>\n</section>\n<section id=\"declaring-tablespaces-for-indexes\">\n<h2>Mengumumkan tablespace untuk indeks<a class=\"heading-anchor\" href=\"#declaring-tablespaces-for-indexes\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Anda dapat melewatkan pilihan <a class=\"reference internal\" href=\"/id/4.2/ref/models/indexes/#django.db.models.Index.db_tablespace\" title=\"django.db.models.Index.db_tablespace\"><code class=\"xref py py-attr docutils literal notranslate\">db_tablespace</code></a> ke sebuah pembangun <code class=\"docutils literal notranslate\">Index</code> untuk menentukan nama dari tablespace untuk digunakan untuk indeks. Untuk pengindeksan bidang tunggal, anda dapat melewatkan pilihan <a class=\"reference internal\" href=\"/id/4.2/ref/models/fields/#django.db.models.Field.db_tablespace\" title=\"django.db.models.Field.db_tablespace\"><code class=\"xref py py-attr docutils literal notranslate\">db_tablespace</code></a> ke sebuah pembangun <code class=\"docutils literal notranslate\">Field</code> untuk menentukan sebuah tablespace lain untuk indeks kolom bidang. Jika kolom tidak memiliki sebuah indeks, pilihan diabaikan.</p>\n<p>Anda dapat menggunakan pengaturan <a class=\"reference internal\" href=\"/id/4.2/ref/settings/#std-setting-DEFAULT_INDEX_TABLESPACE\"><code class=\"xref std std-setting docutils literal notranslate\">DEFAULT_INDEX_TABLESPACE</code></a> untuk menentukan nilai awalan untuk <a class=\"reference internal\" href=\"/id/4.2/ref/models/fields/#django.db.models.Field.db_tablespace\" title=\"django.db.models.Field.db_tablespace\"><code class=\"xref py py-attr docutils literal notranslate\">db_tablespace</code></a>.</p>\n<p>Jika <a class=\"reference internal\" href=\"/id/4.2/ref/models/fields/#django.db.models.Field.db_tablespace\" title=\"django.db.models.Field.db_tablespace\"><code class=\"xref py py-attr docutils literal notranslate\">db_tablespace</code></a> tidak ditentukan dan anda tidak menyetel <a class=\"reference internal\" href=\"/id/4.2/ref/settings/#std-setting-DEFAULT_INDEX_TABLESPACE\"><code class=\"xref std std-setting docutils literal notranslate\">DEFAULT_INDEX_TABLESPACE</code></a>, indeks dibuat dalam tablespace sama seperti tabel-tabel.</p>\n</section>\n<section id=\"an-example\">\n<h2>Sebuah contoh<a class=\"heading-anchor\" href=\"#an-example\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<div class=\"code-block\" data-language=\"python\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Python code\"><code><span class=\"k\">class</span> <span class=\"nc\">TablespaceExample</span><span class=\"p\">(</span>models<span class=\"o\">.</span>Model<span class=\"p\">):</span>\n    name <span class=\"o\">=</span> models<span class=\"o\">.</span>CharField<span class=\"p\">(</span>max_length<span class=\"o\">=</span><span class=\"mi\">30</span><span class=\"p\">,</span> db_index<span class=\"o\">=</span><span class=\"kc\">True</span><span class=\"p\">,</span> db_tablespace<span class=\"o\">=</span><span class=\"s2\">&quot;indexes&quot;</span><span class=\"p\">)</span>\n    data <span class=\"o\">=</span> models<span class=\"o\">.</span>CharField<span class=\"p\">(</span>max_length<span class=\"o\">=</span><span class=\"mi\">255</span><span class=\"p\">,</span> db_index<span class=\"o\">=</span><span class=\"kc\">True</span><span class=\"p\">)</span>\n    shortcut <span class=\"o\">=</span> models<span class=\"o\">.</span>CharField<span class=\"p\">(</span>max_length<span class=\"o\">=</span><span class=\"mi\">7</span><span class=\"p\">)</span>\n    edges <span class=\"o\">=</span> models<span class=\"o\">.</span>ManyToManyField<span class=\"p\">(</span>to<span class=\"o\">=</span><span class=\"s2\">&quot;self&quot;</span><span class=\"p\">,</span> db_tablespace<span class=\"o\">=</span><span class=\"s2\">&quot;indexes&quot;</span><span class=\"p\">)</span>\n\n    <span class=\"k\">class</span> <span class=\"nc\">Meta</span><span class=\"p\">:</span>\n        db_tablespace <span class=\"o\">=</span> <span class=\"s2\">&quot;tables&quot;</span>\n        indexes <span class=\"o\">=</span> <span class=\"p\">[</span>models<span class=\"o\">.</span>Index<span class=\"p\">(</span>fields<span class=\"o\">=</span><span class=\"p\">[</span><span class=\"s2\">&quot;shortcut&quot;</span><span class=\"p\">],</span> db_tablespace<span class=\"o\">=</span><span class=\"s2\">&quot;other_indexes&quot;</span><span class=\"p\">)]</span>\n</code></pre></div>\n<p>Dalam contoh ini, tabel-tabel dibangkitkan oleh model <code class=\"docutils literal notranslate\">TablespaceExample</code> (yaitu tabel model dan tabel many-to-many) akan disimpan dalam tablespace <code class=\"docutils literal notranslate\">tables</code>. Indeks untuk bidang nama dan indeks-indeks pada tabel many-to-many akan disimpan dalam tablespace <code class=\"docutils literal notranslate\">indexes</code>. Bidang <code class=\"docutils literal notranslate\">data</code> akan juga dibangkitkan dalam tablespace model <code class=\"docutils literal notranslate\">tables</code> secara awalan. Indeks untuk bidang <code class=\"docutils literal notranslate\">shortcut</code> akan disimpan dalam tablespace <code class=\"docutils literal notranslate\">other_indexes</code>.</p>\n</section>\n<section id=\"database-support\">\n<h2>Dukungan basisdata<a class=\"heading-anchor\" href=\"#database-support\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>PostgreSQL dan Oracle mendukung tablespaces. SQLite, MariaDB dan MySQL tidak.</p>\n<p>Ketika anda menggunakan backend yang kekurangan dukungan untuk tablespace, Django mengabaikan semua pilihan terkait-tablespace.</p>\n</section>","rootId":"tablespaces","toc":[{"title":"Mengumumkan tablespace untuk table","anchor":"declaring-tablespaces-for-tables","children":[]},{"title":"Mengumumkan tablespace untuk indeks","anchor":"declaring-tablespaces-for-indexes","children":[]},{"title":"Sebuah contoh","anchor":"an-example","children":[]},{"title":"Dukungan basisdata","anchor":"database-support","children":[]}],"breadcrumbs":[{"docname":"topics/index","title":"Menggunakan Django","url":"/id/4.2/topics/"},{"docname":"topics/db/index","title":"Model dan basisdata","url":"/id/4.2/topics/db/"}],"prev":{"docname":"topics/db/multi-db","title":"Basisdata banyak","url":"/id/4.2/topics/db/multi-db/"},"next":{"docname":"topics/db/optimization","title":"Optimisasi akses basisdata","url":"/id/4.2/topics/db/optimization/"},"formats":{"html":"/id/4.2/topics/db/tablespaces/","markdown":"/id/4.2/topics/db/tablespaces.md","json":"/id/4.2/topics/db/tablespaces.json"},"source":"https://github.com/django/django/blob/stable/4.2.x/docs/topics/db/tablespaces.txt","official":"https://docs.djangoproject.com/id/4.2/topics/db/tablespaces/","inVersions":["6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0","1.11","1.10","1.9"],"inLocales":["en","zh-hans","fr","ja","id","it","pt-br","ko","es","el","pl"]}