領域サイズの見積方法

Similar documents
Oracleの領域管理~トラブル防止のテクニック~

ハイウォーターマークを知る

D1印刷用.PDF

PowerPoint -O80_REP.PDF

Oracle8簡単チューニング for Windows NT

橡ExCtrlPDF.PDF

キャラクタ・セットの移行に関するベスト・プラクティス

_02_3.ppt

Oracle活用実践演習コース

,, create table drop table alter table

1

橡実践Oracle Objects for OLE

Oracle Code Tokyo 2017 ダウンロード資料

早分かりS2Dao

1,.,,,., RDBM, SQL. OSS,, SQL,,.

_02-4.ppt

Slide 1

アジェンダ Oracle Databaseのデータ ローディング SQL*Loaderを使用したデータ ローディング 外部表を使用したデータ ローディング SQL*Loaderと外部表の比較 まとめ 2

PowerPoint プレゼンテーション

BC4J...4 BC4J Association JSP BC4J JSP OC4J

自己管理型データベース: アプリケーションおよびSQLチューニング・ガイド

はじめに コースの概要と目的条件分岐の方法や複雑な集計の手法など SQL のコーディングの幅を広げるためのテクニックについて説明します また パフォーマンスを考慮した記述方法や正しい結果を取得するための記述方法などについても あわせて説明します 本コースでは 実践的な SQL の記述手法を広く浅く紹

Oracle Database 12cでのSQL*LoaderのExpress Modeによるロード

第 2 章 問合せの基本操作 この章では データベースから情報を検索する際に使用する SELECT コマンド および SELECT コマンドと 同時に使用する句について説明します 1. 問合せとは 2. 基本的な問合せ 3. 列の別名 4. 重複行を一意にする 5. 検索行の絞込み 6. 文字パター

PostgreSQL SQL チューニング入門 ~ Explaining Explain より ~ 2012 年 11 月 30 日 株式会社アシスト 田中健一朗

Microsoft PowerPoint - 3-Forms-Others.ppt

プレポスト【問題】

1 SQL Server SQL Oracle SQL SQL* Plus PL/SQL 2 SQL Server SQL Server SQL Oracle SQL SQL*Plus SQL Server GUI 1-1 osql 1-1 Transact- SQL SELECTFROM 058

PowerPoint -O80_RKI.PDF

第 1 章 条件分岐 この章では 条件に応じて処理を分岐する方法について説明します 1. CASE 式で複雑な条件分岐を実現 2. 関数を使用した条件分岐 3. MERGE 文による条件に応じた DML の実行

KeySQL for Microsoft Windows 6.0 : B Copyright 2006, Oracle Corporation. All rights reserved. Printed in Japan. * Oracle Corporation Oracle Co

pera1会社概要n

Oracle XML DB によるスケーラビリティおよびパフォーマンス検証 - MML v.3.0


KeySQL R5.1 Release Note

DB12.1 Beta HandsOn Seminar

第 5 章 結合 結合のパフォーマンスに影響を与える結合の種類と 表の結合順序について内部動作を交えて 説明します 1. 結合処理のチューニング概要 2. 結合の種類 3. 結合順序 4. 結合処理のチューニングポイント 5. 結合関連のヒント

日本オラクル株式会社

: ORDER BY

Microsoft PowerPoint - J-S301167_idx_comp.ppt [互換モード]

answer.indd

ORACLE RECOVERY MANAGER (RMAN) 10g: 再起動

tkk0408nari

1 ex01.sql ex01.sql ; user_id from (select user_id ;) user_id * select select (3+4)*7, SIN(PI()/2) ; (1) select < > from < > ; :, * user_id user_name

意外と簡単!?

Oracle Web Conferencing Oracle Collaboration Suite 2 (9.0.4) Creation Date: May 14, 2003 Last Update: Jan 21, 2005 Version: 1.21

Oracle9i

XML Consortium & XML Consortium 1 XML Consortium XML Consortium 2

第 2 章 PL/SQL の基本記述 この章では PL/SQL プログラムの基本的な記述方法について説明します 1. 宣言部 2. 実行部 3. 例外処理部

imt_817_tuning_11_1822.PDF

BIG_RM_BAS_OPEN

