Managing Tables B U D I S E T I Y O N O, M T

dokumen-dokumen yang mirip
Oracle Academic Initiative

BAB 2 : Deklarasi Variabel

Pengenalan PL/SQL. Pertemuan 3

PERTEMUAN 10 PEMBUATAN TABEL

MODUL 1. Pembuatan tabel, pendefinisian constraint, export dan import PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

BAB II PEMBUATAN DAN MANAJEMEN TABLE

Pertemuan DDL INDIKATOR. Modul Teori Database Aknela

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DML. Copyright 2005 PENS-ITS

Perangkat Lunak Pengembangan Web

TUGAS I PRAKTIKUM SISTEM BASIS DATA. Nama: Krisna Pandu Wibowo( )

Yuafanda Kholfi Hartono

B a s i s D a t a C H A P T E R. SQL Operasi DML. Arif Basofi PENS 2015

TABEL. Tabel Halaman 25

DATABASE - MySQL. Muhammad Zen S. Hadi, ST. MSc.

Konsep Sistem Informasi B. BAB 2 - SQL Overview

15-Jan DATABASE - MySQL. Database. Constraints. Tujuan: Memahami perintah-perintah dasar DDL dan DML

Sistem Basis Data Danny Kriestanto, S.Kom., M.Eng

BASIS DATA TEKNIK INFORMATIKA - ITS 1

Optimasi Query. Optimasi Perintah SQL Informasi Jalur Akses Query Faktor-faktor yang berpengaruh terhadap kecepatan akses data

LAPORAN PRAKTIKUM MODUL 1 PENGENALAN MYSQL

Praktikum Basis Data. By. Rita Wiryasaputra, ST., M. Cs.

TABLE & INDEX PARTITIONING Juni 2010 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir Platform : Ms SQL Server 2008

Karena VIEW dibentuk tanpa mencantumkan nama kolom baru, maka v1 mewarisi kolom yang yang dipilih pada tabel mahasiswa_xxx.

Computer Science, University of Brawijaya. Putra Pandu Adikara, S.Kom VIEW & TABLE. Basis Data 2

Contoh SQL Constraint

MODUL PEMPROGRAMAN SQL TINGKAT DASAR 1 STANDAR KOMPETENSI: MENERAPKAN BAHASA PEMPROGRAMAN SQL TINGKAT DASAR SMK NEGERI 1 MAJALENGKA

ORGANISASI FILE. Alif Finandhita, S.Kom

Sejarah(1) Sejarah(2) STRUCTURE QUERY LANGUANGE (1) Definisi SQL

Introduction to SQL. Database Programming. 2 nd Chapter

OPTIMALISASI QUERY DALAM BASIS DATA MY SQL MENGGUNAKAN INDEX

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DML. Copyright 2005 PENS-ITS

Pengenalan Database Management System MySQL. Pokok Bahasan: Pengenalan DataBase Pembangunan database berbasis Client-Server Dasar-Dasar MySQL

Praktikum Basis Data (Database Server MySQL) Bekerja Dengan Tabel

Konsep Dasar. Relatsional dan RDBMS User dan Schema Database Membuat Tabel dan Mendefinisikan Constraint Input Data ke dalam Tabel

Tahap Instalasi PostgreSQL di Windows

Hendra Setiawan ( )

Pertemuan VII TRIGGERS

STRUCTURE QUERY LANGUAGE DDL & DML

Yuafanda Kholfi Hartono

Oracle Academic Initiative

MODUL 4 INTERNET PROGRAMMING DATABASE

Mudafiq Riyan Pratama

PENGENALAN SINTAKS DASAR DALAM MySQL

Schema Objects. MI2154 SQL LANJUT Dedy Rahman Wijaya, S.T., M.T., OCA

Arsitektur Basis Data Oracle

Basis Data Relational

Persiapan Table Untuk Latihan Sebelum kita berkenalan lebih jauh dengan Trigger, mari kita buat terlebih dahulu, struktur table yang dibutuhkan.

KOMPRESI DATA PADA ORACLE 9i

