Οδηγίες ανάκτησης δεδομένων για σελιδοποιημένες αναφορέςData retrieval guidance for paginated reports

Αυτό το άρθρο απευθύνεται σε εσάς ως συντάκτη αναφορών που σχεδιάζει σελιδοποιημένες αναφορές του Power BI.This article targets you as a report author designing Power BI paginated reports. Παρέχει προτάσεις που θα σας βοηθήσουν να σχεδιάσετε αποτελεσματική ανάκτηση δεδομένων.It provides recommendations to help you design effective and efficient data retrieval.

Τύποι προέλευσης δεδομένωνData source types

Οι σελιδοποιημένες αναφορές υποστηρίζουν εγγενώς τόσο σχεσιακές προελεύσεις δεδομένων, όσο και προελεύσεις δεδομένων ανάλυσης.Paginated reports natively support both relational and analytic data sources. Αυτές οι προελεύσεις κατηγοριοποιούνται περαιτέρω, είτε ως βασισμένες στο cloud, είτε ως εσωτερικής εγκατάστασης.These sources are further categorized, as either cloud-based or on-premises. Οι προελεύσεις δεδομένων εσωτερικής εγκατάστασης, είτε φιλοξενούνται στην εσωτερική εγκατάσταση, είτε σε μια εικονική μηχανή, απαιτούν μια πύλη δεδομένων ώστε να μπορεί να συνδεθεί το Power BI.On-premises data sources—whether hosted on-premises, or in a virtual machine—require a data gateway so Power BI can connect. Με τον όρο "βασισμένο στο cloud" υποδηλώνεται ότι το Power BI μπορεί να συνδεθεί απευθείας με μια σύνδεση στο Internet.Cloud-based means that Power BI can connect directly using an Internet connection.

Εάν μπορείτε να επιλέξετε τον τύπο προέλευσης δεδομένων (πιθανώς η περίπτωση σε ένα νέο έργο), προτείνουμε να χρησιμοποιήσετε προελεύσεις δεδομένων βασισμένων στο cloud.If you can choose the data source type (possibly the case in a new project), we recommend that you use cloud-based data sources. Οι σελιδοποιημένες αναφορές μπορούν να συνδεθούν με χαμηλότερο λανθάνοντα χρόνο δικτύου, ιδιαίτερα όταν οι προελεύσεις δεδομένων βρίσκονται στην ίδια περιοχή με τον μισθωτή σας Power BI.Paginated reports can connect with lower network latency, especially when the data sources reside in the same region as your Power BI tenant. Επίσης, είναι δυνατό να συνδέσετε αυτές τις προελεύσεις χρησιμοποιώντας Καθολική σύνδεση (SSO).Also, it's possible to connect to these sources by using Single Sign-On (SSO). Αυτό σημαίνει ότι η ταυτότητα του χρήστη αναφοράς μπορεί να ρέει στην προέλευση δεδομένων, επιτρέποντας την επιβολή δικαιωμάτων σε επίπεδο γραμμών ανά χρήστη.It means the report user's identity can flow to the data source, allowing per-user row-level permissions to be enforced. Προς το παρόν, δεν υποστηρίζεται SSO για προελεύσεις δεδομένων εσωτερικής εγκατάστασης (αυτό σημαίνει ότι οι Υπηρεσίες ανάλυσης του SQL Server δεν μπορούν να επιβάλουν δικαιώματα σε επίπεδο γραμμής ανά χρήστη).Currently, SSO isn't supported for on-premises data sources (meaning SQL Server Analysis Services cannot enforce per-user row-level permissions).

Σημείωση

Ενώ δεν είναι δυνατό προς το παρόν να συνδεθείτε σε βάσεις δεδομένων εσωτερικής εγκατάστασης με SSO, μπορείτε ακόμα να επιβάλετε δικαιώματα σε επίπεδο γραμμής.While it's currently not possible to connect to on-premises databases using SSO, you can still enforce row-level permissions. Πραγματοποιείται με διαβίβαση του ενσωματωμένου πεδίου UserID σε μια παράμετρο ερωτήματος συνόλου δεδομένων.It's done by passing the UserID built-in field to a dataset query parameter. Η προέλευση δεδομένων θα χρειαστεί να αποθηκεύσει τιμές Κυρίου ονόματος χρήστη (UPN) με έναν τρόπο ώστε να μπορεί να φιλτράρει σωστά τα αποτελέσματα ερωτήματος.The data source will need to store User Principal Name (UPN) values in a way that it can correctly filter query results.

