TL;DR: Syncfusion ピボット テーブルは複数のデータ ソースに接続し、データ分析のための多用途ツールになります。適切なデータ ソースを選択することは、パフォーマンスにとって非常に重要です。このガイドでは、さまざまなオプションを検討し、最適なものを選択するためのヒントを提供します。
Syncfusion ピボット テーブルは、データ分析と視覚化のための強力なツールです。その際立った機能の 1 つは、さまざまなデータ ソースに接続できることであり、企業や開発者にとって多用途の選択肢となっています。ピボット テーブルに適切なデータ ソースを選択することは、最適なパフォーマンスと使いやすさを確保するために非常に重要です。
Syncfusion ピボット テーブルに接続できるさまざまなデータ ソース、その利点、ニーズに最適なデータ ソースを選択する方法を見てみましょう。
データ ソースに入る前に、Syncfusion ピボット テーブルとは何か、またその仕組みを理解することが重要です。 Syncfusion ピボット テーブルは、ASP.NET MVC、ASP.NET Core、TypeScript、JavaScript、Angular、React、Vue、および Blazor プラットフォーム用のコンポーネントです。データ分析用のインタラクティブなテーブルを作成し、データのフィルタリング、並べ替え、グループ化、集計などの機能を提供できます。
ピボット テーブルのデータ ソースを選択する際に考慮する必要がある重要な要素をいくつか見てみましょう:
データのサイズはパフォーマンスに影響を与える可能性があります。大規模なデータセットには、より強力なデータベースまたは最適化されたストレージ ソリューションが必要になる場合があります。たとえば、小規模から中規模のデータセットには JSON または CSV ファイルで十分な場合があります。大規模なデータセットの場合は、リレーショナル データベースや NoSQL データベース、または OLAP システムの使用を検討してください。 OLAP システムは、複雑なデータ分析と多次元データに必要な機能を提供します。より単純な分析には、JSON または CSV ファイルが実用的です。
アプリのパフォーマンス要件を考慮してください。一般に、データベースは、ファイルベースのデータ ソースと比較して、大規模なデータ操作のパフォーマンスが優れています。ただし、迅速かつ簡単な分析には JSON および CSV ファイルで十分な場合があります。
データ ソースを Syncfusion ピボット テーブルとどれだけ簡単に統合できるかを評価します。リレーショナル データベースと JSON/XML ファイルには通常、確立された統合方法がありますが、一部の NoSQL データベースと RESTful API では追加の構成が必要な場合があります。
アプリでリアルタイム データ アクセスが必要な場合は、リアルタイム機能を備えた RESTful API またはデータベースを使用します。 Excel や CSV などのファイルベースのデータ ソースは静的であるため、手動で更新する必要があります。
選択したデータ ソースが組織のセキュリティとプライバシーの要件に準拠していることを確認してください。データベースは多くの場合、堅牢なセキュリティ機能を備えていますが、ファイルベースのデータ ソースでは機密情報を保護するために追加の対策が必要になる場合があります。
ピボット テーブルのデータ ソースを選択するためのベスト プラクティスをいくつか見てみましょう:
アプリの特定のニーズを理解し、それらのニーズに合ったデータ ソースを選択します。データ型、必要な操作、ユーザーの期待を考慮してください。高可用性とスケーラビリティを必要とする Web アプリには、NoSQL データベースを検討してください。 SQL Server などのリレーショナル データベースは、構造化データを使用する従来のビジネス アプリに適しています。
パフォーマンス テストを実施して、選択したデータ ソースが予想される負荷を処理できることを確認します。また、将来のスケーラビリティのニーズを考慮し、アプリの成長に合わせて成長できるソリューションを選択してください。
正確な分析にはデータの品質が最も重要です。検証やエラーチェックなど、高いデータ品質基準を維持できるデータソースを選択してください。
データ ソースを Syncfusion ピボット テーブルと統合するための明確な計画を立てます。統合プロセスを合理化するために、ミドルウェアまたは ETL (抽出、変換、ロード) ツールの使用を検討してください。 JSON および CSV データは、迅速なセットアップと使いやすさに便利です。リレーショナル データベースと OLAP システムは、より多くのセットアップとメンテナンスを必要としますが、より優れた機能を提供します。
柔軟で堅牢なデータ バインディング機能により、Syncfusion ピボット テーブルのさまざまなデータ ソースの操作が容易になります。以下を含む複数のデータ ソースをサポートします。
JSON (JavaScript Object Notation) は軽量のデータ交換形式です。 Syncfusion ピボット テーブルは、JSON データを簡単に使用できるため、データが API から JSON 形式で取得されることが多い Web アプリに特に役立ちます。
柔軟性: JSON は、ネストされたオブジェクトや配列など、さまざまなデータ構造を処理できます。
軽量: JSON はコンパクトなので、ネットワーク経由で送信されるデータが削減されます。
パフォーマンス: JSON で大規模なデータセットを処理すると、非効率的で時間がかかる可能性があります。
限られたスケーラビリティ: JSON は大規模または複雑なデータセットには理想的ではありません。
使いやすさと素早いセットアップが優先されるアプリ。
プロトタイピングとテスト。
これは、JSON データをピボット テーブルと統合するためのコード例です。
ローカル経由で JSON データをバインドします
var localData = [ { Product: 'Bike', Country: 'USA', Sales: 100 }, { Product: 'Car', Country: 'Canada', Sales: 200 } ]; var pivotTableObj = new ej.pivotview.PivotView({ dataSourceSettings: { dataSource: localData, rows: [{ name: 'Product' }], columns: [{ name: 'Country' }], values: [{ name: 'Sales' }], filters: [] } }); pivotTableObj.appendTo('#PivotTable');
リモート (外部) リンクを介した JSON データのバインド
var pivotGridObj = new ej.pivotview.PivotView({ dataSourceSettings: { url: 'https://cdn.syncfusion.com/data/sales-analysis.json', expandAll: false, rows: [ { name: 'EnerType', caption: 'Energy Type' } ], columns: [ { name: 'EneSource', caption: 'Energy Source' } ], values: [ { name: 'PowUnits', caption: 'Units (GWh)' }, { name: 'ProCost', caption: 'Cost (MM)' } ], filters: [] } }); pivotGridObj.appendTo('#PivotTable');
カンマ区切り値 (CSV) ファイルは、データをエクスポートおよびインポートするための標準形式です。 Syncfusion ピボット テーブルは CSV ファイルを解析してデータ ソースとして使用できるため、スプレッドシートやその他の表形式のデータ ソースからのデータを分析するのに便利です。
これは、CSV データをピボット テーブルと統合するためのコード例です。
ローカル経由で CSV データをバインドします
var csvdata = 'Region,Country,Item Type,Sales Channel,Total Revenue,Total Cost,Total Profit\r\nMiddle East and North Africa,Libya,Cosmetics,Offline,3692591.20,2224085.18,1468506.02\r\nNorth America,Canada,Vegetables,Online,464953.08,274426.74,190526.34\r\nMiddle East and North Africa,Libya,Baby Food,Offline,387259.76,241840.14,145419.62\r\nAsia,Japan,Cereal,Offline,683335.40,389039.42,294295.98'; var pivotObj = new ej.pivotview.PivotView({ dataSourceSettings: { dataSource: getCSVData(), type: 'CSV', expandAll: false, formatSettings: [ { name: 'Total Cost', format: 'C0' }, { name: 'Total Revenue', format: 'C0' }, { name: 'Total Profit', format: 'C0' }, ], drilledMembers: [{ name: 'Item Type', items: ['Baby Food'] }], rows: [{ name: 'Country' }, { name: 'Region' }], columns: [{ name: 'Sales Channel' }, { name: 'Item Type' }], values: [ { name: 'Total Profit' }, { name: 'Total Cost' }, { name: 'Total Revenue' }, ], filters: [], }, height: 290, width: '100%', }); pivotObj.appendTo('#PivotTable'); function getCSVData() { var dataSource = []; var jsonObject = csvdata.split(/\r?\n|\r/); for (var i = 0; i < jsonObject.length; i++) { dataSource.push(jsonObject[i].split(',')); } return dataSource; }
リモート (外部) リンクを介した CSV データのバインド
var pivotObj = new ej.pivotview.PivotView({ dataSourceSettings: { url: 'https://bi.syncfusion.com/productservice/api/sales', type: 'CSV', expandAll: false, enableSorting: true, formatSettings: [{ name: 'Total Cost', format: 'C0' }, { name: 'Total Revenue', format: 'C0' }, { name: 'Total Profit', format: 'C0' }], drilledMembers: [{ name: 'Item Type', items: ['Baby Food'] }], rows: [ { name: 'Region' }, { name: 'Country' } ], columns: [ { name: 'Item Type' }, { name: 'Sales Channel' } ], values: [ { name: 'Total Cost' }, { name: 'Total Revenue' }, { name: 'Total Profit' } ], filters: [] }, height: 300, width: '100%' }); pivotObj.appendTo('#PivotTable');
OLAP キューブは複雑なデータ分析を可能にし、ビジネス インテリジェンス アプリで一般的に使用されます。 Syncfusion ピボット テーブルは OLAP データ ソースをサポートし、豊富な階層データ構造による多次元データ分析を可能にします。 OLAP データ ソースは、事前に集計されたデータにより、クエリ応答が高速になることがよくあります。
OLAP データをピボット テーブルと統合するコード例を次に示します。
var pivotTableObj = new ej.pivotview.PivotView({ dataSourceSettings: { catalog: 'Adventure Works DW 2008 SE', cube: 'Adventure Works', providerType: 'SSAS', enableSorting: true, url: 'https://bi.syncfusion.com/olap/msmdpump.dll', localeIdentifier: 1033, rows: [{ name: '[Customer].[Customer Geography]'], columns: [{ name: '[Product].[Product Categories]'}, { name: '[Measures]'}], values: [{ name: '[Measures].[Customer Count]'}, { name: '[Measures].[Internet Sales Amount]'] } }); pivotTableObj.appendTo('#PivotTable');
Relational databases are one of the most common data sources for our Pivot Table. They store data in tables, making it easy to retrieve and manipulate data using SQL queries. Popular relational databases include MySQL, PostgreSQL, SQL Server, and Oracle.
NoSQL databases such as MongoDB offer a flexible schema and are designed to handle unstructured data, making them a good choice for certain types of data analysis.
Data can be fetched from remote servers using web services or APIs. Syncfusion Pivot Table can connect to remote data sources via RESTful services, making it ideal for apps that analyze data from various endpoints. It involves retrieving data from remote servers or databases.
Here’s a code example for connecting an API service to our Pivot Table.
var data = new ej.data.DataManager({ url: 'https://bi.syncfusion.com/northwindservice/api/orders', adaptor: new ej.data.WebApiAdaptor(), crossDomain: true, }); data.defaultQuery = new ej.data.Query().take(8); var pivotTableObj = new ej.pivotview.PivotView({ dataSourceSettings: { dataSource: data, expandAll: true, filters: [], columns: [{ name: 'ProductName' }], rows: [{ name: 'ShipCountry' }, { name: 'ShipCity' }], formatSettings: [{ name: 'UnitPrice', format: 'C0' }], values: [{ name: 'Quantity' }, { name: 'UnitPrice' }], }, height: 350, width: '100%', gridSettings: { columnWidth: 120 }, }); pivotTableObj.appendTo('#PivotTable');
For more details, refer to the following references:
Thanks for reading! In this blog, we’ve explored the various options, benefits, and best practices for choosing the right data source for the Syncfusion Pivot Table, ensuring optimal performance and usability.
If you’re already a Syncfusion user, the latest version of Essential Studio is available on the License and Downloads page. We offer our new users a 30-day free trial to explore all our components’ features and capabilities.
If you need further assistance, contact us via our support forum, support portal, or feedback portal. We’re always here to help you!
以上がパフォーマンスの最適化: ピボット テーブルに最適なデータ ソースを選択するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。