Pengenalan Structured Query Language

INTERNET PROGRAMMING DATABASE

Contoh SQL Constraint

DATABASE ADMINISTRATOR

KapitaSelekta. (KBKI82127, 2 sks) Materi : Pengenalan MySQL

PERTEMUAN 9 MANIPULASI DATA

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP) PROGRAM STUDI : DIII MANAJEMEN INFORMATIKA Semester : 4

Bab 5 Membuat Data Dictionary View

Membuat Aplikasi Hotel dan Penginapan. dengan MS Access

Praktikum Basis Data 14 Structure Query Language 2

PENGANTAR TEKNOLOGI SISTEM INFORMASI MANAGEMENT 2

Struktur Penyimpanan. Oleh: Arif Basofi

Pengertian Query. Query adalah perintah-perintah untuk mengakses data pada sistem basis data

PERINTAH DASAR MySQL

PRAKTIKUM PL/SQL (Trigger) OLEH : WIRATMOKO YUWONO, ST

X. PENGANTAR DATABASE

Database Management System. Program yang memungkinkan item-item dalam suatu database disusun, diolah dan diperbaharui

perkembangan yang diraih, namun ada juga kegagalan dan ketidakstabilan pada masingmasing Database Engine. Database yang bekerja 24 jam dan yang memili

Oracle Academic Initiative

BASIS DATA LANJUT. ORACLE 9i (DATABASE ADMINISTRATOR) MODUL. Disusun Oleh : Saepudin Nirwan, S.Kom., M.Kom.

Constraint dan Manajemen Data dalam Timezone Berbeda

TUGAS PRAKTIKUM SISTEM BASIS DATA

BERMAIN DATA DENGAN SQL SERVER

Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle.

PENGENALAN DB2. 1. PENGERTIAN DB2 RDBMS yang memungkinkan user menggunakan perintah-perintah SQL terhadap basis data relasional.

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN WEB Semester: 2 MYSQL 200 menit No.: Job: 12 Tgl: Hal.

Untuk menjalankan Mysql secara konpensional jalankan Mysql.exe pada direktori Mysql\Bin. Akan tampak tampilan sebagai berikut:

LAPORAN TERTULIS ON THE JOB TRAINING

DATA DEFINITION LANGUAGE : CREATE, DROP, ALTER

CONSTRAINT clients_client_num_pk PRIMARY KEY (client_number));

STRUCTURE QUERY LANGUAGE

Mengelola Data. Oleh: Arif Basofi

SQL Lanjut. Modifikasi Database. Versi 2

3. Apa kekurangan paging sederhana dibandingkan dengan paging pada virtual memory?

Sistem Basis Data 1. Pertemuan 5 dan 6 Aljabar Relasional dan SQL Rogayah, ST.,MMSI Untuk 3DB01 dan 3DB04

ANALISA PERFORMANSI PERTITIONING TABEL PADA RELATIONAL DATABASE MANAGEMENT SYSTEM

Obyek pada Oracle. Manajemen Obyek Basis Data dan Dictionary View. Obyek pada Oracle adalah segala hal yang bisa dibuat di Oracle, seperti:

Oracle Academic Initiative

B a s i s D a t a C H A P T E R. SQL Operasi DDL. Arif Basofi PENS 2015

Kontrak Kuliah. Dasar-dasar MySQL. Edi Sugiarto, S.Kom, M.Kom

DESAIN DATABASE. Pertemuan 06 3 SKS

Agenda SQL. Pemakai SQL. Kemampuan SQL 02/12/2010 STRUCTURED QUERY LANGUAGE (SQL) Structured Query Language (SQL) (Pert. 9)

Praktikum Basis Data 2017 TE UM MODUL 8 TRIGGER A. TUJUAN

MySQL Databases. Dasar-dasar MySQL dan Implementasi MySQL kedalam pemrograman PHP. Jakarta, 16 April 2011 Oleh: M. Awaludin, S.Kom

Jobsheet SQL Dasar : Hari Zulianto, ST [Year]