Για παράδειγμα, ας υποθέσουμε ότι κάθε πωλητής αποθηκεύεται ως μια γραμμή στη στήλη Πωλητής ενός πίνακα.For example, consider that each salesperson is stored as a row in the Salesperson a table. Ο πίνακας διαθέτει στήλες για UPN και την περιοχή πωλήσεων του πωλητή.The table has columns for UPN, and also the salesperson's sales region. Κατά τον χρόνο ερωτήματος, ο πίνακας φιλτράρεται από το UPN του χρήστη αναφοράς και σχετίζεται επίσης με δεδομένα πωλήσεων με χρήση ενός εσωτερικού συνδέσμου.At query time, the table is filtered by the UPN of the report user, and it's also related to sales facts using an inner join. Με αυτόν τον τρόπο, το ερώτημα φιλτράρει αποτελεσματικά τις γραμμές δεδομένων πωλήσεων σε εκείνες της περιοχής πωλήσεων του χρήστη της αναφοράς.This way, the query effectively filters sales fact rows to those of the report user's sales region.

Προελεύσεις σχεσιακών δεδομένωνRelational data sources

Γενικά, οι προελεύσεις σχεσιακών δεδομένων είναι κατάλληλες για αναφορές λειτουργικού στυλ, όπως τιμολόγια πωλήσεων.Generally, relational data sources are well suited to operational style reports, like sales invoices. Είναι επίσης κατάλληλες για αναφορές που χρειάζεται να ανακτήσουν πολύ μεγάλα σύνολα δεδομένων (πέρα από 10.000 γραμμές).They're also suited for reports that need to retrieve very large datasets (in excess of 10,000 rows). Οι σχεσιακές προελεύσεις δεδομένων μπορούν επίσης να ορίσουν αποθηκευμένες διαδικασίες, οι οποίες μπορεί να εκτελεστούν από σύνολα δεδομένων αναφοράς.Relational data sources can also define stored procedures, which can be executed by report datasets. Οι αποθηκευμένες διαδικασίες προσφέρουν πολλά πλεονεκτήματα:Stored procedures deliver several benefits:

  • ΠαραμετροποίησηParameterization
  • Η ενθυλάκωση λογικής προγραμματισμού, που επιτρέπει πιο σύνθετη προετοιμασία δεδομένων (για παράδειγμα, προσωρινούς πίνακες, δρομείς ή συναρτήσεις με μονόμετρη τιμή που ορίζονται από τον χρήστη)Encapsulation of programming logic, allowing for more complex data preparation (for example, temporary tables, cursors, or scalar user-defined functions)
  • Βελτιωμένη ευκολία συντήρησης που επιτρέπει στην αποθηκευμένη διαδικασία να ενημερώνεται εύκολα.Improved maintainability, allowing stored procedure logic to be easily updated. Σε ορισμένες περιπτώσεις, μπορεί να πραγματοποιείται χωρίς την ανάγκη τροποποίησης και εκ νέου δημοσίευσης σελιδοποιημένων αναφορών (με την προϋπόθεση ότι τα ονόματα στηλών και οι τύποι δεδομένων παραμένουν αμετάβλητοι).In some cases, it can be done without the need to modify and republish paginated reports (providing column names and data types remain unchanged).
  • Καλύτερες επιδόσεις, καθώς τα προγράμματα εκτέλεσής τους αποθηκεύονται στο cache για επανάληψη χρήσηςBetter performance, as their execution plans are cached for reuse
  • Επανάληψη χρήσης αποθηκευμένων διαδικασιών σε πολλές αναφορέςReuse of stored procedures across multiple reports

Στο Power BI Report Builder μπορείτε να χρησιμοποιήσετε το εργαλείο σχεδίασης σχεσιακών ερωτημάτων για τη γραφική κατασκευή μιας πρότασης ερωτήματος, αλλά μόνο για προελεύσεις δεδομένων Microsoft.In Power BI Report Builder, you can use the relational query designer to graphically construct a query statement—but only for Microsoft data sources.

Προελεύσεις δεδομένων ανάλυσηςAnalytic data sources

Οι προελεύσεις δεδομένων ανάλυσης είναι κατάλληλες για λειτουργικές αναφορές και αναφορές ανάλυσης, και μπορούν να προσφέρουν γρήγορα συνοπτικά αποτελέσματα ερωτημάτων, ακόμα και για πολύ μεγάλους όγκους δεδομένων.Analytic data sources are well suited to both operational and analytic reports, and can deliver fast summarized query results even over very large data volumes. Οι μετρήσεις μοντέλων και τα KPI μπορούν να ενσωματώσουν σύνθετους επιχειρησιακούς κανόνες για την επίτευξη σύνοψης δεδομένων.Model measures and KPIs can encapsulate complex business rules to achieve summarization of data. Αυτές οι προελεύσεις δεδομένων, ωστόσο, δεν είναι κατάλληλες για αναφορές που χρειάζεται να ανακτήσουν πολύ μεγάλα σύνολα δεδομένων (πέρα από 10.000 γραμμές).These data sources, however, are not suited to reports that need to retrieve very large datasets (in excess of 10,000 rows).

