डेटा वॉल्ट

Snowflake में डेटा मॉडलिंग परिचय

Nuno Rocha

Director of Engineering

डेटा वॉल्ट मॉडल का परिचय

  • डेटा वॉल्ट मॉडल: ऐतिहासिक डेटा ट्रैकिंग पर केंद्रित मॉडलिंग तकनीक, जिसमें hubs, links, और satellites होते हैं.

डेटा वॉल्ट मॉडल

Snowflake में डेटा मॉडलिंग परिचय

डेटा वॉल्ट के घटक

  • Hubs: एकल बिज़नेस की से विशिष्ट बिज़नेस कॉन्सेप्ट दिखाते हैं.

डेटा वॉल्ट मॉडल: hubs

Snowflake में डेटा मॉडलिंग परिचय

डेटा वॉल्ट के घटक (1)

  • Links: hubs के बीच संबंध और इंटरैक्शन कैप्चर करते हैं.

डेटा वॉल्ट मॉडल: Links

Snowflake में डेटा मॉडलिंग परिचय

डेटा वॉल्ट के घटक (2)

  • Satellites: hubs और links से जुड़े वर्णनात्मक व ऐतिहासिक विवरण रखते हैं.

डेटा वॉल्ट मॉडल: Satellites

Snowflake में डेटा मॉडलिंग परिचय

Hubs बनाना

कॉलेज डेटा वॉल्ट hubs

Snowflake में डेटा मॉडलिंग परिचय

Hubs बनाना (1)

  • AUTOINCREMENT: ऐसा एट्रिब्यूट जो हर नई row के लिए स्वतः यूनिक, क्रमशः बढ़ती संख्यात्मक वैल्यू बनाता है.
CREATE OR REPLACE TABLE hub_students (
    student_key NUMBER(10,0) AUTOINCREMENT PRIMARY KEY
);
Snowflake में डेटा मॉडलिंग परिचय

Hubs बनाना (2)

  • एक नया hub बनाएँ जिसमें auto-generated यूनिक न्यूमेरिकल key और hub का concept id हो:
CREATE OR REPLACE TABLE hub_students (
    student_key NUMBER(10,0) AUTOINCREMENT PRIMARY KEY,
    student_id NUMBER(10,0)
);
1 अब हम वह बिज़नेस की सूचीबद्ध करते हैं जो हर कॉन्सेप्ट की पहचान करती है; student_id हर छात्र की पहचान करेगा
Snowflake में डेटा मॉडलिंग परिचय

Hubs बनाना (3)

  • ऐतिहासिक ट्रैकिंग एट्रिब्यूट जोड़ें:
CREATE OR REPLACE TABLE hub_students (
    student_key NUMBER(10,0) AUTOINCREMENT PRIMARY KEY,
    student_id NUMBER(10,0),
    load_date TIMESTAMP,
    record_source VARCHAR(255)
);
Snowflake में डेटा मॉडलिंग परिचय

Hubs बनाना (4)

  • नया classes hub बनाएँ:
CREATE OR REPLACE TABLE hub_classes (
    class_key NUMBER(10,0)
          AUTOINCREMENT 
          PRIMARY KEY,
    class_id NUMBER(10,0),
    load_date TIMESTAMP,
    record_source VARCHAR(255)
);
  • नया schools hub बनाएँ:
CREATE OR REPLACE TABLE hub_schools (
    school_key NUMBER(10,0) 
          AUTOINCREMENT 
          PRIMARY KEY,
    school_id NUMBER(10,0),
    load_date TIMESTAMP,
    record_source VARCHAR(255)
);
Snowflake में डेटा मॉडलिंग परिचय

Links बनाना

कॉलेज डेटा वॉल्ट links

Snowflake में डेटा मॉडलिंग परिचय

Links बनाना (1)

  • auto-generated यूनिक न्यूमेरिकल key वाली link entity बनाएँ:
CREATE OR REPLACE TABLE link_enrollments (
    link_key NUMBER(10,0) AUTOINCREMENT PRIMARY KEY
);
Snowflake में डेटा मॉडलिंग परिचय

Links बनाना (2)

  • अन्य entities से संबंध जोड़ें:
CREATE OR REPLACE TABLE link_enrollments (
    link_key NUMBER(10,0) AUTOINCREMENT PRIMARY KEY,
    student_key NUMBER(10,0),
    class_key NUMBER(10,0),
    FOREIGN KEY (student_key) REFERENCES hub_students(student_key),
    FOREIGN KEY (class_key) REFERENCES hub_classes(class_key)
);
Snowflake में डेटा मॉडलिंग परिचय

Links बनाना (3)

  • ऐतिहासिक ट्रैकिंग एट्रिब्यूट जोड़ें:
