Γρήγορη εκκίνηση: Υποβολή ερωτημάτων και κατανάλωση δεδομένων OneLake στο Microsoft Fabric

Σε αυτήν τη γρήγορη εκκίνηση, χρησιμοποιείτε τρεις μηχανισμούς Fabric για να αλληλεπιδράσετε με τον ίδιο πίνακα lakehouse. Πρώτα, μπορείτε να υποβάλετε ερώτημα στον πίνακα χρησιμοποιώντας το τελικό σημείο ανάλυσης SQL. Στη συνέχεια, δημιουργείτε μια αναφορά Power BI σε λειτουργία Direct Lake στον ίδιο πίνακα. Τέλος, διαβάζετε τον ίδιο πίνακα από ένα σημειωματάριο Spark. Μαζί, αυτά τα βήματα δείχνουν το βασικό μοτίβο OneLake: ένα αντίγραφο δεδομένων, πολλές μηχανές.

Το OneLake αποθηκεύει δεδομένα σε μορφή πίνακα σε ανοιχτή μορφή Delta Parquet πάνω από το Azure Data Lake Storage (ADLS) Gen2. Αυτή η κοινόχρηστη βάση επιτρέπει σε διαφορετικούς μηχανισμούς Fabric να λειτουργούν με τα ίδια δεδομένα χωρίς να χρειάζεται να τα μετακινήσετε ή να τα διαμορφώσετε εκ νέου για κάθε εμπειρία. Τα εργαλεία και οι υπηρεσίες που υποστηρίζουν το ADLS Gen2, όπως το Azure Databricks, το Azure Synapse Analytics και προσαρμοσμένες εφαρμογές, μπορούν επίσης να προσεγγίσουν τα ίδια δεδομένα εκτός του Fabric.

Προαπαιτούμενα

Υποβολή ερωτήματος στον πίνακα με χρήση του τελικού σημείου ανάλυσης SQL

Κάθε lakehouse λαμβάνει αυτόματα ένα τελικό σημείο ανάλυσης SQL. Το τελικό σημείο διαβάζεται απευθείας από τους πίνακες Delta στο OneLake, ώστε να μπορείτε να εκτελέσετε ερωτήματα T-SQL σε σχέση με τα δεδομένα της λίμνης σας χωρίς να τα αντιγράψετε σε ξεχωριστό χώρο αποθήκευσης SQL.

  1. Στην πύλη Fabric, ανοίξτε τον χώρο εργασίας που περιέχει το lakehouse σας και επιλέξτε το lakehouse.

  2. Στην επάνω δεξιά γωνία του lakehouse, επιλέξτε Ανάλυση δεδομένων με>τελικό σημείο ανάλυσης SQL από την αναπτυσσόμενη λίστα για να μεταβείτε στο τελικό σημείο ανάλυσης SQL του ίδιου στοιχείου.

    Ένα στιγμιότυπο οθόνης της πύλης Fabric που δείχνει τη μετάβαση στο τελικό σημείο ανάλυσης SQL.

  3. Στο μενού τελικού σημείου ανάλυσης SQL, επιλέξτε Νέο ερώτημα SQL.

  4. Στο πρόγραμμα επεξεργασίας ερωτημάτων, εκτελέστε το ακόλουθο ερώτημα στον dim_products πίνακα:

    Αυτό το ερώτημα ομαδοποιείται ανά κατηγορία και υποκατηγορία για να εμφανίσει τον αριθμό των προϊόντων και τη μέση τιμή.

    SELECT
       category,
       subcategory,
       COUNT(*) AS products,
       ROUND(AVG(standard_price), 2) AS avg_price
    FROM (
       SELECT
          product_id,
          category,
          subcategory,
          standard_price,
          ROW_NUMBER() OVER (
             PARTITION BY product_id
             ORDER BY from_date DESC
          ) AS rn
       FROM dbo.dim_products
    ) latest
    WHERE rn = 1
    GROUP BY category, subcategory
    ORDER BY avg_price DESC;
    
  5. Εξετάστε τα αποτελέσματα στο τμήμα παραθύρου εξόδου ερωτήματος.

    Ένα στιγμιότυπο οθόνης της πύλης Fabric που εμφανίζει την έξοδο ενός ερωτήματος SQL.

