پشتیبانی: 09131253620
ارتباط با ما
تلگرام: 09131253620

برجسته ترین ها
گروه های مقاله ها
HyperLink


بررسی انباره داده بخش بیست و هشتم تاریخ درج: ١٣٩۴/٠٩/١٠

 توجه داشته باشيد در اين بخش علاوه بر ايجاد جداول پايه قصد داريم اين جداول را نيز با اطلاعات لازم پر کنيم .لذا از روش SQL*LOADER که يک مکانيزم برای بارگذاری اطلاعات است استفاده می نماييم.بدين منظور فايلی با پسوند ctl. به صورت زير برای هر جدول پايه ايجاد می نماييم. نمونه زير برای جدول TBL_CATALOG و با عنوان TBL_CATALOG.CTL می باشد.

انباره داده
 
برای اجرای اين فايل بايد به صورت زير عمل کرد:
فايل ctl را درمسير اصلی ويندوز قرار دهيد.
به  Command Prompt  مربوط به ويندوز متصل شويد.
نمونه کد زير را برای اجرای فايل ctl  تايپ و اجرا کنيد.
انباره داده

و به همين ترتيب همين فايل ر برای دو جدول پايه ديگر ايجاد می نماييم.

انباره داده


انباره داده

انباره داده

گام پنجم: پياده سازی مدل طراحی شده در بانکهای DB1 ،DB2 ،DB3 به عنوان سايت Materialized View
از طريق شمای RepAdmin1 به بانک DB1 متصل شده و جداول Fact  طراحی شده را در اين بانک ايجاد کنيد. همين روش را برای بانکهای DB2 و DB3 با اتصال به شمای ايجاد شده ايجاد کنيد. توجه داشته باشيد در هر جدول Fact يک فيلد به عنوانDB_ID اضافه شده است. اين فيلد بسته به اينکه در کدام بانک قرار دارد، به صورت 1 برای جداول موجود در DB1 ،2 برای جداول موجود در DB2 و 3 برای جداول موجود در DB3 مقداردهی می شوند.
به منظور سرعت بخشيدن و وضوح کامل کليه script های لازم جهت ايجاد جداول Fact  در هر سايت به طور درزير ليست شده است.
انباره داده
 
---
--- 
---

SQL>CONNECT REPADMIN1/REPADMIN1@DB1

SQL>CREATE TABLE TBL_ADDSUB
 (PK_ADDSUB_ID NUMBER(10) NOT NULL
 ,FK_PERSON_ID NUMBER(10) NOT NULL
 ,ADDSUB_DATE DATE NOT NULL
 ,INSURANCE NUMBER(10) NOT NULL
 ,TAX NUMBER(5) NOT NULL
 ,MISSION NUMBER(5) NOT NULL
 ,OVERTIME NUMBER(5) NOT NULL
 ,DB_ID NUMBER(1) DEFAULT 1 NOT NULL )
/

SQL>CREATE TABLE TBL_PAYMENT_SALARY
 (PK_PAYMENT_ID NUMBER(10) NOT NULL
 ,FK_PERSON_ID NUMBER(10) NOT NULL
 ,PAYMENT_YEAR NUMBER(4) NOT NULL
 ,PAYMENT_AMOUNT NUMBER(10) NOT NULL
 ,DB_ID NUMBER(1) DEFAULT 1 NOT NULL )


SQL>CONNECT REPADMIN2/REPADMIN2@DB2

SQL>CREATE TABLE TBL_ADDSUB
 (PK_ADDSUB_ID NUMBER(10) NOT NULL
 ,FK_PERSON_ID NUMBER(10) NOT NULL
 ,ADDSUB_DATE DATE NOT NULL
 ,INSURANCE NUMBER(10) NOT NULL
 ,TAX NUMBER(5) NOT NULL
 ,MISSION NUMBER(5) NOT NULL
 ,OVERTIME NUMBER(5) NOT NULL
 ,DB_ID NUMBER(1) DEFAULT 2 NOT NULL )
/

SQL>CREATE TABLE TBL_PAYMENT_SALARY
 (PK_PAYMENT_ID NUMBER(10) NOT NULL
 ,FK_PERSON_ID NUMBER(10) NOT NULL
 ,PAYMENT_YEAR NUMBER(4) NOT NULL
 ,PAYMENT_AMOUNT NUMBER(10) NOT NULL
 ,DB_ID NUMBER(1) DEFAULT 2 NOT NULL )
/

SQL>CREATE TABLE TBL_PERSON
 (PK_PERSON_ID NUMBER(10) NOT NULL
--- 
---

SQL>CONNECT REPADMIN3/REPADMIN3@DB3

SQL>CREATE TABLE TBL_ADDSUB
 (PK_ADDSUB_ID NUMBER(10) NOT NULL
 ,FK_PERSON_ID NUMBER(10) NOT NULL
 ,ADDSUB_DATE DATE NOT NULL
 ,INSURANCE NUMBER(10) NOT NULL
 ,TAX NUMBER(5) NOT NULL
 ,MISSION NUMBER(5) NOT NULL
 ,OVERTIME NUMBER(5) NOT NULL
 ,DB_ID NUMBER(1) DEFAULT 3 NOT NULL )
/

SQL>CREATE TABLE TBL_PAYMENT_SALARY
 (PK_PAYMENT_ID NUMBER(10) NOT NULL
 ,FK_PERSON_ID NUMBER(10) NOT NULL
 ,PAYMENT_YEAR NUMBER(4) NOT NULL
 ,PAYMENT_AMOUNT NUMBER(10) NOT NULL
 ,DB_ID NUMBER(1) DEFAULT 3 NOT NULL )
/

SQL>CREATE TABLE TBL_PERSON
 (PK_PERSON_ID NUMBER(10) NOT NULL
BEGIN
FOR I IN 1..100 LOOP 
        INSERT INTO TBL_PERSON
(PK_PERSON_ID
,PERSON_CODE 
,FIRST_NAME 
,LAST_NAME 
,FATHER_NAME 
,NATIONAL_NO 
,BIRTH_DATE 
,BIRTH_PLACE 
,TEL 
,ADDRESS 
,BASE_SAL 
,FK_MARRIED_ID 
,FK_SEX_ID 
,FK_POSITION_ID 
,FK_WORK_UNIT_ID 
 
 

تگها: data warehouse   استخراج اطلاعات   انبار داده   انباره داده   پردازش اطلاعات   مدیریت داده ها   
 

HyperLink

ارسال نظر در مورد این مطلب
نام :  
آدرس ایمیل :  
متن پیام :  
کد امنیتی :  
   
   
نظری برای نمایش وجود ندارد
 
این مطلب را به اشتراک بگذارید: