แชร์ผ่าน


ตารางในคลังข้อมูล Fabric

นําไปใช้กับ:✅ Warehouse ใน Microsoft Fabric

บทความนี้ให้รายละเอียดแนวคิดหลักสําหรับการออกแบบตารางใน Microsoft Fabric

ในตาราง ข้อมูลถูกจัดระเบียบอย่างมีตรรกะในรูปแบบแถวและคอลัมน์ แต่ละแถวแสดงระเบียนที่ไม่ซ้ํากัน และแต่ละคอลัมน์แสดงเขตข้อมูลในระเบียน

  • ในคลังสินค้า ตารางเป็นวัตถุฐานข้อมูลที่ประกอบด้วยข้อมูลทรานแซคชันทั้งหมด

กําหนดประเภทตาราง

สคีมาแบบดาวจัดระเบียบข้อมูลลงในตารางข้อเท็จจริงและตารางมิติ บางตารางใช้สําหรับการรวมหรือจัดเตรียมข้อมูลก่อนที่จะย้ายไปยังตารางข้อเท็จจริงหรือมิติ เมื่อคุณออกแบบตาราง ตัดสินใจว่าข้อมูลตารางเป็นของตารางข้อเท็จจริง มิติ หรือตารางการรวม การตัดสินใจนี้จะแจ้งโครงสร้างตารางที่เหมาะสม

  • ตาราง ข้อเท็จจริงประกอบด้วยข้อมูลเชิงปริมาณที่สร้างขึ้นโดยทั่วไปในระบบทรานแซคชัน และโหลดลงในคลังข้อมูล ตัวอย่างเช่น ธุรกิจค้าปลีกสร้างธุรกรรมการขายทุกวัน จากนั้นโหลดข้อมูลลงในตารางข้อเท็จจริงของคลังข้อมูลสําหรับการวิเคราะห์

  • ตาราง มิติประกอบด้วยข้อมูลแอตทริบิวต์ที่อาจเปลี่ยนแปลง แต่โดยปกติแล้วจะมีการเปลี่ยนแปลงไม่บ่อยนัก ตัวอย่างเช่น ชื่อและที่อยู่ของลูกค้าจะถูกจัดเก็บในตารางมิติ และอัพเดตเฉพาะเมื่อโพรไฟล์ของลูกค้ามีการเปลี่ยนแปลงเท่านั้น เพื่อลดขนาดของตารางข้อเท็จจริงขนาดใหญ่ ชื่อและที่อยู่ของลูกค้าไม่จําเป็นต้องอยู่ในทุกแถวของตารางข้อเท็จจริง แต่ตารางข้อเท็จจริงและตารางมิติสามารถแชร์ ID ลูกค้าได้ คิวรีสามารถรวมสองตารางเพื่อเชื่อมโยงโปรไฟล์ของลูกค้าและธุรกรรม

  • ตาราง การรวมมีจุดสําหรับการรวมหรือจัดเตรียมข้อมูล ตัวอย่างเช่น คุณสามารถโหลดข้อมูลไปยังตารางการกําหนดระยะ ดําเนินการแปลงข้อมูลในการแสดงข้อมูล จากนั้นแทรกข้อมูลลงในตารางการผลิต

ตารางจัดเก็บข้อมูลใน OneLake เป็นส่วนหนึ่งของ Warehouse ตารางและข้อมูลยังคงอยู่ไม่ว่าจะเป็นเซสชันที่เปิดอยู่หรือไม่

ตารางในคลังสินค้า

เมื่อต้องการแสดงการจัดระเบียบของตาราง คุณสามารถใช้ factdim, หรือ int เป็นคํานําหน้ากับชื่อตารางได้ ตารางต่อไปนี้แสดงบางส่วนของ Schema และชื่อตารางสําหรับคลังข้อมูลตัวอย่าง WideWorldImportersDW

