Oracle ialah sistem pengurusan pangkalan data hubungan yang sangat berguna dalam perusahaan dan organisasi besar. Pembahagian ialah satu cara untuk meningkatkan prestasi dan mengurus penyelesaian data dan storan. Oracle membenarkan jadual dibahagikan kepada segmen yang lebih kecil yang boleh diuruskan secara bebas. Dalam artikel ini, kami akan meneroka prinsip kerja, jenis, penciptaan dan pengurusan partition Oracle.
1. Cara pembahagian berfungsi
Pembahagian Oracle membahagikan jadual kepada beberapa kawasan untuk penyimpanan dan setiap kawasan boleh diselenggara secara bebas. Setiap partition boleh terkandung dalam jadual bersama partition lain. Jadual yang dipisahkan kelihatan seperti jadual biasa secara fizikal dan logik. Walau bagaimanapun, jadual yang dipisahkan menyimpan data dalam berbilang lokasi fizikal, yang bermaksud ia meningkatkan prestasi pertanyaan dan kemas kini.
Pembahagian jadual boleh meningkatkan prestasi pertanyaan kerana Oracle boleh mengedarkan pertanyaan ke kawasan yang berbeza, membenarkan pemprosesan serentak. Selain itu, jika jadual mengandungi jumlah data yang sangat besar, pembahagian boleh membantu mengurangkan trafik I/O cakera. Pertanyaan hanya perlu mengimbas partition yang berkaitan dan tidak perlu mengimbas keseluruhan jadual, yang boleh meningkatkan kelajuan pertanyaan dengan ketara.
2. Jenis partition
Oracle mempunyai pelbagai jenis partition. Berikut ialah jenis partition utama yang disokong oleh Oracle.
Pembahagian julat jadual berdasarkan lajur nilai. Julat boleh dilakukan berdasarkan lajur angka atau tarikh. Sebagai contoh, anda boleh membahagikan jadual kepada bulan atau suku berdasarkan tarikh jualan. Faedah pembahagian julat ialah ia boleh mengendalikan pertanyaan dan operasi data merentas berbilang partition.
Pembahagian lajur berdasarkan lajur dalam jadual. Baris dengan nilai lajur yang sama akan diletakkan dalam partition yang sama. Pembahagian lajur lebih fleksibel daripada pembahagian julat. Biasanya, anda menggunakan pembahagian lajur untuk membahagikan jadual yang tidak mudah dihuraikan mengikut nombor atau julat tarikh.
Hash Partitioning mengedarkan baris jadual ke dalam partition berdasarkan nilai hash. Nilai cincang dijana menggunakan fungsi cincang. Faedah jenis partition ini ialah data boleh disebarkan dan diagihkan sama rata antara partition. Pembahagian jenis ini berguna dalam situasi di mana corak capaian data sukar untuk diramal.
Pembahagian julat lajur adalah berdasarkan dua atau lebih nilai lajur pemisahan mengikut julat berangka. Jenis partition ini sangat serupa dengan partitioning range. Pembahagian jenis ini berguna apabila operasi fleksibiliti dan julat yang lebih besar diperlukan.
3. Cara membuat jadual partition
Untuk menyimpan data, anda perlu mencipta jadual partition. Berikut ialah langkah-langkah untuk mencipta jadual sekatan:
Sebelum mencipta jadual sekatan, anda perlu memilih ruang meja untuk menyimpan ruang sekatan meja. Ruang meja ialah unit asas storan fizikal.
Gunakan arahan CREATE TABLE untuk mencipta jadual terbahagi. Apabila membuat jadual, anda mesti menentukan jenis data, saiz, jenis lajur, jenis partition dan medan kunci partition.
Kunci partition terdiri daripada lajur atau lajur dalam jadual partition. Kunci partition mestilah unik pada jadual, yang bermaksud bahawa kunci partition tidak boleh muncul berulang kali dalam jadual. Anda boleh menentukan kunci partition menggunakan julat, lajur, cincang atau julat lajur.
Apabila mencipta jadual partition, anda perlu menentukan partition. Definisi partition dilaksanakan berdasarkan kunci partition dan jenis partition. Anda boleh menentukan berbilang takrifan partition, setiap satunya boleh terdiri daripada julat atau jenis yang berbeza.
Sebagai contoh, arahan berikut akan mencipta jadual pembahagian berdasarkan jabatan, wilayah dan tarikh jualan:
CREATE TABLE sales_data (department_id NUMBER, region_id NUMBER, sales_date DATE, sales_amt NUMBER) PARTITION BY RANGE (sales_date) (PARTITION saleseast VALUES LESS THAN (TO_DATE('01-01-2016', 'DD-MM-YYYY')), PARTITION saleswest VALUES LESS THAN (TO_DATE('01-07-2016', 'DD-MM-YYYY')), PARTITION salescentral VALUES LESS THAN (TO_DATE('01-01-2017', 'DD-MM-YYYY')), PARTITION salesnorth VALUES LESS THAN (MAXVALUE));
4. Cara mengurus jadual partition
Urus partition jadual yang disertakan dalam partition Masukkan, padam, kemas kini dan pertanyaan data dalam jadual. Berikut ialah beberapa garis panduan untuk menguruskan jadual pembahagian:
Apabila memasukkan data, anda perlu memasukkan nilai lajur kunci partition. Ini menunjukkan partition mana Oracle memasukkan data.
Apabila menanyakan data, anda hanya perlu menanyakan partition di mana ia berada untuk mempercepatkan pertanyaan. Oleh itu, adalah lebih baik untuk menentukan had partition dalam pertanyaan.
Apabila mengemas kini data, anda hanya perlu mengemas kini data dalam partition, tanpa mengemas kini keseluruhan jadual. Oleh itu, lebih baik menggunakan sekatan partition semasa mengemas kini data.
Apabila memadam data, anda juga hanya perlu memadamkan data dalam partition tanpa memadam keseluruhan jadual. Gunakan pernyataan had partition untuk memadam data dengan lebih cepat.
Ringkasan
Pembahagian Oracle ialah cara untuk meningkatkan prestasi pertanyaan dan mengurus penyelesaian data dan storan. Jenis pembahagian yang tersedia termasuk pembahagian julat, pembahagian lajur, pembahagian cincang dan pembahagian julat lajur. Untuk mencipta jadual partition, anda pilih ruang jadual, cipta jadual dan tentukan kunci partition dan definisi partition. Untuk mengurus jadual partition dengan cekap, anda perlu menggunakan had partition untuk memasukkan, memadam, mengemas kini dan bertanya data.
Atas ialah kandungan terperinci Bagaimana untuk membahagikan Oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!