Στο Power BI Report Builder, έχετε μια επιλογή δύο εργαλείων σχεδίασης ερωτημάτων: Το εργαλείο σχεδίασης ερωτημάτων DAX των Υπηρεσιών ανάλυσης και το εργαλείο σχεδίασης ερωτημάτων MDX των Υπηρεσιών ανάλυσης.In Power BI Report Builder, you have a choice of two query designers: The Analysis Services DAX query designer, and the Analysis Services MDX query designer. Αυτά τα εργαλεία σχεδίασης μπορούν να χρησιμοποιηθούν για προελεύσεις δεδομένων συνόλου δεδομένων του Power BI ή σε οποιοδήποτε μοντέλο των Υπηρεσιών ανάλυσης του SQL Server ή Υπηρεσιών ανάλυσης του Azure, σε μορφή πίνακα ή πολυδιάστατο.These designers can be used for Power BI dataset data sources, or any SQL Server Analysis Services or Azure Analysis Services model—tabular or multidimensional.

Προτείνουμε να χρησιμοποιήσετε το εργαλείο σχεδίασης ερωτημάτων DAX, με την προϋπόθεση ότι ικανοποιεί πλήρως τις ανάγκες σας για ερωτήματα.We suggest you use the DAX query designer—providing it entirely meets your query needs. Εάν το μοντέλο δεν ορίζει τις μετρήσεις που χρειάζεστε, θα χρειαστεί να αλλάξετε στη λειτουργία ερωτήματος.If the model doesn't define the measures you need, you'll need to switch to query mode. Σε αυτήν τη λειτουργία, μπορείτε να προσαρμόσετε την πρόταση ερωτήματος προσθέτοντας παραστάσεις (για την επίτευξη σύνοψης).In this mode, you can customize the query statement by adding expressions (to achieve summarization).

Το εργαλείο σχεδίασης απαιτεί από το μοντέλο σας να συμπεριλάβει μετρήσεις.The MDX query designer requires your model to include measures. Το εργαλείο σχεδίασης έχει δύο δυνατότητες που δεν υποστηρίζονται από το εργαλείο σχεδίασης ερωτημάτων DAX.The designer has two capabilities not supported by the DAX query designer. Συγκεκριμένα, σας επιτρέπει να κάνετε τα εξής:Specifically, it allows you to:

  • Να ορίσετε υπολογισμένα μέλη σε επίπεδο ερωτήματος (στο MDX).Define query-level calculated members (in MDX).
  • Να ρυθμίσετε τις παραμέτρους περιοχών δεδομένων για να αιτηθείτε συγκεντρωτικές τιμές διακομιστή σε μη λεπτομερείς ομάδες.Configure data regions to request server aggregates in non-detail groups. Εάν η αναφορά σας χρειάζεται να παρουσιάσει συνόψεις ημι-προσθετικών ή μη προσθετικών μετρήσεων (όπως υπολογισμούς χρονικής ευφυΐας ή διακριτά πλήθη), πιθανώς θα είναι πιο αποτελεσματική η χρήση συγκεντρώσεων διακομιστή, παρά η ανάκτηση γραμμών λεπτομερειών χαμηλού επιπέδου και ο υπολογισμός συνόψεων από την αναφορά.If your report needs to present summaries of semi- or non-additive measures (like time intelligence calculations, or distinct counts), it will likely be more efficient to use server aggregates than to retrieve low-level detail rows and have the report compute summarizations.

Μέγεθος αποτελέσματος ερωτήματοςQuery result size

Γενικά, αποτελεί βέλτιστη πρακτική να ανακτάτε μόνο τα δεδομένα που απαιτούνται από την αναφορά σας.In general, it's best practice to retrieve only the data required by your report. Επομένως, μην ανακτάτε στήλες ή γραμμές που δεν απαιτούνται από την αναφορά σας.So, don't retrieve columns or rows that aren't required by the report.

