Daftar Isi:
Video: Week 8, continued 2024
Semua struktur logis yang akan Anda lihat ada dalam file data database. Struktur logis Oracle 12c memungkinkan Anda mengatur data Anda menjadi potongan yang mudah dikelola dan masuk akal.
Mari kita periksa hubungan logis dengan objek fisik. Titik panah mengarah ke arah hubungan satu-ke-banyak.
Tabel tablespace di Oracle 12c
Tablespaces adalah tingkat pertama dari organisasi logis penyimpanan fisik Anda.
Setiap database 12c harus memiliki tablespace berikut:
-
SYSTEM: Menyimpan objek database utama yang digunakan untuk menjalankan database itu sendiri.
-
SYSAUX: Untuk objek yang bersifat pembantu dan tidak secara khusus terkait dengan fitur inti database.
-
UNDO: Menyimpan segmen rollback atau undo yang digunakan untuk pemulihan transaksi.
-
TEMP: Untuk penyimpanan sementara
Setiap tablespace bertanggung jawab untuk mengatur satu atau beberapa file data. Biasanya, setiap tablespace mungkin mulai melekat pada satu file data, namun seiring bertambahnya database dan file Anda menjadi besar, Anda mungkin memutuskan untuk menambahkan penyimpanan dalam bentuk beberapa file data.
Jadi, bagaimana langkah selanjutnya membuat database Anda berjalan? Anda membuat beberapa area untuk menyimpan data Anda. Katakanlah database Anda akan memiliki penjualan, sumber daya manusia, data akuntansi, dan data historis. Anda mungkin memiliki tablespace berikut:
-
SALES_DATA
-
SALES_INDEX
-
HR_DATA
-
HR_INDEX
-
ACCOUNTING_DATA
-
ACCOUNTING_INDEX
-
HISTORY_DATA
-
HISTORY_INDEX
Segmen di segmen Oracle 12c
adalah struktur penyimpanan logis berikutnya setelah tablespace. Segmen adalah objek dalam database yang memerlukan penyimpanan fisik dan mencakup hal berikut:
-
Tabel
-
Indeks
-
Tampilan yang terwujud
-
Partisi
Contoh objek ini bukan < segmen dan tidak menyimpan data aktual: Procedures
-
Synonyms
-
Sequences
-
Daftar terakhir dari objek tidak tinggal di tablespace dengan segmen. Mereka adalah potongan kode yang hidup di tablespace SYSTEM.
Kapan pun Anda membuat segmen, tentukan tablespace apa yang Anda inginkan menjadi bagiannya. Ini membantu kinerja.
Ekstensi di Oracle 12c
Extents
seperti cincin pertumbuhan pohon. Kapan pun segmen tumbuh, tingkat keuntungan akan meningkat. Saat pertama kali membuat tabel untuk menyimpan barang, itu akan menjadi yang pertama. Saat Anda memasukkan data ke dalam tabel itu, batas itu terisi. Ketika tingkat terisi, ia meraih tingkat lain dari tablespace. Saat pertama kali membuat tablespace, itu semua adalah ruang kosong. Saat Anda mulai membuat objek, ruang bebas ditugaskan ke segmen dalam bentuk luapan. Tablespace rata-rata Anda terdiri dari luasan dan ruang kosong yang digunakan.
Bila semua ruang kosong terisi, file data tersebut berada di luar ruang. Saat itulah kemampuan DBA Anda masuk dan Anda memutuskan bagaimana membuat lebih banyak ruang kosong tersedia bagi segmen untuk terus diperluas.
Ekstensi tidak harus bersebelahan. Misalnya, ketika Anda membuat tabel item dan memasukkan 1.000 item pertama, itu mungkin tumbuh dan diperpanjang beberapa kali. Sekarang segmen Anda mungkin terdiri dari lima luapan. Namun, Anda juga membuat tabel baru.
Karena setiap tabel dibuat dalam tablespace baru, dimulai pada awal file data. Setelah Anda membuat tabel kedua, tabel pertama mungkin perlu diperpanjang lagi. Tingkat berikutnya datang setelah tingkat kedua. Pada akhirnya, semua objek yang berbagi tablespace akan memiliki jangkauan mereka bercampur.
Ini bukan hal yang buruk. Di tahun-tahun yang lalu, sebelum Oracle memiliki algoritma yang lebih baik untuk penyimpanan, DBA menghabiskan banyak waktu dan usaha mereka untuk mencoba menyatukan luapan ini. Itu disebut fragmentasi
. Ini adalah masa lalu. Jangan tersedot! Biarkan saja. Oracle 12c sepenuhnya mampu mengelola situasi seperti itu. Ada situasi di mana Anda memiliki beberapa file data dalam tablespace. Jika tablespace memiliki lebih dari satu file data, tablespace secara otomatis menciptakan luasan secara round-robin di semua file data. Ini adalah fitur kinerja Oracle lainnya.
Katakanlah Anda memiliki satu meja besar yang mendukung sebagian besar aplikasi Anda. Ia tinggal di tablespace yang dibuat dari empat file data. Saat tabel meluas, Oracle mengalokasikan luapan di setiap file data seperti ini:
1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4 … dan seterusnya
ini Cara, Oracle bisa memanfaatkan data yang tersebar di banyak perangkat fisik saat pengguna mengakses data. Ini mengurangi pertengkaran pada segmen yang memiliki banyak aktivitas.
Blok Oracle di Oracle 12c
Blok Oracle
adalah unit minimum yang akan dibaca atau ditulis Oracle pada waktu tertentu. Oracle biasanya membaca dan menulis lebih dari satu blok sekaligus, tapi sampai di Oracle akhir-akhir ini. Anda dulu memiliki kontrol langsung tentang bagaimana Oracle mengelola pembacaan dan penulisan blok, namun sekarang fungsinya secara otomatis disetel. Anda bisa menyetelnya secara manual sampai batas tertentu, namun sebagian besar instalasi paling baik diserahkan ke Oracle.
Oracle menemukan segmennya.
-
Oracle meminta segmen itu jika ada ruangan.
-
Segmen mengembalikan sebuah blok yang tidak penuh.
-
Baris atau entri indeks ditambahkan ke blok itu.
-
Blok Oracle juga memiliki mitra fisik seperti file data. Blok Oracle terdiri dari blok-blok OS. Ini adalah ukuran minimal dari unit penyimpanan minimum pada perangkat.