ชื่อตารางต้นทาง WideWorldImportersDW ชนิดของตาราง ชื่อตารางคลังข้อมูล
เมือง มิติ wwi.DimCity
ใบสั่ง ข้อเท็จจริง wwi.FactOrder
  • ชื่อตารางต้องไม่มี / หรือ\ลงท้ายด้วย.

สร้างตาราง

สําหรับคลังสินค้า คุณสามารถสร้างตารางเป็นตารางว่างใหม่ได้ คุณยังสามารถสร้างและเติมข้อมูลตารางที่มีผลลัพธ์ของคําสั่งเลือก ต่อไปนี้คือคําสั่ง T-SQL สําหรับการสร้างตาราง

คําสั่ง T-SQL คำอธิบาย
สร้างตาราง สร้างตารางเปล่าโดยการกําหนดคอลัมน์และตัวเลือกตารางทั้งหมด
สร้างตารางเป็นเลือก เติมข้อมูลตารางใหม่ด้วยผลลัพธ์ของคําสั่งที่เลือก คอลัมน์ตารางและชนิดข้อมูลจะขึ้นอยู่กับผลลัพธ์ของคําสั่งที่เลือก เมื่อต้องการนําเข้าข้อมูล คําสั่งนี้สามารถเลือกจากตารางภายนอกได้

ตัวอย่างนี้สร้างตารางที่มีสองคอลัมน์:

CREATE TABLE MyTable (col1 int, col2 int );

ชื่อ Schema

คลังสินค้าสนับสนุนการสร้างสคีมาแบบกําหนดเอง เช่นเดียวกับใน SQL Server สคีมาเป็นวิธีที่ดีในการจัดกลุ่มออบเจ็กต์เข้าด้วยกันซึ่งถูกใช้ในลักษณะที่คล้ายกัน โค้ดต่อไปนี้สร้างเค้าร่างที่ผู้ใช้กําหนดเองที่เรียกว่าwwi

  • ชื่อ Schema แยกตามตัวพิมพ์ใหญ่-เล็ก
  • ชื่อ Schema ต้องไม่ประกอบด้วย / หรือ\ลงท้ายด้วย.
CREATE SCHEMA wwi;

ชนิดข้อมูล

Microsoft Fabric สนับสนุนชนิดข้อมูล T-SQL ที่ใช้บ่อยที่สุด

การจัดเรียง

คลังสินค้าผ้าได้รับการตั้งค่าคอนฟิกตามการตั้งค่าการเปรียบเทียบของพื้นที่ทํางาน ซึ่งโดยค่าเริ่มต้นจะเป็นการเปรียบเทียบที่ Latin1_General_100_BIN2_UTF8คํานึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ (CS) เมื่อสร้าง คลังสินค้าใหม่ จะใช้การเปรียบเทียบพื้นที่ทํางาน สําหรับข้อมูลเพิ่มเติม โปรดดู การเปรียบเทียบ Data Warehouse

การเปรียบเทียบคลังสินค้าที่รองรับคือ:

  • Latin1_General_100_BIN2_UTF8 (ค่าเริ่มต้น)
  • Latin1_General_100_CI_AS_KS_WS_SC_UTF8

คุณสามารถสร้างคลังสินค้าที่มีการเปรียบเทียบที่ไม่ใช่ค่าเริ่มต้นได้โดยใช้ REST API สําหรับข้อมูลเพิ่มเติม ดูวิธีการ: สร้างคลังสินค้าที่มีการจัดเรียงแบบไม่ตรงตามตัวพิมพ์ใหญ่-เล็ก (CI)

เมื่อตั้งค่าการจัดเรียงในระหว่างการสร้างฐานข้อมูล วัตถุที่ตามมาทั้งหมด (ตาราง คอลัมน์ ฯลฯ) จะสืบทอดการจัดเรียงเริ่มต้นนี้ เมื่อสร้างคลังสินค้าแล้ว จะไม่สามารถเปลี่ยนแปลงการตั้งค่าการเปรียบเทียบได้