Penggunaan Pivot Table Sederhana Pada Ms. Excel

sistem basis data ti ti ukdw Indexing Materi Minggu ke-10 Teknik Informatika Universitas Kristen Duta Wacana Yogyakarta 04/07/13 budi susanto 1

RANGKUMAN PHP dan MYSQL

STRUCTURE QUERY LANGUAGE (SQL)

DAFTAR ISI. Kata Pengantar... v Ucapan Terima Kasih... vi Daftar Isi... vii. I. Pengenalan... 1

S Q L STRUCTURED QUERY LANGUAGE DEFINITION MANIPULATION C O N T R O L D M L SELECT INSERT UPDATE DELETE

TUGAS 1 PRAKTIKUM SISTEM BASIS DATA

Transkripsi:

Managing Tables B U D I S E T I Y O N O, M T

Jenis-jenis table Tabel yang biasa dikenal : Tabel reguler Partitioned table Index-organized table Cluster table Regular table Partitioned table Indexorganized table Cluster

Regular table Merupakan table paling umum digunakan untuk menyimpan data Merupakan default table DBA mempunyai akses yang sangat terbatas terhadap distribusi baris-baris dalam table Baris dapat disimpan dalam urutan sembarang, tergantung pada aktivitas dari table

Partitioned table Partisi sangat berguna untuk table dengan ukuran besar dan sering dimanipulasi secara concurrent Sebuah partitioned table mempunyai satu atau lebih partisi Tiap partisi dalam partitioned table dialokasikan pada sebuah segment dan dapat ditempatkan dalam tablespace yang berbeda-beda

Jenis Partisi (range) Range field dipartisi berdasarkan nilai dalam range tertentu Contoh :

Jenis Partisi (hash) Hash jika tidak diketahui secara spesifik nilai, ataupun range yang akan dipartisi Contoh :

Jenis Partisi (list) Merupakan fitur baru di Oracle 9i List untuk tiap partisi hanya diberlakukan nilai-nilai tertentu Contoh :

Jenis Partisi (composite) Composite merupakan jenis partisi gabungan antara metode partisi range dan hash Contoh :

Index-organized table Akan lebih baik digunakan untuk tabel-tabel yang banyak diakses melalui primary key-nya Menyimpan data dalam bentuk struktur index. Menyerupai heap table dengan primary index pada satu kolom atau lebih Data akan tersimpan secara berurutan sesuai dengan kolom primary key Maintenance dilakukan pada dua bagian storage yang terpisah : Table sendiri (table segment) index (B-tree) (index segment) Menyediakan fast key untuk query yang tepat.

Clustered table Sebuah cluster dibuat untuk mengelompokkan table-table yang mempunyai kesamaan datablok ataupun table-table yang share column dan sering digunakan bersama Karakteristik dari cluster: Cluster mempunyai sebuah cluster key, yang digunakan untuk mengidentifikasi baris yang diperlukan untuk disimpan secara bersama Cluster key terdiri dari satu atau lebih kolom Table dalam cluster mempunyai kolom yang berkaitan dengan Cluster key Updating suatu kolom dalam Cluster key dapat berakibat migrasi baris Cluster biasanya dibuat untuk meningkatkan perfomansi Cluster hanay berpengaruh pada fisikal storage, tanpa mempengaruhi struktur logical

Oracle Data Types Data type User-defined Scalar Built-in Collection Relationship CHAR(N), NCHAR(N) VARCHAR2(N), NVARCHAR2(N) NUMBER(P,S) DATE RAW(N) BLOB, CLOB, NCLOB, BFILE LONG, LONG RAW ROWID VARRAY TABLE REF

Tipe Data untuk penyimpanan Large Objects LONG, LONG RAW Single column per table Up to 2 gigabytes SELECT returns data Data stored in-line No object type support Sequential access to chunks LOB Multiple columns per table Up to 4 gigabytes SELECT returns locator Data stored in-line or out-of-line Supports object types Random access to chunks

