まずTERADATAでは、次のようにViewを定義します。
REPLACE VIEW
SampleView (
field1
,field2
,field3
) as
LOCKING TABLE SampleTable FOR ACCESS
select
field1
,field2
,field3
from
SampleTable;
上の赤の太字の記載は、テーブルがロックされててもデータを読むという指定です。
いわゆるダーティリードですが、DWHでは、1つのレコードを頻繁に更新することはないので、ダーティリードで特に問題になるケースは少ないと思います。
どちらかというと、ロックされるとデータが読めない方が問題があって、日中に時間のかかる更新を行っていると、その間selectが実行できなくなります。
※TERADATAのロック制御はTERADATA社のサイトに詳しく書いてあります。
大体のBIツールではselect文は自動で生成されるため、select文の頭に、locking table ・・・ for access を指定できません。そのためテーブルに対応するViewを定義し、Viewの中でlocking table ・・・ for accessを指定します。
そのViewをBIツールで定義することでロックされててもテーブルを読むことができるようになります。