Για να περιορίσετε τις γραμμές, θα πρέπει να εφαρμόζετε πάντα τα πλέον περιοριστικά φίλτρα και να ορίσετε συγκεντρωτικά ερωτήματα.To limit rows, you should always apply the most restrictive filters, and define aggregate queries. Συγκεντρώστε ομάδες ερωτημάτων και συνοψίστε τα δεδομένα προέλευσης ώστε να ανακτήσετε αποτελέσματα μεγαλύτερης λεπτομέρειας.Aggregate queries group and summarize source data to retrieve higher-grain results. Για παράδειγμα, ας υποθέσουμε ότι η αναφορά σας χρειάζεται να παρουσιάσει μια σύνοψη των πωλήσεων πωλητών.For example, consider that your report needs to present a summary of salesperson sales. Αντί για την ανάκτηση όλων των γραμμών παραγγελιών πωλήσεων, δημιουργήστε ένα ερώτημα συνόλου δεδομένων που ομαδοποιεί κατά πωλητή και συνοψίζει πωλήσεις για κάθε ομάδα.Instead of retrieving all sales order rows, create a dataset query that groups by salesperson, and summarizes sales for each group.

Πεδία που βασίζονται σε παραστάσειςExpression-based fields

Είναι δυνατό να επεκτείνετε ένα σύνολο δεδομένων αναφοράς με πεδία που βασίζονται σε παραστάσεις.It's possible to extend a report dataset with fields based on expressions. Για παράδειγμα, εάν το σύνολο δεδομένων σας λαμβάνει το όνομα και το επώνυμο πελάτη, μπορεί να θέλετε ένα πεδίο που συνενώνει τα δύο πεδία προκειμένου να αποδώσει το πλήρες όνομα του πελάτη.For example, if your dataset sources customer first name and last name, you might want a field that concatenates the two fields to produce the customer full name. Για να επιτύχετε αυτόν τον υπολογισμό, έχετε δύο επιλογές.To achieve this calculation, you have two options. Μπορείτε να κάνετε τα εξής:You can:

  • Δημιουργήστε ένα πεδίο υπολογισμού, το οποίο είναι ένα πεδίο συνόλου δεδομένων που βασίζεται σε μια παράσταση.Create a calculated field, which is a dataset field based on an expression.
  • Εισάγετε μια παράσταση απευθείας στο ερώτημα συνόλου δεδομένων (με χρήση της εγγενούς γλώσσας της προέλευσης δεδομένων σας), το οποίο οδηγεί σε ένα τυπικό πεδίο συνόλου δεδομένων.Inject an expression directly into the dataset query (using the native language of your data source), which results in a regular dataset field.

Προτείνουμε τη δεύτερη επιλογή, όποτε είναι δυνατό.We recommend the latter option, whenever possible. Υπάρχουν δύο καλοί λόγοι γιατί η απευθείας εισαγωγή παραστάσεων στο ερώτημα συνόλου δεδομένων σας είναι καλύτερη:There are two good reasons why injecting expressions directly into your dataset query is better:

  • Είναι πιθανό η προέλευση δεδομένων σας να βελτιστοποιηθεί για να αξιολογεί την παράσταση πιο αποτελεσματικά από το Power BI (ιδιαίτερα στην περίπτωση σχεσιακών βάσεων δεδομένων).It's possible your data source is optimized to evaluate the expression more efficiently than Power BI (it's especially the case for relational databases).
  • Οι επιδόσεις αναφοράς είναι βελτιωμένες καθώς δεν υπάρχει ανάγκη το Power BI να υλοποιήσει πεδία υπολογισμού πριν από την απόδοση αναφοράς.Report performance is improved because there's no need for Power BI to materialize calculated fields prior to report rendering. Τα πεδία υπολογισμού μπορούν να επεκτείνουν σημαντικά τον χρόνο απόδοσης αναφοράς όταν τα σύνολα δεδομένων ανακτούν έναν μεγάλο αριθμό γραμμών.Calculated fields can noticeably extend report render time when datasets retrieve a large number of rows.

Ονόματα πεδίωνField names

Όταν δημιουργείτε ένα σύνολο δεδομένων, τα πεδία του ονομάζονται αυτόματα με βάση τις στήλες ερωτημάτων.When you create a dataset, its fields are automatically named after the query columns. Είναι δυνατό αυτά τα ονόματα να μην είναι φιλικά ή εύχρηστα.It's possible these names aren't friendly or intuitive. Είναι επίσης δυνατό τα ονόματα στηλών ερωτημάτων προέλευσης να περιέχουν χαρακτήρες που απαγορεύονται στα αναγνωριστικά αντικειμένων της Report Definition Language (RDL) (όπως διαστήματα και σύμβολα).It's also possible that source query column names contain characters prohibited in Report Definition Language (RDL) object identifiers (like spaces and symbols). Στην περίπτωση αυτή, οι απαγορευμένοι χαρακτήρες αντικαθίστανται από έναν χαρακτήρα υπογράμμισης ().In this case, the prohibited characters are replaced with an underscore character ().

Προτείνουμε να επαληθεύσετε πρώτα ότι όλα τα ονόματα πεδίων είναι φιλικά, συνοπτικά, αλλά και περιγραφικά.We recommend that you first verify that all field names are friendly, concise, yet still meaningful. Σε αντίθετη περίπτωση, προτείνουμε να τα μετονομάσετε προτού ξεκινήσετε τη διάταξη αναφοράς.If not, we suggest you rename them before you commence the report layout. Αυτό συμβαίνει γιατί τα πεδία που έχουν μετονομαστεί δεν οδηγούν σε αλλαγές στις παραστάσεις που χρησιμοποιούνται στη διάταξη αναφοράς σας.It's because renamed fields don't ripple changes through to the expressions used in your report layout. Εάν αποφασίσετε να μετονομάσετε τα πεδία αφού ξεκινήσατε τη διάταξη αναφοράς, θα χρειαστεί να βρείτε και ενημερώσετε όλες τις παραστάσεις που έχουν διακοπεί.If you do decide to rename fields after you've commenced the report layout, you'll need to find and update all broken expressions.

Φίλτρα έναντι παραμέτρωνFilter vs parameter

Είναι πιθανό τα σχέδια σελιδοποιημένων αναφορών σας να έχουν παραμέτρους αναφοράς.It's likely that your paginated report designs will have report parameters. Οι παράμετροι αναφοράς χρησιμοποιούνται συνήθως για να προτρέψουν τον χρήστη της αναφοράς σας να φιλτράρει την αναφορά.Report parameters are commonly used to prompt your report user to filter the report. Ως συντάκτης σελιδοποιημένης αναφοράς έχετε δύο τρόπους για να πετύχετε φιλτράρισμα αναφορών.As a paginated report author, you have two ways to achieve report filtering. Μπορείτε να αντιστοιχίσετε μια παράμετρο αναφοράς σε:You can map a report parameter to:

  • Ένα φίλτρο συνόλου δεδομένων, οπότε οι τιμές παραμέτρων αναφοράς χρησιμοποιούνται για το φιλτράρισμα των δεδομένων που έχουν ανακτηθεί ήδη από το σύνολο δεδομένων.A dataset filter, in which case the report parameter value(s) are used to filter the data already retrieved by the dataset.
  • Μία παράμετρο συνόλου δεδομένων, οπότε οι τιμές παραμέτρων αναφοράς εισάγονται στο εγγενές ερώτημα που αποστέλλεται στην προέλευση δεδομένων.A dataset parameter, in which case the report parameter value(s) are injected into the native query sent to the data source.

Σημείωση

Όλα τα σύνολα δεδομένων αναφοράς αποθηκεύονται στο cache σε μια βάση ανά περίοδο λειτουργίας για έως 10 λεπτά πέραν της τελευταίας χρήσης τους.All report datasets are cached on a per-session basis for up to 10 minutes beyond their last use. Ένα σύνολο δεδομένων μπορεί να χρησιμοποιηθεί εκ νέου κατά την υποβολή νέων τιμών παραμέτρων (φιλτράρισμα), την απόδοση της αναφοράς σε διαφορετική μορφή ή την αλληλεπίδραση με τη σχεδίαση της αναφοράς με κάποιον τρόπο, όπως εναλλαγή ορατότητας ή ταξινόμηση.A dataset can be re-used when submitting new parameter values (filtering), rendering the report in a different format, or interacting with the report design in some way, like toggling visibility, or sorting.

Ας εξετάσουμε τότε το παράδειγμα μιας αναφοράς πωλήσεων με μια μοναδική παράμετρο αναφοράς για το φιλτράρισμα της αναφοράς κατά ένα μοναδικό έτος.Consider, then, an example of a sales report that has a single report parameter to filter the report by a single year. Το σύνολο δεδομένων ανακτά τις πωλήσεις για όλα τα έτη.The dataset retrieves sales for all years. Το κάνει καθώς η παράμετρος αναφοράς αντιστοιχίζεται στα φίλτρα του συνόλου δεδομένων.It does so because the report parameter maps to the dataset filters. Η αναφορά εμφανίζει δεδομένα για το έτος που ζητήθηκε, το οποίο είναι ένα υποσύνολο των δεδομένων του συνόλου δεδομένων.The report displays data for the requested year, which is a subset of the dataset data. Όταν ο χρήστης αναφοράς αλλάξει την παράμετρο αναφοράς σε ένα διαφορετικό έτος και προβάλει τότε την αναφορά, το Power BI δεν χρειάζεται να ανακτήσει οποιαδήποτε δεδομένα προέλευσης.When the report user changes the report parameter to a different year—and then views the report—Power BI doesn't need to retrieve any source data. Αντί για αυτό, εφαρμόζει ένα διαφορετικό φίλτρο στο ήδη αποθηκευμένο στο cache σύνολο δεδομένων.Instead, it applies a different filter to the already-cached dataset. Όταν το σύνολο δεδομένων αποθηκευτεί στο cache, το φιλτράρισμα μπορεί να είναι πολύ γρήγορο.Once the dataset is cached, filtering can be very fast.