CREATE OR REPLACE TABLE link_enrollments (
    link_key NUMBER(10,0) AUTOINCREMENT PRIMARY KEY,
    student_key NUMBER(10,0),
    class_key NUMBER(10,0),
    load_date TIMESTAMP,
    record_source VARCHAR(255),
    FOREIGN KEY (student_key) REFERENCES hub_students(student_key),
    FOREIGN KEY (class_key) REFERENCES hub_classes(class_key)
);
Snowflake में डेटा मॉडलिंग परिचय

Links बनाना (4)

  • नई offerings link entity बनाएँ:
CREATE OR REPLACE TABLE link_offerings (
    link_key NUMBER(10,0) AUTOINCREMENT PRIMARY KEY,
    class_key NUMBER(10,0),
    school_key NUMBER(10,0),
    load_date TIMESTAMP,
    record_source VARCHAR(255),
    FOREIGN KEY (class_key) REFERENCES hub_classes(class_key),
    FOREIGN KEY (school_key) REFERENCES hub_schools(school_key)
);
Snowflake में डेटा मॉडलिंग परिचय

Satellites बनाना

कॉलेज डेटा वॉल्ट satellites

Snowflake में डेटा मॉडलिंग परिचय

Satellites बनाना (1)

  • सभी concept attributes सहित नई satellite entity बनाएँ:
CREATE OR REPLACE TABLE sat_student (
    name VARCHAR(255),
    email VARCHAR(255)
);
Snowflake में डेटा मॉडलिंग परिचय

Satellites बनाना (2)

  • ऐतिहासिक ट्रैकिंग एट्रिब्यूट जोड़ें:
CREATE OR REPLACE TABLE sat_student (
    name VARCHAR(255),
    email VARCHAR(255),
    load_date TIMESTAMP,
    record_source VARCHAR(255)
);
Snowflake में डेटा मॉडलिंग परिचय

Satellites बनाना (3)

  • satellite को उसके संबंधित hub से जोड़ें:
CREATE OR REPLACE TABLE sat_student (
    student_key NUMBER(10,0),
    name VARCHAR(255),
    email VARCHAR(255),
    load_date TIMESTAMP,
    record_source VARCHAR(255),
    FOREIGN KEY (student_key) REFERENCES hub_students(student_key)
);
Snowflake में डेटा मॉडलिंग परिचय

Satellites बनाना (4)

  • नया class satellite बनाएँ:
CREATE OR REPLACE TABLE sat_class (
    class_key NUMBER(10,0),
    class_name VARCHAR(255),
    load_date TIMESTAMP,
    record_source VARCHAR(255),
    FOREIGN KEY (class_key) 
    REFERENCES hub_classes(class_key)
);
  • नया school satellite बनाएँ:
CREATE OR REPLACE TABLE sat_school (
    school_key NUMBER(10,0),
    school_name VARCHAR(255),
    load_date TIMESTAMP,
    record_source VARCHAR(255),
    FOREIGN KEY (school_key) 
    REFERENCES hub_schools(school_key)
);
Snowflake में डेटा मॉडलिंग परिचय

टर्मिनोलॉजी और फंक्शंस ओवरव्यू

  • डेटा वॉल्ट मॉडल: ऐतिहासिक डेटा ट्रैकिंग पर केंद्रित मॉडलिंग तकनीक, जिसमें hubs, links, और satellites होते हैं.
  • Hubs: एकल बिज़नेस की से विशिष्ट बिज़नेस कॉन्सेप्ट दिखाते हैं.
  • Links: hubs के बीच संबंध और इंटरैक्शन कैप्चर करते हैं.
  • Satellites: hubs और links से जुड़े वर्णनात्मक व ऐतिहासिक विवरण रखते हैं.
  • CREATE OR REPLACE TABLE: टेबल स्ट्रक्चर बनाने या बदलने का SQL कमांड.
  • PRIMARY KEY: किसी कॉलम को यूनिक पहचानकर्ता घोषित करने की SQL क्लॉज़.
  • AUTOINCREMENT: हर नई row के लिए स्वतः यूनिक, क्रमशः बढ़ती संख्यात्मक वैल्यू बनाने का एट्रिब्यूट.
  • FOREIGN KEY (...) REFERENCES (...): दो टेबलों के बीच लिंक बनाने की SQL क्लॉज़.
Snowflake में डेटा मॉडलिंग परिचय

फंक्शंस ओवरव्यू

CREATE OR REPLACE TABLE table_name (
      -- Create an auto generated unique value as primary key
      unique_key column_datatype AUTOINCREMENT PRIMARY KEY,
      other_business_key column_datatype,
      foreign_column column_datatype,
      other_foreign_column column_datatype,
      -- Adding relationship with other entities
      FOREIGN KEY(foreign_column) REFERENCES foreign_table(PK_from_foreign_table),
      FOREIGN KEY(other_foreign) REFERENCES foreign_table(PK_from_other_foreign)
);
Snowflake में डेटा मॉडलिंग परिचय

अभ्यास करते हैं!

Snowflake में डेटा मॉडलिंग परिचय

Preparing Video For Download...