PostgreSQL カンファレンス 2013 証券取引バックオフィスにおける Oracle から PostgreSQL への マイグレーション SBI ジャパンネクスト証券株式会社 イアン バーウィック

Similar documents
Postgres Plus Advanced Server 9.3パーティションテーブルの特徴と性能検証レポート

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

橡実践Oracle Objects for OLE

日本オラクル株式会社

Chapter

,, create table drop table alter table

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

n n n ( ) n Oracle 16 PostgreSQL 3 MySQL

Microsoft Word - 430_15_Developing_Stored_Procedure.doc

[Lab 2]Oracleからの移行を促進する新機能

PostgreSQL 9.4 評価検証報告 SRA OSS, Inc. 日本支社高塚遙 :55 ~ 16:30 PostgreSQL 9.4 最新情報セミナー Copyright 2014 SRA OSS, Inc. Japan All rights reserved. 1

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

PowerPoint -O80_REP.PDF

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

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

PowerPoint Presentation

PostgreSQL 9.3パーティションの効果検証

Oracle Lite Tutorial

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

Oracle Rdb: SQL Update

Oracle Rdb: PowerPoint Presentation

PGECons技術ドキュメントテンプレート Ver.3

Microsoft PowerPoint - 3-Forms-Others.ppt

KWCR3.0 instration

スライド 1

Oracle Lite Tutorial

スライド 1

~~~~~~~~~~~~~~~~~~ wait Call CPU time 1, latch: library cache 7, latch: library cache lock 4, job scheduler co

DB12.1 Beta HandsOn Seminar

PowerPoint プレゼンテーション

Windowsユーザーの為のOracle Database セキュリティ入門

10th Developer Camp - B5

Exam : J Title : Querying Microsoft SQL Server 2012 Version : DEMO 1 / 10

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

橡j_Oracle_whitepaper.PDF

Microsoft Word - tutorial3-dbreverse.docx

PowerPoint プレゼンテーション

Oracle Developer Release 6i

XML Consortium & XML Consortium 1 XML Consortium XML Consortium 2

_02_3.ppt

ストアドプロシージャ移行調査編

KeyWeb Creator 概要 What s KeyWeb Creator? 動的なホームページを作成するためのツール!! 従来の Web ページ DB を利用した Web ページ <HTML> <HEAD> <TITLE>show_book</TITLE> </HEAD> <BODY> <DI

防災マップ作成システムの開発業務基本設計書

PostgreSQL 11 新機能解説 オープンソースカンファレンス 2018 Tokyo/Fall SRA OSS, Inc. 日本支社近藤雄太 Copyright 2018 SRA OSS, Inc. Japan All rights reserved. 1

Oracle9i Reportsのチューニング

ODBC を使って MS SQL の ISE 2.1 を設定する

(Microsoft Word - IBM i \203C\203\223\203^\201[\203l\203b\203g\203Z\203~\203i\201[_XMLTABLE.doc)

_02-4.ppt

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

関係データベース

データベースの近代化:シンプルなクロスプラットフォーム、最小のダウンタイムで実現するクラウド移行

: ORDER BY

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

TopLink È... 3 TopLink...5 TopLink åø... 6 TopLink å Workbench O/R ~... 8 Workbench À ~... 8 Foundation Library å... 8 TopL

スライド 1

意外と簡単!? Oracle Database 11g -バックアップ・リカバリ編-

untitled

PowerPoint プレゼンテーション

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

Caché SQL に関するよくある質問

領域サイズの見積方法

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

Joint Content Development Proposal Tech Docs and Curriculum

Oracle Spatial

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

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

セットアップカード

( ハイブリット型データベース環境 ) プロトタイプ検証結果 第二版 有限会社ツインズ Twinz Co., Ltd 年 7 月 3 日 /15

PostgreSQL 解析ドキュメント


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

Transcription:

PostgreSQL カンファレンス 2013 証券取引バックオフィスにおける Oracle から PostgreSQL への マイグレーション SBI ジャパンネクスト証券株式会社 イアン バーウィック

PostgreSQL カンファレンス 2013 証券取引バックオフィスにおける Oracle から PostgreSQL への マイグレーション SBI ジャパンネクスト証券株式会社 イアン バーウィック

自己紹介 イギリス出身 ドイツのベルリン自由大学日本科学 ( 経済専門 ) 一年間の日本留学 PostgreSQL 歴 12 年 7.1

なぜ PostgreSQL?? 2001 年 ニッチな存在であった使いずらい DB 信頼性が非常に高かった 2013 年 便利なツールや機能を追加 注目を集めている 信頼性が変わらず高い

PostgreSQL 歴 1999 年 ~ ドイツ国内最初かつ一番大きい e- ラーニング会社 CRM 開発者 DBA 2001: Oracle から PostgreSQL へのマイグレーション 2008 年 ~ 画像処理 加工を提供する会社 2004 年の開業から PostgreSQL でオーダー管理を実施する 2013 年 ~ 私設取引システム (PTS) 2013 年 9 月からバックエンドで PostgreSQL 使用開始

SBI ジャパンネクスト証券 とは いわゆる株の 私設取引システム を提供 ( ジャパンネクスト PTS ) 2006 年設立 英語 : PTS (Proprietary Trading System) 簡単にいえば 東証のミニバージョン 一日売買代金は平均 1 千億円前後 ( 東証対比で約 5% ) 通常の省略 : JNX

JNX の成長

JNX のシステムの仕組み フロントオフィスの取引システム マッチング エンジン は NASDAQ OMX の X-stream INET を利用 バックオフィス システム 取引データなどのまとめ ( データ ウェアハウス / DWH) 自社開発のシステム 当初は Oracle 2013 年 9 月から PostgreSQL へ切り替え

PostgreSQL 導入への道 兼用項目 Oracle のコスト ハードウェアのリースも 社内オープンソース推進 バックオフィスのこれから NoSQL にするか? どの RDBMS を選ぶか? PostgreSQL は既に社内利用されている 他社の Postgres 導入経験を参考

なぜ PostgreSQL ( その 2)? オープンソース 直接なコストはなく ベンダーへの依存がない 自らのニーズに基づいてカスタマイズ可能 コミュニティの対応やサポート 機能 extensibility interoperability data platform

マイグレーションの計画

マイグレーションの課題 1) スキーマ 2) 関数 3) データ 4) アプリケーション 5) バックアップ

