0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Oracle Analytics Cloud Classic:接続プールのオンのとき、オフのときの動きを見てみる。

Posted at

はじめに

Oracle Analytics Cloud Classic:OACで、メタデータ・リポジトリまたはセマンティック・モデルを利用する場合、物理レイヤーで接続プールを利用し、データベースへアクセスします。
接続プールにはBI Serverとデータベース間の接続設定を記述します。どのサーバーのどのデータベースに何のDBユーザーでアクセスするかや、接続プールの最大数、接続プーリングのオン/オフ、オン時のタイムアウトなどです。
接続プールで、オン、オフにしたときの動きについて見てみました。オン、オフとは、「接続プーリングの有効化」のチェック有/無です。
image.png

前提

本記事では、動作確認の便宜上、Oracle Analytics Serverの環境を利用しています。
利用したバージョン:Oracle Analytics Server ver6.4

DB処理の時間を調整するために処理時間をコントロールするdbms_session.sleepを利用した関数を用意します。データベースアクションや、SQLDeveloper、sqlplusを用いscottユーザーで以下、DBの関数を作成します。

create or replace function f_sessleep(v_time in number) return varchar2 
as
  p_starttime varchar2(20);
  p_endtime varchar2(20);
  p_sid number(10);
begin
  select  sys_context ('USERENV','SID') into p_sid FROM dual;
  select  to_char(sysdate,'HH24:MI:SS') into p_starttime FROM dual;
  dbms_session.sleep(v_time);
  select  to_char(sysdate,'HH24:MI:SS') into p_endtime FROM dual;
  return('SID:'||to_char(p_sid)||' = Start:'||p_starttime||' - End:'||p_endtime);
exception
  when others then
    return sqlerrm;
end;
/

メタデータ・リポジトリの構築、Answersの分析の作成

物理レイヤーで、以下、表タイプの"Select"の物理テーブルを作成し、論理レイヤー、プレゼンテーションレイヤーを作成しています。
作成したデータベースのdbms_session.sleepを利用する関数を含む、Select文を元にした物理テーブルを作成しています。"キャッシュ可能"はチェックを外し、キャッシュを利用しない設定です。
image.png

接続プールの設定です。最大接続数は2にしています。タイムアウトは3分にしています。
image.png

Answersの分析 実行時の動き オンのとき

Answersの分析実行中、DBセッションが作成されます。Statusはactiveです。
{5DB2ECAB-E045-4E79-BEA6-90E21F38D16E}.tmp.png

実行終了です。
image.png

実行後もDBセッションはあります。Statusはinactiveです。
{5DB2ECAB-E045-4E79-BEA6-90E21F38D16E}.tmp.png

タイムアウト時間経過後、セッションはCLOSEされます。
image.png

Answersの分析 実行時の動き オフのとき

接続プーリングの有効化のチェックを外して、オフのときの動きを見てみます。
また、最大接続数を超えて、処理がリクエストされたときの動きも見てみます。
{5DB2ECAB-E045-4E79-BEA6-90E21F38D16E}.tmp.png

Answersの分析実行中、DBセッションが作成されます。Statusはactiveです。
{5DB2ECAB-E045-4E79-BEA6-90E21F38D16E}.tmp.png

実行終了です。
image.png

実行後、DBセッションはCLOSEされています。
image.png

次に、DBリクエストが最大接続数を超えた場合について見てみます。
Answersの分析を同時に3つ実行します。#1(120秒実行)、#2(60秒実行)、#3(30秒実行)
image.png

DBセッションは、2つです。
{5DB2ECAB-E045-4E79-BEA6-90E21F38D16E}.tmp.png

実行された時間、セッションID(SID)は、それぞれ以下でした。#2が終了してから、#3が開始しています。
#1 SID= 53 Start 19:05:50 - End 19:07:50
#2 SID=267 Start 19:06:01 - End 19:07:01
#3 SID= 43 Start 19:07:01 - End 19:07:31
image.png

最大接続数はオフにした際も有効でした。

以上

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?