アジェンダ ORACLE MASTER Oracle Database 11g 概要 11g SQL 基礎 Ⅰ 試験紹介 ポイント解説 Copyright 2011 Oracle. All rights reserved. 2

PowerPoint プレゼンテーション

untitled

DCR-PC300K/IPK

はじめに コースの概要と目的 Oracle をより効率的に使用するための SQL のチューニング方法について説明します また 索引の有無 SQL の 記述方法がパフォーマンスにどのように影響するのかを実習を通して理解します 受講対象者 アプリケーション開発者 / データベース管理者の方 前提条件 S

Microsoft Word - 430_15_Developing_Stored_Procedure.doc

eラーニング資料 e ラーニングの制作目標 データベース編 41 ページデータベースの基本となる概要を以下に示す この内容のコースで eラーニングコンテンツを作成予定 データベース管理 コンピュータで行われる基本的なデータに対する処理は 次の 4 種類です 新しいデータを追加する 既存のデータを探索

Oracle Change Management Pack, Oracle Diagnostics Pack, Oracle Tuning Packインストレーション・ガイド リリース2.2

<93F195D C E706466>

ERS-7

Oracle Lite Tutorial

1

dbMAGIC Ver8.2 SQLガイド

目次 1 集計関数 / 分析関数とは 2 集計関数 / 分析関数のパフォーマンス効果 3 ケーススタディグループ小計やクロス集計を計算するランキングを表示する前月比較を表示する累計を計算する移動平均を計算する構成比を計算する Oracle8i SQL Oracle8i Oracle Oracle C

052-XML04/fiÁ1-part3-’ÓŠ¹

CAC

w

Oracle Spatial

第 7 章 ユーザー データ用表領域の管理 この章では 表や索引を格納するユーザー データ用表領域の作成や 作成後のメンテナンスに ついて解説します 1. ユーザー データ用表領域の管理概要 2. ユーザー データ用表領域作成時の考慮事項 3. ユーザー データ用表領域の作成 4. ユーザー データ



1. 52

扉 序文 目次DVD用 .indd

すぐできる冬の省エネ・節電ガイド

”Žfi¶‰s‚ÒŒh”~”ŒŠá‘WŁ\”ƒ

Oracle Database 10g Release 2を使用したデータベース・パフォーマンス

ストラドプロシージャの呼び出し方

第 3 章代表的なチューニングポイント 3 Q. ストアド プロシージャを使用した SQL 共有率の向上 A. ストアド プロシージャを使用した場合 同じストアド プロシージャを実行する複数のユーザーが 同じ共有 PL/SQL 領域を使用します また ストアド プロシージャは解析済みで格納されている

ORACLEデータベース10G データ・ポンプ: 超高速データ移動ユーティリティの基盤

PowerPoint プレゼンテーション

KWCR3.0 instration

S2Dao入門

Oracle Database Connect 2017 JPOUG

SQLite データベース IS04 組み込み 1

OM.indd

橡Oracle8i ORDBMS入門

マルチ・スレッド・アンローダーの紹介

n n n ( ) n Oracle 16 PostgreSQL 3 MySQL

Microsoft PowerPoint - 講義補助資料2017.pptx

Oracle WebDB コンポーネント・ユーザーズ・ガイド、リリース2.2

IBM Software Group DB2 Information Management Software DB2 V8 XML SQL/XML 2 XML XML UDF XMLExtender XML XML XMLCollection, XMLColumn XML UDF Informati

Oracle9i DB R2構築手順

Microsoft PowerPoint - KeySQL50_10g_vlo2.ppt

PowerPoint Presentation

Chapter Two

OOW_I06

Copyright 2018 CO-Sol Inc. All Rights Reserved. 2 自己紹介 + 所属会社紹介 五十嵐一俊 ( いがらしかずとし ) Oracle Exadata の DBA 業務に従事 ORACLE MASTER Platinum 12c 保持 執筆記事 コーソル

5 Q. 選択リストにアスタリスク (*) を使用して 位置に基づくソートを行うとどうなりますか A. その表を構成している列の順序に対応して 暗黙的に番号が割り振られます 6 Q. 文字データが日本語の場合 ソートは五十音順に行われるのですか A. 五十音順ではなく 文字コード順になります 文字コ

Oracle9i Lite SQLリファレンス, リリース5.0

Transcription:

White Paper

1998 3 1998 7 NULL 1998 9 2 8.03 Design & Migration Services Oracle Corporation Japan 1998 Printed in Japan Oracle and SQL*Loader are registered trademarks. Oracle7 Oracle Corporation

Oracle I/O Oracle Oracle 2 1

l l l l PCTFREE INITRANS l V$TYPE_SIZE V$TYPE_SIZE SQL> select type, type_size from v$type_size 2 where type in ('KCBH','UB4','KTBBH','KTBIT','KDBH','KDBT','UB1','SB2'); TYPE TYPE_SIZE -------- --------- UB1 1 UB4 4 SB2 2 KCBH 20 KTBIT 24 KTBBH 48 KDBH 14 KDBT 4 8 ; 2

PCTFREE PCTFREE 1 KCBH + UB4 + KTBBH + (INITRANS - 1) * KTBIT + KDBH KCBH UB4 KTBBH KTBIT KDBH V$TYPE_SIZE INITRANS INITRANS 1 255 1 KCBH + UB4 + KTBBH + (INITRANS - 1) * KTBIT + KDBH 20 + 4 + 48 + (1-1) * 24 + 14 86 (Byte) 3

PCTFREE DB_BLOCK_SIZE PCTFREE A * PCTFREE / 100 CEIL * PCTFREE / 100 KDBT CEIL * 1 PCTFREE / 100 KDBT CEIL PCTFREE KDBT V$TYPE_SIZE SQL> select name, value from v$parameter where name='db_block_size'; NAME ---------------------------------------------------------------- VALUE --------------------------------------------------------------------- db_block_size 2048 CEIL(( - ) *(1 - PCTFREE / 100))- KDBT CEIL((2048 86) * (1 10 / 100)) - 4 CEIL(1962 * 0.9) - 4 1766-4 1962(Byte) 4

(vsize(colname)) ANALYZE USER_TABLES AVG_ROW_LEN visize(colname) SQL> desc emp; NULL? ------------------------------- -------- ---- EMPNO NOT NULL NUMBER(4) ENAME VARCHAR2(10) JOB VARCHAR2(9) MGR NUMBER(4) HIREDATE DATE SAL NUMBER(7,2) COMM NUMBER(7,2) DEPTNO NUMBER(2) SQL> select avg(vsize(empno)) empno, 2 avg(nvl(vsize(ename), 0)) ename, 3 avg(nvl(vsize(job), 0)) job, 4 avg(nvl(vsize(mgr), 0)) mgr, 5 avg(nvl(vsize(hiredate), 0)) hiredate, 6 avg(nvl(vsize(sal), 0)) sal, 7 avg(nvl(vsize(comm), 0)) comm, 8 avg(nvl(vsize(deptno), 0)) deptno 9 from emp; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO --------- --------- --------- --------- --------- --------- --------- --------- 2.9285714 5 6.8571429 2.7857143 7 2.4285714.5 2 SQL> select (avg(vsize(empno)) + avg(nvl(vsize(ename), 0)) 2 + avg(nvl(vsize(job), 0)) + avg(nvl(vsize(mgr), 0)) 3 + avg(nvl(vsize(hiredate), 0)) + avg(nvl(vsize(sal), 0)) 4 + avg(nvl(vsize(comm), 0)) + avg(nvl(vsize(deptno), 0)) ) 5 average_row_size 6 from emp; AVERAGE_ROW_SIZE ---------------- 29.5 5

2 column size overhead column size CHAR VARCHAR2 NUMBER p 1 CEIL(p / 2) 1 38 DATE 7Byte CEIL overhead column size 250Byte 1 column size 250Byte 3 3 * UB1 UB1 V$TYPE_SIZE 6

1 CHAR(15) column size overhead 15 1 16 (Byte) 2 DATE column size overhead 7 1 8 (Byte) 3 NUMBER(10) column size overhead 6 1 7 (Byte) 3 * UB1 3 * 1 (16 7 8) 34 (Byte) MAX UB1*3 UB4 SB2, SB2 MAX A, B UB1 UB4 SB2 A B V$TYPE_SIZE MAX UB1*3 UB4 SB2, SB2 MAX 1*3 4 2, 34 + 2 MAX 9, 34 + 2 34 2 36 Byte 7