スキーマ パーティション USER, ROLE, SCHEMA データタイプ ビューの管理

スキーマ : パーティション Oracle の例 : PostgreSQL の例 : CREATE TABLE invoices (invoice_no NUMBER NOT NULL, invoice_date DATE NOT NULL, comments VARCHAR2(500)) PARTITION BY RANGE (invoice_date) (PARTITION invoices_q1 VALUES LESS THAN (TO_DATE('01/04/2001', 'DD/MM/YYYY')), PARTITION invoices_q2 VALUES LESS THAN (TO_DATE('01/07/2001', 'DD/MM/YYYY')), PARTITION invoices_q3 VALUES LESS THAN (TO_DATE('01/09/2001', 'DD/MM/YYYY')), PARTITION invoices_q4 VALUES LESS THAN (TO_DATE('01/01/2002', 'DD/MM/YYYY'))); CREATE TABLE invoices (invoice_no INT NOT NULL, invoice_date DATE NOT NULL, comments VARCHAR(500) ); CREATE TABLE invoices201310 (invoice_no INT NOT NULL, invoice_date DATE NOT NULL, comments VARCHAR(500) ) INHERITS (invoices); CREATE TABLE invoices201311 (invoice_no INT NOT NULL, invoice_date DATE NOT NULL, comments VARCHAR(500) ) INHERITS (invoices); CREATE TABLE invoices201312 (invoice_no INT NOT NULL, invoice_date DATE NOT NULL, comments VARCHAR(500) ) INHERITS (invoices); CREATE TABLE invoices201401 (invoice_no INT NOT NULL, invoice_date DATE NOT NULL, comments VARCHAR(500) ) INHERITS (invoices); CREATE OR REPLACE FUNCTION trg_invoice_partition() RETURNS TRIGGER LANGUAGE plpgsql AS $$ DECLARE target_table TEXT; BEGIN target_table := TO_CHAR(NEW.invoice_date, 'YYYYMM'); EXECUTE 'INSERT INTO invoices' target_table ' VALUES(($1).*)' USING NEW; RETURN NEW; END; $$; CREATE TRIGGER trg_invoices_insert BEFORE INSERT ON invoices FOR EACH ROW EXECUTE PROCEDURE trg_invoice_partition();

スキーマ : データタイプ VARCHAR2(xxx) TEXT VARCHAR(xxx) NUMERIC(x) SMALLINT/ INT / BIGINT (+CHECK?) 'OK' 'Y' 'y' '1' など BOOLEAN ROWNUM OID

スキーマ : ビューの管理 ALTER TABLE hogehoge_table ALTER COLUMN zzz TYPE bigint; ERROR: cannot alter type of a column used by a view or rule DROP VIEW hogehoge_view; ERROR: cannot drop view some_view because other objects depend on it DROP VIEW hogehoge_view CASCADE; NOTICE: drop cascades to view other_hogehoge_view ALTER TABLE hogehoge_table ALTER COLUMN zzz TYPE bigint; ALTER TABLE そしてまた 2 つのビューを再作成しなければならない もし忘れたら大変

スキーマ : 関数 PL/SQL vs PL/PgSQL パッケージがない function や procedure の区別がない PL/PgSQL 関数の中にはトランスアクションが使えない exception handling

Failover Server A DRDB Server B HP Serviceguard

切り替えの際の注意点 PL/SQL の関数 データタイプ クエリの書き換え NULL と空文字 大文字 / 小文字 サーバープロセスの管理

切り替えの過程

マイグレーションの結果

PostgreSQL で得たメリット サーバーのコスト削減 ライセンス コストをゼロに 社内システムの徹底的な更新 社内に DB 移植や Pg の専門知識を蓄積 さらにビジネスチャンスを拡大

マイグレーションツール オープンソース ora2pg Oracle の SQL やデータを PostgreSQL へ書き換えるツール orafce Oracle の標準関数などを PostgreSQL に実現する oracle_fdw 直接に PostgreSQL から Oracle をアクセスする拡大機能 Squirrel SQL PostgreSQL も Oracle も管理できる GUI ツール

ご清聴ありがとうございました http://www.japannext.co.jp/en ian.barwick@japannext.co.jp