Responsive JavaScript-Tabelle zum Laden von 20.000 Datensätzen in 2 oder 3 Sekunden

Ich suche nach einer reaktionsschnellen JavaScript-Tabelle, die mindestens 20.000 Datensätze innerhalb von 2 oder 3 Sekunden lädt und verarbeitet und viele Optionen bietet:

  • CSV
  • In die Zwischenablage kopieren
  • Exportieren Sie Excel, PDF, Text, PNG, Word, JSON
  • Sichtbare Spalten

Es muss Open Source sein.

Hier sind die, die ich gefunden habe:

Dies scheint selbst für eine einzige Sekunde keine signifikante Datenmenge zu sein, weshalb Sie wahrscheinlich sagen, dass Sie "viele Optionen haben". Können Sie uns weitere Anforderungen nennen? Sind das zum Beispiel besonders große Rekorde? Was ist falsch an denen, die Sie nennen? Übrigens, wenn es so lange dauert, zeige bitte eine Fortschrittsanzeige ( ux.stackexchange.com )
Sie können auch einen „virtuellen Tisch“ in Betracht ziehen. Das ist eine Tabelle, die alle 20.000 Datensätze im Speicher speichert, aber jederzeit nur 20 oder 30 in einem Schiebefenster auf dem Bildschirm anzeigt. Da es die Anzeige ist, die Echtzeit und Speicher benötigt, gibt es diese Technik schon seit langem.

Antworten (3)

Datentabellen sollten in der Lage sein, große Datensätze zu unterstützen, sogar serverseitig . Wenn Sie Hilfe benötigen, um Daten schneller über das Kabel zu übertragen, benötigen Sie möglicherweise eine Streaming-API oder eine Ajax-Methode wie comet.

jqGrid oder andere jQuery-Bibliotheken sollten ebenfalls funktionieren

Wenn das Laden über das Kabel das ist, was Sie fragen wollten, ändern Sie vielleicht den Titel oder stellen Sie eine andere Frage.

Das Laden von 20.000 sollte das äußerste Maximum sein, das implementiert werden sollte. Ich schätze, dass etwa 5.000 bis 10.000 Daten auf einmal geladen werden, für einige Aufgaben funktionieren und einen weiteren Stapel laden könnten, während der Benutzer die Hälfte davon durchsucht. Testen Sie Ihr Szenario in einem Endergebnisbrowser oder sogar in einem mobilen Browser für die maximale Zeile, die Sie erreichen möchten

Ich habe DataTables in der Vergangenheit verwendet. Es hat eine gute API und Dokumentation. Möglicherweise müssen Sie steuern, wie Ihre 20.000 Datensätze geladen werden, anstatt zu versuchen, ein Tool zu finden, das diese 20.000 Zeilen auf einmal lädt.

Warum ist die Leistung immer noch nicht in Datentabellen festgelegt? Gibt es eine Problemumgehung, um das Leistungsproblem zu überwinden? kann jeder Fix, der in einem Slick-Grid oder einem anderen Grid durchgeführt wurde, in Datentabellen integriert werden. 20k ist in einer Unternehmensanwendung sehr wenig.
Sie meinen, es gibt Benutzer, die 20.000 Zeilen auf einmal lesen müssen? Sie sollten versuchen, Paginierung zu verwenden. Die Paginierung sollte die 20.000 in 40 oder mehr Seiten brechen, wodurch die Seite in 2 oder 3 Sekunden geladen werden kann und die Download-Schaltfläche alle Daten herunterladen sollte.
Hier erfahren Sie mehr über die Paginierung und die Ihnen zur Verfügung stehenden Optionen. datatables.net/examples/basic_init/alt_pagination.html
Paginierung unterbricht die Suche in ganzen Tabellen....können wir in ganzen Datensätzen suchen, obwohl Paginierung eingestellt ist?
Auf dieser Demo scheint es gut zu funktionieren ... phpflow.com/php/…
Es sind nur 568 Datensätze und nicht 20.000 Datensätze.
Vielleicht sollten Sie DataTables danach fragen. Es muss einen Grund geben, warum es mit 568 Datensätzen funktioniert und nicht mit 20k. Sie können auch diese FAQ datatables.net/faqs/#General-initialisation zu Rate ziehen

DHTMLX-Raster verwende ich für jede Javascript-Benutzeroberfläche.

In Kombination mit dem DHTMLX-Konnektor auf der Serverseite kann ich Tabellen mit Millionen von Datensätzen in kürzester Zeit rendern.

Wie es funktioniert:

  • Javascript-Grid ist auf dem Client konfiguriert und initialisiert, der Parameter smartrendering ist auf ture gesetzt und die Anzahl der zu rendernden Datensätze ist auf 100 gesetzt
  • Wenn das Grid seine ersten Daten lädt, fragt es den Server automatisch nach der Anzahl der Zeilen, die gerendert werden müssen, und nach der Liste der ersten 100 Datensätze
  • Wenn der Benutzer scrollt oder filtert, werden die Anfragen automatisch an den Server weitergeleitet, der sofort die begrenzte Menge an Daten präsentiert, die benötigt werden, um auf dem Frontend angezeigt zu werden

Hinweis: DHTMLX ist Open Source, aber es gibt auch eine etwas einfacher zu verwendende PRO-Lösung, die Sie kaufen können.

Ich bin nicht mit DHTMLX verbunden.

"Ich kann Tabellen mit Millionen von Datensätzen in kürzester Zeit rendern" ... O'rly ?
:-) Nein, nur empirische Tests