Υποβάλατε ερώτημα στον πίνακα χωρίς να τον μετακινήσετε ή να τον αντιγράψετε. Το τελικό σημείο ανάλυσης SQL διαβάζει τα ίδια αρχεία Delta στο OneLake που χρησιμοποιεί το lakehouse.

Δημιουργία αναφοράς Power BI σε λειτουργία Direct Lake

Το Direct Lake είναι μια λειτουργία αποθήκευσης Power BI που διαβάζει πίνακες Delta από το OneLake, επομένως ένα μοντέλο σημασιολογίας μπορεί να εξυπηρετεί αναφορές χωρίς εισαγωγή ή αναπαραγωγή των δεδομένων. Το Direct Lake έχει δύο λειτουργίες που διαβάζουν δεδομένα από το OneLake: Direct Lake στο OneLake και Direct Lake σε SQL. Διαφέρουν ως προς τον τρόπο με τον οποίο το σημασιολογικό μοντέλο ανακαλύπτει πίνακες και επιβάλλει δικαιώματα. Επειδή αυτή η γρήγορη εκκίνηση ξεκινά από το τελικό σημείο ανάλυσης SQL, η ροή δημιουργεί ένα σημασιολογικό μοντέλο Direct Lake on SQL .

Σε αυτήν την ενότητα, δημιουργείτε ένα μοντέλο σημασιολογίας και μια απλή αναφορά στον ίδιο dim_products πίνακα.

Η προβολή αναφοράς εμφανίζει τη μέση τιμή προϊόντος κατά category, με κάθε γραμμή διαιρεμένη κατά subcategory.

  1. Από το μενού τελικού σημείου ανάλυσης SQL, επιλέξτε Νέο σημασιολογικό μοντέλο.

    Ένα στιγμιότυπο οθόνης της πύλης Fabric που εμφανίζει τη δημιουργία ενός μοντέλου σημασιολογίας από το τελικό σημείο ανάλυσης SQL.

  2. Εισαγάγετε ένα όνομα για το μοντέλο σημασιολογίας, όπως dim_products_model. Επιλέξτε τον dim_products πίνακα και, στη συνέχεια, επιλέξτε Επιβεβαίωση.

  3. Από το μενού μοντέλου σημασιολογίας, επιλέξτε Νέα αναφορά.

    Ένα στιγμιότυπο οθόνης της πύλης Fabric που εμφανίζει τη δημιουργία μιας αναφοράς από το μοντέλο σημασιολογίας.

  4. Στην εμπειρία σύνταξης αναφορών, αναπτύξτε τον dim_products πίνακα στο τμήμα παραθύρου Δεδομένα .

  5. Στο τμήμα παραθύρου Απεικονίσεις , επιλέξτε Γράφημα σωρευμένων στηλών.

    Ένα στιγμιότυπο οθόνης της πύλης Fabric που εμφανίζει την επιλογή της απεικόνισης γραφήματος σωρευμένων στηλών.

  6. Σύρετε category στον άξονα Χ.

  7. Σύρετε standard_price στον άξονα Υ και, στη συνέχεια, ορίστε τη συνάθροιση σε Μέσος όρος.

  8. Σύρετε subcategory στο Υπόμνημα για να χωρίσετε κάθε κατηγορία σε υποκατηγορίες.

    Ένα στιγμιότυπο οθόνης της πύλης Fabric που εμφανίζει τα αποτελέσματα των βημάτων δημιουργίας αναφορών.

  9. Στην κορδέλα, επιλέξτε Αποθήκευση αρχείου> και αποθηκεύστε την αναφορά στον χώρο εργασίας σας.

Η αναφορά διαβάζεται από τον ίδιο πίνακα Delta στο OneLake στον οποίο μόλις υποβάλατε ερώτημα με την T-SQL. Δεν δημιουργήσατε ένα δεύτερο αντίγραφο των δεδομένων για την τροφοδοσία της αναφοράς.