Εξετάστε τώρα μια διαφορετική σχεδίαση αναφοράς.Now, consider a different report design. Αυτήν τη φορά η σχεδίαση αναφοράς αντιστοιχίζει την παράμετρο αναφοράς έτους πωλήσεων σε μια παράμετρο συνόλου δεδομένων.This time the report design maps the sales year report parameter to a dataset parameter. Με αυτόν τον τρόπο, το Power BI εισάγει την τιμή έτους στο εγγενές ερώτημα και το σύνολο δεδομένων ανακτά δεδομένα μόνο για αυτό το έτος.This way, Power BI injects the year value into the native query, and the dataset retrieves data only for that year. Κάθε φορά που ο χρήστης αναφοράς αλλάζει την τιμή παραμέτρου αναφοράς έτους και προβάλλει την αναφορά, το σύνολο δεδομένων ανακτά ένα νέο αποτέλεσμα ερωτήματος για ακριβώς αυτό το έτος.Each time the report user changes the year report parameter value—and then views the report—the dataset retrieves a new query result for just that year.

Αμφότερες οι προσεγγίσεις σχεδίασης μπορούν να φιλτράρουν δεδομένα αναφοράς και αμφότερες οι σχεδιάσεις μπορούν να εξυπηρετήσουν καλά τις σχεδιάσεις αναφοράς σας.Both design approaches can filter report data, and both designs can work well for your report designs. Μια βελτιστοποιημένη σχεδίαση, ωστόσο, θα εξαρτάται από τους αναμενόμενους όγκους δεδομένων, τη μονιμότητα δεδομένων και τις αναμενόμενες συμπεριφορές των χρηστών αναφοράς σας.An optimized design, however, will depend on the anticipated volumes of data, data volatility, and the anticipated behaviors of your report users.