สถิติ

ตัวปรับให้เหมาะสมคิวรีใช้สถิติระดับคอลัมน์เมื่อสร้างแผนสําหรับการดําเนินการคิวรี การปรับปรุงประสิทธิภาพการทํางานของคิวรี สิ่งสําคัญคือต้องมีสถิติในแต่ละคอลัมน์ โดยเฉพาะอย่างยิ่งคอลัมน์ที่ใช้ในการรวมคิวรี คลังสินค้าสนับสนุนการสร้างสถิติโดยอัตโนมัติ

การอัปเดตทางสถิติจะไม่เกิดขึ้นโดยอัตโนมัติ อัปเดตสถิติหลังจากที่มีการเพิ่มหรือเปลี่ยนแปลงแถวจํานวนมาก ตัวอย่างเช่น อัปเดตสถิติหลังจากการโหลด สําหรับข้อมูลเพิ่มเติม ดูสถิติในคลังข้อมูล Fabric

คีย์หลัก คีย์นอก และคีย์ที่ไม่ซ้ํากัน

สําหรับ คลังสินค้า PRIMARY KEY และUNIQUEข้อจํากัดจะได้รับการสนับสนุนเฉพาะเมื่อใช้NONCLUSTEREDNOT ENFORCEDและทั้งสองอย่างเท่านั้น

FOREIGN KEY รองรับเฉพาะเมื่อ NOT ENFORCED ใช้งานเท่านั้น

ตาราง #temp

ตารางชั่วคราว (#temp) ที่มีขอบเขตเซสชันสามารถสร้างได้ใน Fabric Data Warehouse

ตารางเหล่านี้มีอยู่ภายในเซสชันที่สร้างขึ้นและอยู่ล่าสุดสําหรับระยะเวลาของเซสชันนั้นเท่านั้น ผู้ใช้หรือเซสชันอื่นจะมองไม่เห็นและจะถูกทิ้งจากระบบโดยอัตโนมัติเมื่อเซสชันสิ้นสุดหรือตาราง #temp จะถูกข้ามไป ตารางเหล่านี้สามารถเข้าถึงผู้ใช้ทั้งหมดได้โดยไม่จําเป็นต้องมีสิทธิ์ระดับรายการเฉพาะ

ตาราง #temp สองชนิดสามารถสร้างขึ้นตามกรณีการใช้งานเฉพาะ แบบไม่กระจายและแบบกระจายได้

  • ตาราง #temp แบบไม่กระจาย (สนับสนุน mdf) เป็นชนิดเริ่มต้น ไวยากรณ์สําหรับการสร้างและการใช้ตาราง #temp ที่ไม่มีการแจกจ่ายใน Fabric Data Warehouse นั้นคล้ายกับตารางผู้ใช้ แต่คุณจําเป็นต้องใส่คํานําหน้าชื่อตารางชั่วคราวด้วย#

     CREATE TABLE #table_name (
       Col1 data_type1,
       Col2 data_type2
     );
    
  • ตารางอุณหภูมิแบบกระจาย (สํารอง Parquet) สามารถสร้างขึ้นด้วย DISTRIBUTION=ROUND_ROBIN คําสําคัญ:

    CREATE TABLE #table_name (
    Col1 data_type1,
    Col2 data_type2
    ) WITH (DISTRIBUTION=ROUND_ROBIN);
    

ในสคริปต์data_type1ก่อนหน้า และ data_type2 เป็นตัวแทนสําหรับชนิดข้อมูลที่ได้รับการสนับสนุนใน Fabric Data Warehouse

เราขอแนะนําตาราง #temp แบบกระจายเนื่องจากสอดคล้องกับตารางผู้ใช้ปกติ มีพื้นที่เก็บข้อมูล ไม่จํากัด รองรับชนิดข้อมูล และการดําเนินการ T-SQL ไวยากรณ์สําหรับการจัดการข้อมูลและข้อกําหนดจะเหมือนกับตารางผู้ใช้ใน Fabric Data Warehouse โดยมีคํานํา # หน้าที่เพิ่มลงในชื่อตาราง