Ανάγνωση του ίδιου πίνακα από ένα σημειωματάριο Spark

Οι φορητοί υπολογιστές Fabric σάς δίνουν μια τρίτη μηχανή πάνω από τα ίδια δεδομένα. Το Spark διαβάζει τον πίνακα Delta απευθείας από το dim_products OneLake, χωρίς να περάσει από το τελικό σημείο ανάλυσης SQL ή το μοντέλο σημασιολογίας. Αυτό το βήμα δείχνει ότι μια μηχανή με εντελώς διαφορετική στοίβα ερωτημάτων λειτουργεί από τα ίδια υποκείμενα αρχεία.

  1. Επιστρέψτε στο lakehouse που περιέχει dim_products.

  2. Στο μενού lakehouse, επιλέξτε Ανάλυση δεδομένων με> τοΣημειωματάριο>Νέο σημειωματάριο. Το σημειωματάριο ανοίγει με το lakehouse σας ήδη συνδεδεμένο ως το προεπιλεγμένο lakehouse.

  3. Στο πρώτο κελί κώδικα, επικολλήστε τον ακόλουθο κώδικα PySpark:

    Αυτός ο κωδικός χρησιμοποιείται from_date ως διάσταση χρόνου και συνοψίζει τον αριθμό προϊόντων και τη μέση τιμή ανά περίοδο και κατηγορία.

    from pyspark.sql import functions as F
    
    df = spark.read.table("dim_products")
    
    summary = (
       df.groupBy("from_date", "category")
       .agg(
          F.count("*").alias("products"),
          F.round(F.avg("standard_price"), 2).alias("avg_price"),
       )
       .orderBy(F.col("from_date"), F.col("avg_price").desc())
    )
    
    display(summary)
    
  4. Επιλέξτε Εκτέλεση κελιού (ή πατήστε Shift+Enter) για να εκτελέσετε το κελί. Το αποτέλεσμα δείχνει πώς οι μέσες τιμές διαφέρουν ανά κατηγορία μεταξύ των ημερομηνιών έναρξης ισχύος.

    Ένα στιγμιότυπο οθόνης της πύλης Fabric που εμφανίζει τα αποτελέσματα του κώδικα σημειωματαρίου.

Το Spark διαβάζει απευθείας τα αρχεία Delta στο OneLake. Δεν αντιγράφονται δεδομένα σε ένα χώρο αποθήκευσης ειδικά για το Spark και ο πίνακας στον οποίο υποβάλατε ερώτημα είναι ο ίδιος που υποστηρίζει το μοντέλο σημασιολογίας σας. Τώρα έχετε ένα αντίγραφο δεδομένων στο OneLake που χρησιμοποιούν τρεις μηχανές—το τελικό σημείο ανάλυσης SQL, το Power BI Direct Lake και το Spark—μέσω ανοιχτού χώρου αποθήκευσης και μιας μορφής ανοιχτού πίνακα, χωρίς να μετακινούν ή να διαμορφώνουν εκ νέου τα δεδομένα.

Εκκαθάριση των πόρων

Εάν δεν σκοπεύετε να συνεχίσετε να χρησιμοποιείτε το μοντέλο σημασιολογίας, την αναφορά και το σημειωματάριο, διαγράψτε τα από τον χώρο εργασίας σας:

  1. Στον χώρο εργασίας σας, τοποθετήστε τον δείκτη του ποντικιού επάνω από το μοντέλο σημασιολογίας που δημιουργήσατε και επιλέξτε το μενού περισσότερες επιλογές (...) και, στη συνέχεια, επιλέξτε Διαγραφή.
  2. Επαναλάβετε για την αναφορά και το σημειωματάριο στον χώρο εργασίας σας.

Η διαγραφή της αναφοράς, του μοντέλου σημασιολογίας ή του σημειωματαρίου δεν επηρεάζει το υποκείμενο lakehouse και dim_products τον πίνακα.