/ / 1762 / 36 48 CEIL CEIL CEIL 20000 / 48) 417 417 * 2048 854016 (Byte) 0.81 (MB) 8

9 Oracle 3 1 10 20% l NULL l l l PCTFREE INITRANS l V$TYPE_SIZE 3 PCTFREE INITRANS

INITRANS 1 2 113 24 * INITRANS 113 24 * 2 161 (Byte) PCTFREE PCTFREE / 100 1 PCTFREE / 100 ( ) * (1 (PCTFREE / 100)) (2048 161) * (1 10 / 100) 1887 * 0.9 1698.3 1699 (Byte) 4 ROWID ROWID 10

column size overhead column size overhead column size 127Byte 1 column size 127Byte 2 3 * UB1 UB1 V$TYPE_SIZE CHAR(15) column size overhead 15 1 16 (Byte) NUMBER(10) column size overhead 6 1 7 (Byte) 3 * UB1 3 * 1 (16 7) 26 (Byte) MAX UB1*3 UB4 SB2, SB2 MAX A, B UB1 UB4 SB2 A B V$TYPE_SIZE 11

MAX UB1*3 UB4 SB2, SB2 MAX 1*3 4 2, 26 + 2 MAX 9, 26 + 2 28 Byte ROWID ROWID F V ROWID 1 ROWID F V 2 6 127 * 1 128 * 2 ROWID F V 2 6 (2 * 1 0 * 2) 28 38 (Byte) FLOOR ( / ) FLOOR FLOOR ( / ) FLOOR (1699 / 38) 44 12

null 1.05 CEIL null CEIL1.05 null CEIL1.05 * 20000 / 44) 478 478 * 2048 978944Byte NOSORT CREATE INDEX 13

STORAGE STORAGE STORAGE l INITIAL l NEXT l MAXEXTENTS l MINEXTENTS l PCTINCREASE l INITIAL l l INITIAL 5 OS K M KB MB ALTER TABLE storage INITIAL 5 5 14

NEXT INITIAL 10% 5 OS INITIAL K M KB MB INITIAL NEXT ALTER TABLESPACE storage NEXT 5 5 MAXEXTENTS UNLIMITED OS 1 OS UNLIMITED 2048 121 4096 249 8192 505 Oracle7.3 UNLIMITED UNLIMITED 2G Oracle MAXEXTENTS NEXT ALTER TABLE EXAMPLE STORAGE(MAXEXTENTS 110, NEXT 5M); MINEXTENTS 1 1 OS PCTINCREASE 0 50 0 OS 3 % 0 15

872448 * 1.1 959693 (Byte) 1 (MB) CREATE TABLE example( name CHAR(15), today DATE, id NUMBER(10) )STORAGE( INITIAL 1M, NEXT 100K, MAXEXTENTS UNLIMITED, MINEXTENTS 1, PCTINCREASE 0 ); INITIAL SQL*Loader INITIAL INITIAL %sqlldr DATA=example1.dat DIRECT=true PARALELL=TRUE FILE=/dev/D1 %sqlldr DATA=example2.dat DIRECT=true PARALELL=TRUE FILE=/dev/D2... %sqlldr DATA=example10.dat DIRECT=true PARALELL=TRUE FILE=/dev/D10 CREATE TABLE example( name CHAR(15), today DATE, id NUMBER(10) )STORAGE( INITIAL 64K, NEXT 100MB, MAXEXTENTS UNLIMITED, MINEXTENTS 1, PCTINCREASE 0 )PARALELL (DEGREE 10); 16

VARCHAR2 VARCHAR2(100) ABC 100 3 VARCHAR2 VARCHAR2 NUMBER VARCHAR2 NULL NULL NULL NULLTEST CHAR SQL NULL 17

byte NULL byte NULL SQL NULL NULL byte NULL SQL 18

byte NULL NULL byte NULL NULL OPTIMAL Oracle DELETE DROP TRUNCATE Oracle Oracle 900K 800K 1M 2 1.7M 19

Oracle I/O SQL> alter table example allocate extent 2 (size 500k datafile 'C: ORAWIN95 DATABASE example02.ora'); 500K 600K 1M IMPORT/EXPORT 20

21