7th CodeGear Developer Camp

Similar documents
InterBaseツール・ユティリティ大全

Delphi / C++Builderユーザーのためのオープンソースコンポーネントを使ったDBアクセス

Embarcadero Developer Camp

Firebirdの歴史と概要

Microsoft PowerPoint - FirebirdTools.ppt

今さら聞けない!? Oracle入門 ~前編~

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

5th CodeGear Developer Camp [A3]

10th Developer Camp - B5

今さら聞けない!? Oracle入門 ~後編~

PowerPoint Presentation

メール全文検索アプリケーション Sylph-Searcher のご紹介 SRA OSS, Inc. 日本支社技術部チーフエンジニア Sylpheed 開発者 山本博之 Copyright 2007 SRA OSS, Inc. Japan All right

1.SqlCtl クラスリファレンス SqlCtl クラスのリファレンスを以下に示します メソッドの実行中にエラーが発生した場合は標準エラー出力にメッセージを出力します (1)Connect() メソッド データベースへ connect 要求を行います boolean Connect(String

Microsoft Word - tutorial3-dbreverse.docx

Veritas System Recovery 16 Management Solution Readme

内容 Visual Studio サーバーエクスプローラで学ぶ SQL とデータベース操作... 1 サーバーエクスプローラ... 4 データ接続... 4 データベース操作のサブメニューコンテキスト... 5 データベースのプロパティ... 6 SQL Server... 6 Microsoft

n n n ( ) n Oracle 16 PostgreSQL 3 MySQL

Oracle Data Pumpのパラレル機能

ミガロ.製品 最新情報

本セミナーの目的 Firebird の利点を最も有効に利用できる開 発環境は Delphi です 理由その 1 ミドルウェアの充実 理由その 2 データベース対応機能の充実 理由その 3 国内 海外での豊富な実績の蓄積


Sharing the Development Database

Oracle SQL Developer Data Modeler

BOM for Windows Ver

Slide 1

Exam : 1z0-882 日本語 (JPN) Title : Oracle Certified Professional, MySQL 5.6 Developer Vendor : Oracle Version : DEMO 1 / 4 Get Latest & Valid 1z0-882-JP

Veritas System Recovery 16 Management Solution Readme

ADempiere (3.5)

Microsoft PowerPoint pptx

クラスタ環境でのデータベースのアップグレード

,, create table drop table alter table

Microsoft PowerPoint - 第5章補足-DB2組み込みSQL.ppt

mySQLの利用

データベース 【1:データベースシステムとは】

スライド 1

Microsoft PowerPoint - 3-Forms-Others.ppt

Microsoft Word - nvsi_050090jp_oracle10g_vlm.doc

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

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

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

VB実用Ⅲ⑩ フリーデータベースⅡ

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

改版履歴 版数 改版日付 改版内容 /03/14 新規作成 2013/03まで製品サイトで公開していた WebSAM DeploymentManager Ver6.1 SQL Server 2012 製品版のデータベース構築手順書 ( 第 1 版 ) を本 書に統合しました 2

intra-mart Accel Platform — TableMaintenance ユーザ操作ガイド   第7版   None

( 目次 ) 1. はじめに 開発環境の準備 仮想ディレクトリーの作成 ASP.NET のWeb アプリケーション開発環境準備 データベースの作成 データベースの追加 テーブルの作成

SOLIDWORKS Electrical SQL 接続の可否確認 SQL サーバーにアクセスできない場合 SQL サーバー ( のサービス ) が正常に起動しているか プロトコルが正常に動作しているか 使用するポートが開放されているか SQL ログインユーザーの情報に誤りは無いかなど その原因は多

PowerPoint プレゼンテーション

使用する前に

PowerPoint プレゼンテーション

Oracle Un お問合せ : Oracle Data Integrator 11g: データ統合設定と管理 期間 ( 標準日数 ):5 コースの概要 Oracle Data Integratorは すべてのデータ統合要件 ( 大量の高パフォーマンス バッチ ローブンの統合プロセスおよ

Oracle SQL Developerの移行機能を使用したOracle Databaseへの移行

クラスタ環境でのデータベースのアップグレード手順

DataKeeper for Windows リリースノート

セットアップカード

PostgreSQL Plus 管理者ガイド

PostgreSQL による クラスタ構成の可能性 SRA OSS, Inc. 日本支社 取締役支社長 石井達夫

プレポスト【問題】

LDAP Manager SupportList

intra-mart Accel Platform — TableMaintenance ユーザ操作ガイド   第8版  

目次 目次... 2 はじめに SQL Server 2005 製品版へのアップグレード SQL Server 2005 製品版へのデータベース (DPM インスタンス ) の構築 / 設定 データベース (DPM インスタンス ) の構築

Enterprise Cloud + 紹介資料

DBMSリポジトリへの移行マニュアル

メール設定 Outlook Express 6 の場合 (Windows 98 ~ XP) Outlook Express 6 の場合 (Windows 98 ~ XP) Windows XP に付属する Outlook Express 6 に αweb のメールアカウントを追加する方法についてご案

Access のようなデータベースはないの? 答えは あります OOo は下記の なんちゃって Access の機能を持っています テーブルの作成とデータ操作が可能 クエリでデータの抽出 関連付けが可能 入力フロントエンドになるフォームの作成が可能 宛名ラベル レポートなどの印刷機能 データソース画

インストールガイド

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

Microsoft Word - sample_adv-programming.docx

データセンターの効率的な資源活用のためのデータ収集・照会システムの設計

Si 知識情報処理

無償期間中に Windows10 に アップグレードをお考えのお客様へ 現在 御太助.net で使用している SQL Server のバージョンは Windows10 ではその動作が保証されていません そのため 御太助.net を WIndows10 で使用するにあたっては SQL Server の

セットアップカード

TALON Tips < 親子関係のある構成データを TALON で表示する > 株式会社 HOIPOI 第 1.1 版 p. 1

Transcription:

A5 InterBase テクニカルセッション InterBase 2007 新機能ランダウン 本体機能と対応ツール類の紹介 キムラデービー代表木村明治 (KIMURA, Meiji) 1 アジェンダ InterBaseとは? InterBaseの新機能 InterBase6.5~7.5 InterBase2007 InterBaseを選ぶ理由 InterBaseに対応するツール群 2

InterBase とは? それは Jim Starkey からはじまった 3 InterBase の生い立ち Jim Starkey DEC 時代 (Datatrive, JRD) Groton Database Systems 設立 (1984) 1986: InterBase 2 1988: InterBase 3 1992: InterBase 3.3, 3.2J 1994: InterBase 4.0 4

InterBase 進化とFirebirdの関係 無償 機能的にほぼ同一 InterBase 4.x Linux, FreeBSD 版 InterBase 4.x 商用版 有償 InterBase 5.x InterBase6.0 Open Source 版 InterBase 6.0 Firebird 1.0 InterBase 6.5 日本未発売 Firebird 1.5 ツールは両 DB 対応 InterBase 7.0,7.1,7.5 2006/11 にリリース Firebird 2.0 InterBase 2007 一時オープンソース化されたソースから分岐 2007/03リリース 現在はそれぞれ別の進化をとげる 各種ツール ユティリティは ほとんど両方サポート 5 Firebird/InterBase の注意点 (1) ODS( オンディスク構造体 ):DB ファイルのバージョン 10.0 :Firebird 1.0 / InterBase 6 10.1 :Firebird 1.5 / InterBase 6.5 11 :Firebird 2.0 / InterBase 7 11.1 :InterBase 7.1 11.2 :InterBase 7.5 12: InterBase 2007 10.0 以外は基本的に互換性 なし 11.xは InterBase7.5で自動的に11.2にアップグレードされる 6

Firebird/InterBase の注意点 (2) 基本的に共存は不可 実行形式ファイル名や レジストリ 利用ポート番号のバッティング InterBase 7.5 以降で提供されたマルチインスタンス機能を用いて 別のポート番号 インスタンス名にすれば 同時実行が可能 7 Jim Starkey BLOB や MGA(MVCC) の発明者 その思想の良い部分は InterBase/Firebird に残り InterBase 6.0 以降 それぞれ改良されていく 思想 (on Netfrastructure) InterBase/Firebird がディスク上の MGA を実装したが Netfrastructure はメモリ上での MG( マルチジェネレーション ) MySQL による Netfrastructure 買収により その思想はストレージエンジン Falcon で実現されつつある 8

InterBase の新機能 InterBase6.5~7.5 9 InterBase6.5( 日本未発売 ) 64 ビットのファイル I/O ファイルの上限がディスクサイズのみに制限される ROWS 句 SUD で行の制限が可能に ROWS <lower_value> [TO <upper_value>] [BY <step_value>] [PERCENT] [WITH TIES] 10

結果セットをページ割りする n+1 行目からm 行をSELECTする InterBase 6.5~/Firebird 2.0~ SELECT * FROM T1 ROWS n+1 TO m; Firebird 1.5 SELECT FIRST m SKIP n * from T1; PostgreSQLとMySQL SELECT * FROM T1 LIMIT m OFFSET n; MySQLでPostgreSQL 互換の書式をサポートしている MySQL 独自の記述方法 SELECT * FROM T1 LIMIT n, m; SELECT * FROM T1 LIMIT m; (nがゼロの場合, 可 ) 11 InterBase7.0, 7.1 7.0 BOOLEAN 型のサポート SMPのサポート システム一時テーブルによるDB 接続の監視 7.1 SAVEPOINT(SQL 1999 標準 ) のサポート SMPサポートの強化 DROP GENERATOR 12

SAVEPOINT 処理 A 処理 A 処理 A 処理 B 処理 B 処理 B 処理 C 処理 C 処理 C 13 InterBase7.5 マルチインスタンス データベースエイリアス 埋め込みデータベースユーザ認証 グローバル一時テーブル CASE, COALESCE, NULLIF SMPスケーラビリティの向上 14

コーヒーブレイク CREATE GLOBAL TEMPORARY TABLE documented in Data Definition Guide http://dn.codegear.com/article/32816 15 グローバル一時テーブル データ定義ガイド 第 6 章テーブル操作 SQL ー 92 標準のグローバル一時テーブルに対応 CREATE GLOBAL TEMPORARY TABLE 構文 Oracle の SQL-92 対応とほぼ同様 他のセッションからは参照できない 遅くともセッション終了時にデータが破棄される トランザクション終了後もデータを保持するものと トランザクション終了後にデータを削除するものの 2 種類が存在 16

CASE 式 条件付きの値を指定するために用いる 略式のCOALESCEやNULLIFもある 使い方は商用御三家 オープンソースDB 御三家共に共通 ( 文字列結合が違ったりする ) NULLをNULL 以外に置き換える SELECT num dbname from t1; NULLがdbnameに入る可能性がある場合 SELECT num coalesce(dbname, ) from t1; 17 CASE 式の例 SELECT 部署 ID, SUM(CASE WHEN 性別 = F THEN 1 ELSE 0 END) AS 女性 SUM(CASE WHEN 性別 = M THEN 1 ELSE 0 END) AS 男性 FROM 社員 GROUP BY 部署 ID 18

InterBase の新機能 InterBase2007 19 InterBase 2007 の新機能 インクリメンタルバックアップ ジャーナル機能 バッチ処理 VARCHARデータを持つBLOBの使用 キャラクタセットのサポート 20

インクリメンタル ( 増分 ) バックアップ 従来の論理的なものではなく 物理的なダンプをとる GBAK D(UPM_DATABASE) 初回フルダンプ 二回目以降は差分ダンプ 再度フルダンプを使う場合 GBAK OV(ERWRITE_DUMP) 21 フル / 増分 / 差分の違い (1) 1 2 3 4 1 1 2 1 2 3 1 2 3 4 22

フル / 増分 / 差分の違い (2) 1 2 3 4 1 2 2 3 2 3 4 23 フル / 増分 / 差分の違い (3) 1 2 3 4 1 2 3 4 24

ジャーナル機能 WALを用いたジャーナルとジャーナルアーカイブ機能 WAL(Write Ahead Log: ログ先行書込 ) DBへの変更は まずログ (Journal) に同期 (SYNC) で記録 その後にDBに書き出す これは非同期 (ASYNC) でもOK この手順で処理を行えば 障害が起きてもログ (Journal) を使ってデータベースを回復することが可能 そのため トランザクションのコミット毎にデータページをディスクに書き出す必要がなくなる 回復時点の際 データページに対してまだ行われていない変更分はログ (Journal) を使って再実行される Journal への書込は同期 (SYNC) ですが 変更部分のみをシーケンシャルに書くため 高速に書込が行える 25 ジャーナルアーカイブ ジャーナルやデータベース本体のダンプをアーカイブする 長期にわたるデータベース復旧をサポート GBAKの-Aで始まるオプション群 -A(RCHIVE_DATABASE) -ARCHIVE_J(OURNALS) -ARCHIVE_R(ECOVER) 基本手動 26

バッチ処理 複数の処理をまとめて高速化する 実装方法には通常 3つある (1) 無名プロシジャを使う (2) APIレベルで複数処理をまとめる (3) SQLレベルで複数処理をまとめる InterBase 2007は (2) で対応 INSERTやUPDATEなどの処理をまとめて高速化する SELECTは未対応 27 バッチ処理を使う場合 使わない場合 InterBase サーバー 最初のSQL 結果の送信二番目のSQL 結果の送信三番目のSQL 結果の送信 InterBase クライアント InterBase サーバー N 個の SQL N 個の結果の送信 InterBase クライアント 28

バッチ処理 isql を使う場合 複数の処理をまとめて高速化する BATCH START: (DDL/DML ステートメント ) BATCH EXECUTE; 29 バッチ処理 低レベル実装 C 言語ライブラリ gds32.dll Isc_* API 群を使ってプログラミングする 通常 Delphi/C++ Builder から使うミドルウエアは gds32.dll をラップしたもの 2 つの新しい API isc_dsl_batch_execute_immed 複数の SQL をまとめて実行する isc_dsl_batch_execute プリペアード SQL のパラメタを複数与えて実行する 30

バッチ処理 他のデータベースの場合 実装方法には通常 3 つある (1) 無名プロシジャを使う Oracle や Firebird など ストアドプロシジャを書く言語 (PL/SQL, PSQL) でプロシジャを書き 無名プロシジャとして実行する (2) API レベルで複数処理をまとめる 商用データベースなど INSERT/UPDATEのみならず SELECT 結果も複数行を一括して持ってくる (3) SQLレベルで複数処理をまとめる MySQL/PostgreSQLにあるバルク インサート表記 INSERT INTO products (product_no, name, price) VALUES (1, 'Cheese', 9.99), (2, 'Bread', 1.99), (3, 'Milk', 2.99); ただし 内部的に最適化されているかどうかは実装しだい 31 VARCHAR データを持つ BLOB の使用 テキスト型の BLOB を VARCHAR と同様に扱う Isqlで便利 Create table blob_test(b_id int, blob_cl blob sub_type 1); Commit; Insert into blob_test values(1, blob test ); 低レベル API でも VARCHAR と同様 (SQLVARYING 型 ) で扱える ただし キャラクタセットに注意 ( 変換しない ) 32

キャラクタセットのサポート UTF-8, UNICODE_BE, UNICODE_LE UTF-8 従来のUNICODE_FSSは 最大 3バイトまでのサポートで JIS2004で追加されたサロゲートペアの4バイトコードは扱えなかった UTF-8では 最大 4バイトまで扱うことができる 33 InterBase を選ぶ理由 34

InterBase2007 を選ぶ理由 小 ~ 中規模で DBAコストをかけれない 軽いフットプリント SMPで良いパフォーマンスが欲しい WALによるジャーナル機能 PITR 機能が必要 CodeGear 製品との高い親和性を持ち開発したい 35 InterBase に対応するツール群 36

パートナー CD 製品に付属のCD 内容は以下を参照のこと http://cc.codegear.com/partners/interbase2007/ind ex.html ここにリストされているものは 当然 InterBaseに対応 IBExpert DBWorkbench Etc 37 IBExpert 日本語メニューに変更可能 38

IBExpert プロシジャエディター ここをクリック 39 IBExpert ストアドプロシジャのデバッグ マウスを変数にかざすと値が見える 現在の行 ブレークポイント 40

InterBase に対応するツール群 FIBPlus IBReplicator IBSurgeon 41 FIBPlus FIBPlus(235-euro = 約 3 万 9 千円 ) http://www.devrace.com/en/fibplus/ IBXと同じFreeIB Componentsから派生 1999 年 3 月 : FIBPlus1.0をSerge Buzadzhyが発表 バージョン6.7(2007 年 6 月 ) より Delphi2007 & InterBase 2007に対応 最新版はバージョン6.8(2007 年 10 月 ) 42

レプリケーション : IBReplicator 最新版は 2.5.1(2007 年 5 月 ) http://www.ibphoenix.com/main.nfs?a=ibphoenix&s=1157243197:54 1080&page=ibp_replicator Win,Linux,Solaris 上で稼働 元々 Synectics Software 社が開発 Borlandからライセンスを購入できた IBPhoenix 社による買収の後 InterBase7.5 以降はIBPhoenix 社から購入可能になった IBPhoenixのほうで 最新の FirebirdとInterBaseに対応している マスター スレーブ毎にライセンスを購入 43 トラブルシューティング IBSurgeon のツール群 IBBackupSurgeon IBAnalyst IBFirstAid IBUndelete これらをまとめた IBSurgeon Packというパック製品もある IBTransactionMonitor 44

IBSurgeon 社によるトラブルシューティング gfix IB FirstAID IBFirstAID Ambulance 本体付属ツール 無償 それでも直らないとき 有償 直接 DB を送付無料診断見積 見積もり内容に従って依頼 修正 45 Thank you! ご静聴ありがとうございました 各種問い合わせは info@kimuradb.com まで 46