1 / 21

出世魚に関係するファイル

出世魚に関係するファイル. ヒープ ヒープ設定ファイル プログラムファイル クラスヘッダ、クラスインプリメンテーション、 アプリケーション Makefile 出世魚 ヘッダ、ライブラリ、ワカシサーバ. gpml 実行環境. kei. ヒープ ヒープ設定ファイル プログラムファイル Makefile 出世魚. / home/db/s8/gpml. gpml ファイルの場所. ヒープ : / home/db/s8/gpml/db ヒープ設定ファイル : / home/db/s8/gpml/dbconfig

edita
Download Presentation

出世魚に関係するファイル

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 出世魚に関係するファイル • ヒープ • ヒープ設定ファイル • プログラムファイル • クラスヘッダ、クラスインプリメンテーション、アプリケーション • Makefile • 出世魚 • ヘッダ、ライブラリ、ワカシサーバ

  2. gpml 実行環境 kei ヒープ ヒープ設定ファイル プログラムファイル Makefile 出世魚 /home/db/s8/gpml

  3. gpml ファイルの場所 • ヒープ :/home/db/s8/gpml/db • ヒープ設定ファイル :/home/db/s8/gpml/dbconfig • プログラムファイル :/home/db/s8/gpml • Makefile :/home/db/s8/gpml/Makefile • 出世魚 • ヘッダ :/home/db/s8/include • ライブラリ :/home/db/s8/lib • ワカシサーバ :/home/db/s8/perver/pserver /home/db/s8/tserver/tserver

  4. プログラムファイルとMakefile インプリメンテーション (メソッド等) アプリケーション (extent生成) 出世魚プログラム (ヘッダとライブラリ) ヘッダ schema.h schema.C extent_creation.C gpml_loading.C Makefile オブジェクトファイル 実行ファイル

  5. Makefileの書き方のヒント classプログラムを追加したいとき CLIBS=の行に追加 testプログラムやアプリケーションを追加したいとき  PROGS=の行に追加 # CLIBS: C++ class program CLIBS=schema.C # SRCS: C or C++ program # *.c: c program, *.cc, *.C: c++ program SRCS= # INTERFACE: interface of 'SRCS' programs HDRS= # test programs and applications # *.c: c program, *.cc, *.C: c++ program PROGS=extent_creation.C gpml_loading.C

  6. Makefile • PROGSmain() を含む *.c, *.cc, *.C ファイル • CLIBSクラス定義を含む *.c, *.cc, *.C ファイル • SRCS それ以外の *.c, *.cc, *.C ファイルで、PROGS のコンパイル/リンクに必要ファイル • HDRSヘッダファイルのうち、CLIBS, SRCS で書かれたファイル名と basename が一致しないもの

  7. C++プログラムのコンパイルの方法 gpmlディレクトリをコピーして作業するとき 例:/home/db/s8/gpml2を作ってgpmlの内容をコピーした時 % make clean % make depend classプログラムを追加、変更した場合 (mainの無いプログラムファイル) % make libs 実行ファイルを作成する場合 (mainの有るプログラムファイル) 例:extent_creation.C % make extent_creation

  8. gpml.ht gpml.nt gpml.tt gpml.lot gpml.vgh0 gpml.pgh1 gpml.pgh2 genheap (ヒープ生成プログラム) ワカシサーバ  通信  ヒープ生成 ファイル 読み込み ヒープ設定ファイル /home/db/s8/gpml/db/

  9. 作業手順 keiへログイン 作業ディレクトリに移動 サーバ(再)起動 ヒープ生成 プログラムコンパイル 作り直したい Yes No サーバ再起動 実行

  10. ワカシサーバの起動と停止 • tserver、pserverの起動 それぞれ端末を開いて % /home/db/s8/tserver/tserver % /home/db/s8/pserver/pserver • tserver、pserverの停止 それぞれ起動した端末で Ctrl-c

  11. どの時にサーバを動かす必要があるか ×プログラムのコンパイル ○ヒープ生成 ○プログラム実行

  12. ヒープ生成スクリプトとパラメータ ヒープ生成スクリプト(ファイル名:genheap)の実行 サーバ起動して % setenv INADA_DBDIR /home/db/s8/gpml/db % cd /home/db/s8/gpml/db.script % ./genheap  dbconfigのファイルを読み込んでheap生成

  13. ヒープ設定ファイル ヒープ設定ファイル(ファイル名dbconfig)の主なパラメータ DBNAME データベース名 SYSTEM_HEAPS_PRIMARY プライマリサイト名 user heap information id ヒープ番号 size ヒープサイズ max objects ヒープに格納予定の最大オブジェクト数

  14. ヒープ設定ファイルの詳細(1/2) • WHOMEベースとなるディレクトリ • DBNAMEデータベース名 • INADA_DBDIRヒープ格納ディレクトリヒープは分散可能(USER_HEAPでサイト名を指定)だが、ディレクトリは同じになる • SYSTEM_HEAP_PRIMARY4つのシステムヒープファイル(HT, NT, TT, LOT)を格納すべきサイト名

  15. ヒープ設定ファイルの詳細(2/2) • NUM_NT_ENTRYName Table のエントリ数 • NUM_TT_ENTRYType Table のエントリ数 • NUM_LOT_ENTRYLarge Object の最大数 • USER_HEAP 1ヒープごとに1行   id :  ヒープ番号,0から順に付けること   p/v: p はpersistent, v はvolatile   site: 当該ヒープを置くサイト名   size: ヒープサイズ   max object: ヒープに格納予定の最大オブジェクト数

  16. ヒープ設定ファイル記述例(1/2) # configuration file for database # ShusseUo Directory (search for dbuty, hputy in ShusseUo) WHOME /home/db/s8 # database name DBNAME gpml # database file directory INADA_DBDIR /home/db/s8/gpml/db

  17. ヒープ設定ファイル記述例(2/2) # system heap information # primary site name SYSTEM_HEAPS_PRIMARY kei # number of Name Table entries NUM_NT_ENTRY 1000 # number of Type Table entries NUM_TT_ENTRY 1000 # number of Large Object Table entries NUM_LOT_ENTRY 30 # user heap information # id p/v site size max objects USER_HEAP 0 v kei 60000 58000 USER_HEAP 1 p kei 32000 100000 USER_HEAP 2 p kei 4400 2000 # EOF

  18. 作業手順(1/2) ・keiにログイン % ssh kei ・作業ディレクトリに移動 % cd /home/db/s8/gpml ・サーバ(再)起動 % kterm&; kterm& それぞれの端末で % /home/db/s8/pserver/pserver % /home/db/s8/tserver/tserver ・ヒープ作成 % cd db.script % setenv INADA_DBDIR /home/db/s8/gpml/db % ./genheap

  19. 手順(2/2) ・プログラムコンパイル(プログラム変更した場合に限る) % cd .. % make libs % make extent_creation ・サーバ再起動 サーバが起動している端末で Ctrl-c % /home/db/s8/pserver/pserver % /home/db/s8/tserver/tserver ・実行 % ./extent_creation

  20. OQLコンパイラ実行手順(1/2) ・keiにログイン % ssh kei → /home/db/utoku/s8/gpml/db.script/dbconfig の「SYSTEM_HEAP_PRIMARY」の行に記述されたサイト ・作業ディレクトリに移動 % cd /home/db/utoku/s8/OQL/gpml-oql ・設定 % setenv INADA_DBDIR /home/db/utoku/s8/gpml/db % setenv LD_LIBRARY_PATH /home/db/utoku/s8/lib % set path = (/home/db/s8/metadata $path) ・サーバ(再)起動 % kterm&; kterm& それぞれの端末で % /home/db/utoku/s8/pserver/pserver % /home/db/utoku/s8/tserver/tserver

  21. OQLコンパイラ実行手順(2/2) ・ヒープ作成とスキーマ情報格納 % rm –f consttable.dat % ./dbinit   % (データベース名を聞いてくるので) gpml と入力 これは,ヒープ生成に続いて,ODLプリプロセッサを使って,スキーマ情報をスキーマレポジトリに格納するまでの一連の動作を行うシェルスクリプト ・OQLコンパイラ実行 % ./oql <number> /home/db/utoku/s8/OQL/compiler/OQLmain ***.C を実行

More Related