Προτείνουμε το φιλτράρισμα συνόλου δεδομένων όταν αναμένετε ότι ένα διαφορετικό υποσύνολο των γραμμών συνόλου δεδομένων θα χρησιμοποιηθεί εκ νέου πολλές φορές (εξοικονομώντας κατά συνέπεια χρόνο απόδοσης καθώς δεν θα απαιτείται ανάκτηση νέων δεδομένων).We recommend dataset filtering when you anticipate a different subset of the dataset rows will be reused many times (thereby saving rendering time because new data doesn't need to be retrieved). Σε αυτό το σενάριο, αναγνωρίζετε ότι το κόστος ανάκτησης ενός μεγάλου συνόλου δεδομένων μπορεί να αντισταθμιστεί με το πόσες φορές θα χρησιμοποιηθεί εκ νέου.In this scenario, you recognize that the cost of retrieving a larger dataset can be traded off against the number of times it will be reused. Επομένως, είναι χρήσιμο για ερωτήματα των οποίων η δημιουργία είναι χρονοβόρα.So, it's helpful for queries that are time consuming to generate. Να προσέχετε όμως ότι η αποθήκευση στο cache μεγάλων συνόλων δεδομένων σε μια βάση ανά χρήστη μπορεί να επηρεάσει αρνητικά τις επιδόσεις και την ταχύτητα μετάδοσης εκχωρημένων πόρων.But take care—caching large datasets on a per-user basis may negatively impact on performance, and capacity throughput.

Προτείνουμε την παραμετροποίηση του συνόλου δεδομένων όταν θεωρείται απίθανο να ζητηθεί ένα διαφορετικό υποσύνολο γραμμών συνόλου δεδομένων ή όταν ο αριθμός των γραμμών συνόλου δεδομένων που θα φιλτραριστούν είναι πιθανώς πολύ μεγάλος (και η αποθήκευση στο cache είναι αναποτελεσματική).We recommend dataset parameterization when you anticipate it's unlikely that a different subset of dataset rows will be requested—or, when the number of the dataset rows to be filtered is likely to be very large (and inefficient to cache). Αυτή η προσέγγιση σχεδίασης λειτουργεί καλά επίσης όταν ο χώρος αποθήκευσης δεδομένων σας δεν είναι μόνιμος.This design approach work well, too, when your data store is volatile. Στην περίπτωση αυτή, κάθε αλλαγή τιμής παραμέτρου αναφοράς θα οδηγήσει στην ανάκτηση ενημερωμένων δεδομένων.In this case, each report parameter value change will result in the retrieval of up-to-date data.

Μη εγγενείς προελεύσεις δεδομένωνNon-native data sources

Εάν χρειαστεί να αναπτύξετε σελιδοποιημένες αναφορές βάσει των προελεύσεων δεδομένων που δεν υποστηρίζονται εγγενώς από σελιδοποιημένες αναφορές, μπορείτε να αναπτύξετε πρώτα ένα μοντέλο δεδομένων του Power BI Desktop.If you need to develop paginated reports based on data sources that aren't natively supported by paginated reports, you can first develop a Power BI Desktop data model. Με αυτόν τον τρόπο, μπορείτε να συνδεθείτε σε περισσότερες από 100 προελεύσεις δεδομένων Power BI.This way, you can connect to over 100 Power BI data sources. Όταν δημοσιευτεί στην υπηρεσία Power BI, μπορείτε να αναπτύξετε μια σελιδοποιημένη αναφορά που συνδέεται στο σύνολο δεδομένων Power BI.Once published to the Power BI service, you can then develop a paginated report that connects to the Power BI dataset.

Ενοποίηση δεδομένωνData integration

Εάν χρειαστεί να συνδυάσετε δεδομένα από πολλές προελεύσεις δεδομένων, έχετε δύο επιλογές:If you need to combine data from multiple data sources, you have two options:

  • Συνδυασμός συνόλων δεδομένων αναφοράς: Εάν οι προελεύσεις δεδομένων υποστηρίζονται εγγενώς από σελιδοποιημένες αναφορές, μπορείτε να εξετάσετε τη δημιουργία πεδίων υπολογισμού που χρησιμοποιούν τις συναρτήσεις Lookup ή LookupSet του Report Builder.Combine report datasets: If the data sources are natively supported by paginated reports, you can consider creating calculated fields that use the Lookup or LookupSet Report Builder functions.
  • Ανάπτυξη ενός μοντέλου Power BI Desktop: Είναι πιθανώς πιο αποτελεσματικό, ωστόσο, να αναπτύξετε ένα μοντέλο δεδομένων στο Power BI Desktop.Develop a Power BI Desktop model: It's likely more efficient, however, that you develop a data model in Power BI Desktop. Μπορείτε να χρησιμοποιήσετε το Power Query για να συνδυάσετε ερωτήματα με βάση οποιαδήποτε υποστηριζόμενη προέλευση δεδομένων.You can use Power Query to combine queries based on any supported data source. Όταν δημοσιευτεί στην υπηρεσία Power BI, μπορείτε να αναπτύξετε μια σελιδοποιημένη αναφορά που συνδέεται στο σύνολο δεδομένων Power BI.Once published to the Power BI service, you can then develop a paginated report that connects to the Power BI dataset.

Σύνθετοι τύποι δεδομένων SQL ServerSQL Server complex data types

Καθώς ο SQL Server βρίσκεται σε μια προέλευση δεδομένων εσωτερικής εγκατάστασης, το Power BI πρέπει να συνδεθεί μέσω μιας πύλης.Because SQL Server is an on-premises data source, Power BI must connect via a gateway. Η πύλη, ωστόσο, δεν υποστηρίζει ανάκτηση δεδομένων για σύνθετους τύπους δεδομένων.The gateway, however, doesn't support retrieving data for complex data types. Οι σύνθετοι τύποι δεδομένων περιλαμβάνουν ενσωματωμένους τύπους όπως τους τύπους χωρικών δεδομένων GEOMETRY και GEOGRAPHY και hierarchyid.Complex data types include built-in types like the GEOMETRY and GEOGRAPHY spatial data types, and hierarchyid. Μπορεί να περιλαμβάνουν επίσης τύπους καθορισμένους από τον χρήστη που έχουν υλοποιηθεί μέσω μιας κλάσης συγκρότησης στον χρόνο εκτέλεσης κοινής γλώσσας (CLR) του Microsoft.NET Framework.They can also include user-defined types implemented through a class of an assembly in the Microsoft.NET Framework common language runtime (CLR).

Η σχεδίαση χωρικών δεδομένων και αναλύσεων στην απεικόνιση χάρτη απαιτεί χωρικά δεδομένα SQL Server.Plotting spatial data and analytics in the map visualization requires SQL Server spatial data. Επομένως, δεν είναι δυνατή η εργασία με την απεικόνιση χάρτη όταν ο SQL Server είναι η προέλευση δεδομένων σας.Therefore, it's not possible to work with the map visualization when SQL Server is your data source. Για να καταστεί σαφές, θα λειτουργήσει εάν η προέλευση δεδομένων σας είναι η Βάση δεδομένων SQL Microsoft Azure, καθώς το Power BI δεν συνδέεται μέσω μιας πύλης.To be clear, it will work if your data source is Azure SQL Database because Power BI doesn't connect via a gateway.

Μπορείτε να χρησιμοποιήσετε εικόνες για την προσθήκη λογοτύπων ή εικόνων στη διάταξη της αναφοράς σας.Images can be used to add logos or pictures to your report layout. Όταν οι εικόνες σχετίζονται με τις γραμμές που ανακτήθηκαν από ένα σύνολο δεδομένων αναφοράς, έχετε δύο επιλογές:When images relate to the rows retrieved by a report dataset, you have two options:

  • Είναι δυνατό να ανακτηθούν επίσης δεδομένα εικόνας από την προέλευση δεδομένων σας (εάν έχουν αποθηκευτεί ήδη σε έναν πίνακα).It's possible that image data can also be retrieved from your data source (if already stored in a table).
  • Όταν οι εικόνες αποθηκεύονται σε έναν διακομιστή Web, μπορείτε να χρησιμοποιήσετε μια δυναμική παράσταση για να δημιουργήσετε τη διαδρομή διεύθυνσης URL της εικόνας.When the images are stored on a web server, you can use a dynamic expression to create the image URL path.

Για περισσότερες πληροφορίες και προτάσεις, ανατρέξτε στο άρθρο Οδηγίες εικόνων σε σελιδοποιημένες αναφορές.For more information and suggestions, see Image guidance for paginated reports.

Ανάκτηση πλεοναζόντων δεδομένωνRedundant data retrieval

Είναι δυνατό η αναφορά σας να ανακτήσει πλεονάζοντα δεδομένα.It's possible your report retrieves redundant data. Αυτό μπορεί να συμβεί όταν διαγράφετε πεδία ερωτήματος συνόλου δεδομένων ή όταν η αναφορά διαθέτει σύνολα δεδομένων που δεν έχουν χρησιμοποιηθεί.This can happen when you delete dataset query fields, or the report has unused datasets. Αποφύγετε αυτές τις περιπτώσεις καθώς οδηγούν σε περιττή επιβάρυνση των προελεύσεων δεδομένων σας, του δικτύου και των εκχωρημένων πόρων Power BI.Avoid these situations, as they result in an unnecessary burden on your data sources, the network, and Power BI capacity resources.

Πεδία ερωτήματος που έχουν διαγραφείDeleted query fields

Στη σελίδα Πεδία του παραθύρου Ιδιότητες συνόλου δεδομένων, είναι δυνατό να διαγράψετε πεδία ερωτήματος συνόλου δεδομένων (τα πεδία ερωτήματος αντιστοιχίζονται σε στήλες που έχουν ανακτηθεί από το ερώτημα συνόλου δεδομένων).On the Fields page of the Dataset Properties window, it's possible to delete dataset query fields (query fields map to columns retrieved by the dataset query). Ωστόσο, το Report Builder δεν καταργεί αντίστοιχες στήλες από το ερώτημα συνόλου δεδομένων.However, Report Builder doesn't remove corresponding columns from the dataset query.

Εάν χρειάζεται να διαγράψετε πεδία ερωτήματος από το σύνολο δεδομένων σας, προτείνουμε να καταργήσετε τις αντίστοιχες στήλες από το ερώτημα συνόλου δεδομένων.If you need to delete query fields from your dataset, we recommend you remove the corresponding columns from the dataset query. Το Report Builder θα καταργήσει αυτόματα οποιαδήποτε πλεονάζοντα πεδία ερωτήματος.Report Builder will automatically remove any redundant query fields. Εάν διαγράψετε όντως πεδία ερωτήματος, βεβαιωθείτε ότι έχετε τροποποιήσει επίσης την πρόταση ερωτήματος συνόλου δεδομένων προκειμένου να καταργήσετε τις στήλες.If you do happen to delete query fields, be sure to also modify the dataset query statement to remove the columns.

Σύνολα δεδομένων που δεν χρησιμοποιούνταιUnused datasets

Όταν εκτελείται μια αναφορά, αξιολογούνται όλα τα σύνολα δεδομένων, ακόμα και εάν δεν είναι συνδεδεμένα σε αντικείμενα αναφοράς.When a report is run, all datasets are evaluated—even if they're not bound to report objects. Για αυτόν τον λόγο, βεβαιωθείτε ότι έχετε καταργήσει οποιαδήποτε σύνολα δεδομένων δοκιμής ή ανάπτυξης προτού δημοσιεύσετε μια αναφορά.For this reason, be sure to remove any test or development datasets before you publish a report.

Επόμενα βήματαNext steps

Για περισσότερες πληροφορίες σχετικές με αυτό το άρθρο, ελέγξτε τις παρακάτω προελεύσεις:For more information related to this article, check out the following resources: