タスク4: 初期データのロード

キャッシュ・グループをロードします。

  1. TimesTenキャッシュ管理ユーザーとして再接続します。次のようにttIsql cachegroupsコマンドを使用して、customer_ordersキャッシュ・グループの定義を表示します。

    % ttIsql "DSN=cache1;UID=cacheadmin;PwdWallet=/wallets/cacheadminwallet"
    Command> cachegroups;
    
    Cache Group CACHEADMIN.CUSTOMER_ORDERS:
    
      Cache Group Type: Read Only
      Autorefresh: Yes
      Autorefresh Mode: Incremental
      Autorefresh State: Paused
      Autorefresh Interval: 5 Minutes
      Autorefresh Status: ok
      Aging: No aging defined
    
      Root Table: SALES.CUSTOMERS
      Table Type: Read Only
    
      Child Table: SALES.ORDERS
      Table Type: Read Only
    
    1 cache group found.

    『Oracle TimesTen In-Memory Databaseリファレンス』ttIsqlを参照してください。

    前述の出力では、自動リフレッシュ操作の状態は現在、作成したすべてのキャッシュ・グループに対してPausedです。

    Autorefresh State: Paused 

    デフォルトでは、増分自動リフレッシュで定義されたすべての読取り専用キャッシュ・グループは一時停止として開始されます(デフォルトの間隔値は5分です)。

  2. 読取り専用キャッシュ・グループの最初のロードに対してLOAD CACHE GROUP文でキャッシュ・グループをロードします。LOAD CACHE GROUPはキャッシュ表を移入し(初期状態ではキャッシュ表は空)、自動リフレッシュ状態をPAUSEDからONに変更します。



    次の例では、キャッシュ表が空であるため、customer_orders読取り専用キャッシュ・グループの最初のロードに対してLOAD CACHE GROUP文を実行します。この場合、この例ではロードをより効率的にするために3つのパラレル・スレッドが指定され、ロード操作中に256行ごとにコミットが発行されます。

    LOAD CACHE GROUP customer_orders COMMIT EVERY 256 ROWS PARALLEL 3;
    2 cache instances affected.

    『Oracle TimesTen In-Memory Database SQLリファレンス』LOAD CACHE GROUPを参照してください。

  3. 次のようにttIsql cachegroupsコマンドを再度使用して、自動リフレッシュの状態がcustomer_ordersキャッシュ・グループに対してOnになったことを確認します。

    Command> cachegroups;
    
    Cache Group CACHEADMIN.CUSTOMER_ORDERS:
    
      Cache Group Type: Read Only
      Autorefresh: Yes
      Autorefresh Mode: Incremental
      Autorefresh State: On
      Autorefresh Interval: 5 Minutes
      Autorefresh Status: ok
      Aging: No aging defined
    
      Root Table: SALES.CUSTOMERS
      Table Type: Read Only
    
      Child Table: SALES.ORDERS
      Table Type: Read Only
    
    1 cache group found.
  4. sales.customersキャッシュ表の内容を問い合せます。

    Command> SELECT * FROM sales.customers;
    122, West, Jim Johnston
    663, MidWest, Pat Reed
    2 rows found.

これは自動リフレッシュを指定した静的読取り専用キャッシュ・グループであるため、Oracleデータベースのすべての変更は、デフォルトの間隔で自動的にキャッシュ・グループにリフレッシュされます。これらはTimesTenの読取り専用キャッシュ表であるため、それらに対して実行されるDML文は失敗します。