タグ

SQLとoracleに関するicchy_hidebouのブックマーク (12)

  • ORACLE/オラクルSQLリファレンス(MERGE)

    スポンサード リンク データがあればUPDATE、なければINSERTするにはMERGE文を使用する MERGE INTO テーブル1 USING テーブル2|副問合せ ON (結合条件) WHEN MATCHED THEN update 文 WHEN NOT MATCHED THEN insert 文

  • SQLチューニングの基盤となる統計情報

    SQL*PlusのAUTOTRACE機能 AUTOTRACEはSQL*Plusの機能で、SQLの実行計画、および実行時に必要としたシステムリソース(これを実行統計と呼びます)などを簡単に確認することができます。また、SQLトレースには含まれないメモリソート、ディスクソートの発生回数なども確認できます。 AUTOTRACE機能の設定方法 AUTOTRACE機能を使用するためには、初回のみ事前準備作業が必要になります。ここでは、例としてSCOTTユーザーに対して設定を行ってみます。 1. SYSユーザーでplustrce.sqlを実行し、PLUSTRACEロールを作成する $ sqlplus /nolog SQL> CONNECT / AS SYSDBA SQL> @$ORACLE_HOME/sqlplus/admin/plustrce.sql

    SQLチューニングの基盤となる統計情報
  • 更新/挿入/削除のSQLを高速化する3つの技とは?

    更新/挿入/削除のSQLを高速化する3つの技とは?:Oracle SQLチューニング講座(12)(1/3 ページ) 連載では、Oracleデータベースのパフォーマンス・チューニングの中から、特にSQLのチューニングに注目して、実践レベルの手法を解説する。読者はOracleデータベースのアーキテクチャを理解し、運用管理の実務経験を積んでいることが望ましい。対象とするバージョンは現状で広く使われているOracle9iの機能を基とするが、Oracle 10gで有効な情報も随時紹介していく。(編集局) 連載目次 前回は、絞込み条件(WHERE条件)の有無による結合処理や、マテリアライズド・ビューなどOracleの機能を利用した結合処理のチューニング手法を説明しました。今回は、WHERE条件がないDML(INSERT、DELETE、UPDATE)処理を高速化するチューニング手法について説明します

    更新/挿入/削除のSQLを高速化する3つの技とは?
  • 更新/挿入/削除のSQLを高速化する3つの技とは?

    更新/挿入/削除のSQLを高速化する3つの技とは?:Oracle SQLチューニング講座(12)(3/3 ページ) パラレルDMLを利用する これまで説明した検索処理のチューニング・テクニックでは、パラレルクエリ機能を利用することで、膨大なレコード数を持つ表の検索処理を高速化できました。DML処理についてもパラレルDML機能を使用することで、膨大なレコードの挿入、更新、削除処理を高速化できます。 Oracle9i R2以前では、パーティション表でのみパラレルDMLを実行することができましたが、Oracle9i R2からは1パーティション内や非パーティション表(通常の表)においても、パラレルDMLが実行できるようになりました。 DMLをパラレルで処理しますので、パラレルクエリと同様に複数CPUが搭載され、CPU使用率などシステムリソースに余裕がある環境で利用することで効果が期待できます。

    更新/挿入/削除のSQLを高速化する3つの技とは?
  • SQL チューニング編3 - SQL 実行計画解析、EXPLAIN、ヒントオプション - SAK Streets

    SQL チューニング編3 - SQL 実行計画解析、EXPLAIN、ヒントオプション Oracle 固有の部分があるかもしれません。SQL-Server、MDB では注意のこと。 ■表結合解析 ・表結合では、次のように NESTED LOOPS と、それぞれのテーブルに対する走査方法を解析できる。 表の結合においては、from 句の指定でレコード数の多いものから記述する 方が有利である。 (データベース最適化、データベースチューニング) truncate table plan_table; explain plan for select 受注番号, 受注m.品番 as 品番, 受注m.受注数 as 受注数, 品番m.受注数 as 受注累積, 受注m.得意先CD as 得意先CD, 得意先名, 受注m.更新担当者 as 更新担当者, 受注m.更新日付 as 更新日付, 受注m.更新時間 as

  • 索引を作成したのにパフォーマンスが悪いケース

    連載では、Oracleデータベースのパフォーマンス・チューニングの中から、特にSQLのチューニングに注目して、実践レベルの手法を解説する。読者はOracleデータベースのアーキテクチャを理解し、運用管理の実務経験を積んでいることが望ましい。対象とするバージョンは現状で広く使われているOracle9iの機能を基とするが、Oracle 10gで有効な情報も随時紹介していく。(編集局) 連載目次 前回の「パフォーマンスを向上させるSQLの記述法」では、SQLの記述方法を統一することのメリットについて説明しました。SQLの処理ステップを理解し、記述方法を統一することがパフォーマンスへも大きく影響することが理解できたと思います。今回は、索引を使用したデータアクセス方法に絞って、索引を使用するためのSQLの記述方法や、索引を使用した検索時の注意点について説明します。 索引を使用できないケース 「索

    索引を作成したのにパフォーマンスが悪いケース
  • Oracle SQL文テクニック集

    Oracle SQL文テクニック集 ここで紹介している SQL 文は、ボトル・ネックとなっている部分の発見や、チューニングを行う際に役立つ内容となっております。 また、使い方によっては、運用や監視といった DBA の重要業務をもカバーできるものになるでしょう。

  • メールマガジン - バックナンバー

    おら! オラ! Oracle - どっぷり検証生活 メールマガジン登録/解除 このメールマガジンを購読される方、または購読を解除される方は、画面左の登録/解除フォームにメールアドレスを入力して下さい。 ※このメールマガジンはまぐまぐからの配信となります。 バックナンバー

  • チューニングが必要なSQLを洗い出す

    動的パフォーマンスビューを使用したSQLの洗い出し SQLの洗い出しのために使用する動的パフォーマンスビューは、主にV$SQL、V$SQL_TEXT、V$SQL_PLANの3つで、これらは共有SQL領域に保持されているSQLの情報を表示します。この共有SQL領域は、SQLを再利用するための情報がキャッシュされる領域となります。実行されたSQLの情報は必ずこの領域にキャッシュされますが、空き領域が不足した場合、新しいSQLのために、実行頻度が低いSQLの情報が追い出されてしまいます。そのため、この方法は、これまで実行されたすべてのSQLの情報を取得できるわけではない点に注意してください。 必要な情報は、直接SELECT文で確認することもできますし、また、一部の情報は、Oracleが標準で提供しているSTATSPACKユーティリティを使用することでも取得可能です。STATSPACK自体の説明に

    チューニングが必要なSQLを洗い出す
  • SQLチューニングの必須知識を総ざらい(前編)

    レコードへのアクセス方法 表のレコードにアクセスするためのアクセス経路をアクセス・パスと呼び、代表的なものとして全表スキャン、索引スキャン、そしてROWIDスキャンがあります。 効率的な索引が存在するにもかかわらず、「すべての表データを読み込む」などのアクセス・パスが選択されてしまった場合には、アクセスするデータ・ブロック数が増加することで、大きくパフォーマンスが劣化してしまう可能性があります。 ここでは、チューニングという観点から、全表スキャン、索引スキャン、そしてOracleで最も効率的なアクセス方法であるROWIDスキャンについて説明します。 全表スキャン 全表スキャンは、必ずHWM注2 までのすべてのデータ・ブロックにアクセスしてすべてのレコードを読み込み、指定された条件にマッチするかの判定を行います。この方法は、表へのアクセス方法の中で最も基となるものです。 注2:HWM Hi

    SQLチューニングの必須知識を総ざらい(前編)
  • @IT:Oracle管理者のためのSQLリファレンス

    Oracleライセンス「SE2」検証 CPUスレッド数制限はどんな仕組みで制御されるのか (2017/7/26) データベース管理システムの運用でトラブルが発生したらどうするか。DBサポートスペシャリストが現場目線の解決Tipsをお届けします。今回は、Oracle SE2の「CPUスレッド数制限」がどんな仕組みで行われるのかを検証します ドメイン参加後、SQL Serverが起動しなくなった (2017/7/24) 連載では、「SQL Server」で発生するトラブルを「どんな方法で」「どのように」解決していくか、正しい対処のためのノウハウを紹介します。今回は、「ドメイン参加後にSQL Serverが起動しなくなった場合の対処方法」を解説します さらに高度なSQL実行計画の取得」のために理解しておくべきこと (2017/7/21) 日オラクルのデータベーススペシャリストが「DBAがすぐ

  • SQLチューニングの必須知識を総ざらい(後編)

    連載では、Oracleデータベースのパフォーマンス・チューニングの中から、特にSQLのチューニングに注目して、実践レベルの手法を解説する。読者はOracleデータベースのアーキテクチャを理解し、運用管理の実務経験を積んでいることが望ましい。対象とするバージョンは現状で広く使われているOracle9iの機能を基とするが、Oracle 10gで有効な情報も随時紹介していく。(編集局) 連載目次 前編に引き続き、SQLチューニングを行うために必要な基礎知識として、アクセスするデータ・ブロック数に大きな影響を与える結合方法の種類と、オプティマイザの実行計画の決定に影響を与える統計情報、ヒントについて説明していきます。 結合方法の種類 正規化されたデータベースでは、必要なデータを得るために複数の表からデータを取得、ひも付ける(結合する)処理が数多く発生します。表を結合する方法にはいくつかの種類が

    SQLチューニングの必須知識を総ざらい(後編)
  • 1