Struktur Baris Baris data disimpan sebagai variable length record Kolom pada suatu baris pada umumnya disimpan sebagaimana urutan yang telah didefinisikan Kolom dengan nilai NULL tidak disimpan Tiap baris dalam sebuah table mempunyai Row header untuk menyimpan jumlah kolom dalam baris tersebut, chaining, row lock status Row data untuk setiap kolom, Oracle akan menyimpan panjang kolom dan nilai Database block Row header Column length Column value

Struktur Baris Legenda Header Direktori Tabel Direktori Baris Ruang kosong Baris Data Database block Row header Column length Column value Data Blok

ROWID Data Type Identifier Unique untuk sebuah baris Digunakan untuk mengalokasikan sebuah baris ROWID Format OOOOOO FFF BBBBBB RRR Data object number Relative file number Block number Row number Contoh

Restricted ROWID Untuk compatible (pre Oracle 8i) Dapat mengidentifikasi baris-baris dalam segment Membutuhkan lebih sedikit space BBBBBBBB. RRRR. FFFF Block number Row number File number

High Water Mark (HWM) Merupakan indikator blok terakhir yang pernah dipakai Batas scanning terhadap suatu tabel Oracle instance tidak akan merubah HWM jika kita mendelete baris After inserts Extent ID 0 1 2 3 4 High water mark After deletes Extent ID 0 1 2 3 4 Used block Unused block Free space after delete

Truncated table Merubah posisi HWM agar berada di awal blok, sehingga blok yang kosong tidak di-scan (ketika full table scan) Gunakan jika yakin bahwa setelah record di-delete, tidak akan ada insert kembali Penggunaan truncated akan berakibat perfomance menurun ketika ada insert record

Simulasi HWM 1. Buat table dengan banyak record 2. Set autotrace TraceOnley (onn-kan) 3. Amati jumlah blok yang discan 4. Set autotrace TraceOnley (off-kan) 5. Lakukan delete pada seluruh record 6. Lakukan commit 7. Set autotrace TraceOnley (onn-kan) 8. Amati jumlah blok yang discan

Create table Set autotrace Lakukan scan full table Delete Tanpa Truncate

Delete Tanpa Truncate Set autotrace off Delete seluruh record Lakukan commit Set autotrace onn Lakukan full scan table

Perbandingan Sebelum delete Setelah delete tanpa truncate

Delete dengan Truncate Setelah delete tanpa truncate Setelah delete dengan truncate

Deallocation of Unused Space Before deallocation ALTER TABLE scott.employees DEALLOCATE UNUSED; High water mark After deallocation Used block Unused block Free space after delete

Efek Truncate pada Insert Tanpa truncate Dengan truncate

Row Chaining dan Row Migration Row Chaining row yang merentang lebih dari satu blok. Penyebab : Ukuran row > ukuran blok dan atau PctFree tak dapat menampung hasil update, sementara blok berikutnya tak mampu menampung seluruh row Row migration row yang bermigrasi secara keseluruhan dari satu blok ke blok lain. Penyebab : PctFree tak dapat menampung hasil update row sementara blok berikutnya mampu menampung seluruh row Ukuran row < ukuran blok

Row Migration and Chaining Before update After update

Deallocation of Unused Space Before deallocation ALTER TABLE scott.employees DEALLOCATE UNUSED; High water mark After deallocation Used block Unused block Free space after delete

Informasi table DBA_OBJECTS OWNER OBJECT_NAME OBJECT_ID DATA_OBJECT_ID CREATED DBA_SEGMENTS OWNER SEGMENT_NAME TABLESPACE_NAME HEADER_FILE HEADER_BLOCK DBA_TABLES OWNER TABLE_NAME PCT_FREE PCT_USED INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS MAX_EXTENTS PCT_INCREASE CACHE BLOCKS EMPTY_BLOCKS CHAIN_CNT

Contoh informasi dari table ANALYZE TABLE scott.employees ESTIMATE STATISTICS; Check CHAIN_CNT SELECT chain_cnt FROM DBA_TABLES WHERE table_name= EMPLOYEES AND owner= SCOTT ;