プライマリ・コンテンツに移動
Oracle® Big Data Discovery Cloud Service EQLリファレンス

E65371-04
目次へ
目次
索引へ移動
索引

前
次
機械翻訳について

Re-normalization

再正規化は、Dgraphの非正規化データ・モデルや、複数値属性を分析する場合に重要です。

サンプル・データ・セットでは、次の例に示すように、Employeesソース・レコードがTransactionsに正規化されていませんでした:

属性
DimEmployee_FullName Tsvi Michael Reiter
DimEmployee_HireDate 2005-07-01T04:00:00.000Z
DimEmployee_Title 営業担当
FactSales_RecordSpec SO49122-2
FactSales_SalesAmount 939.588

不正解

次のEQLコードは、従業員の在職を複数のトランザクションで二重計算します:
RETURN AvgTenure AS
SELECT
   AVG(CURRENT_DATE - DimEmployee_HireDate) AS AvgTenure
FROM EmployeeState
GROUP BY DimEmployee_Title

訂正

この例では、各従業員を正規化し、FROMを使用して操作します:
DEFINE Employees AS 
SELECT
   ARB(DimEmployee_HireDate) AS DimEmployee_HireDate,
   ARB(DimEmployee_Title) AS DimEmployee_Title
FROM EmployeeState
GROUP BY DimEmployee_EmployeeKey;

RETURN AvgTenure AS 
SELECT
   AVG(CURRENT_DATE - DimEmployee_HireDate) AS AvgTenure
FROM Employees 
GROUP BY DimEmployee_Title