ใน Fabric Data Warehouse ตารางชั่วคราวจะไม่ได้รับผลกระทบจากคําใบ้การสืบค้น การเดินทางข้ามเวลา และส่งคืนข้อมูลล่าสุดในตารางเสมอ

จัดแนวข้อมูลต้นทางให้สอดคล้องกับคลังข้อมูล

ตารางคลังสินค้าจะถูกสร้างขึ้นโดยการโหลดข้อมูลจากแหล่งข้อมูลอื่น เพื่อให้เกิดภาระที่สําเร็จ จํานวนและชนิดข้อมูลของคอลัมน์ในข้อมูลต้นฉบับต้องสอดคล้องกับข้อกําหนดตารางในคลังสินค้า

ถ้าข้อมูลมาจากหลายที่เก็บข้อมูล คุณสามารถพอร์ตข้อมูลไปยังคลังสินค้าและจัดเก็บไว้ในตารางการรวมได้ เมื่อข้อมูลอยู่ในตารางการรวมแล้ว คุณสามารถใช้พลังของคลังสินค้าเพื่อดําเนินการแปลงข้อมูลได้ เมื่อข้อมูลได้รับการจัดเตรียมแล้ว คุณสามารถแทรกข้อมูลลงในตารางการผลิตได้

ข้อจำกัด

คลังสินค้าสนับสนุนคุณลักษณะตารางจํานวนมาก แต่ไม่ใช่ทั้งหมด คุณลักษณะตารางที่เสนอโดยฐานข้อมูลอื่น ๆ

  • ในขณะนี้ยังไม่รองรับตารางชั่วคราวส่วนกลาง

รายการต่อไปนี้แสดงคุณลักษณะบางอย่างของตารางที่ไม่ได้รับการสนับสนุนในขณะนี้

  • คอลัมน์สูงสุด 1,024 คอลัมน์ต่อตาราง

  • คอลัมน์จากการคํานวณ

  • มุมมองที่มีการจัดทําดัชนี

  • ตารางที่มีการแบ่งพาร์ติชัน

  • ลำดับ

  • คอลัมน์แบบกระจาย

  • คำพ้อง

  • ทริกเกอร์

  • ดัชนีที่ไม่ซ้ํากัน

  • ชนิดที่ผู้ใช้กําหนดเอง

  • ตารางภายนอก

  • ข้อมูลเมตาของออบเจ็กต์คลังสินค้าถูกแคชโดย Fabric Data Warehouse เพื่อให้เข้าถึงออบเจ็กต์และคําจํากัดความได้อย่างรวดเร็ว สําหรับคลังสินค้าขนาดใหญ่มากที่มีวัตถุมากกว่า 750,000 รายการ (ตัวอย่างเช่น ตาราง มุมมอง กระบวนงานที่เก็บไว้ และฟังก์ชัน) ระบบจะไม่แคชข้อมูลเมตาอีกต่อไป การดําเนินการ Schema จะสอบถามที่เก็บข้อมูลเมตาโดยตรงแทน สิ่งนี้ทําให้มั่นใจได้ถึงความเสถียรของระบบและป้องกันการอดอยากแคชในฐานข้อมูลที่มีขนาดใหญ่มาก อย่างไรก็ตาม การดําเนินการรีเฟรช Schema อาจใช้เวลานานกว่าเมื่อเทียบกับคลังสินค้าขนาดเล็กที่เปิดใช้งานการแคชข้อมูลเมตา

สำคัญ

มีข้อจํากัดของการเพิ่มข้อจํากัดตารางหรือคอลัมน์เมื่อใช้ตัวควบคุมแหล่งข้อมูลกับ Warehouse