Ich muss eine XML-Datei verarbeiten und dafür muss ich ~ 4k Objekte mit seinem Primärschlüssel aus einer einzigen Tabelle zu bekommen. Ich benutze EhCache. Ich habe wenige Abfragen wie folgt:Laden Sie mehrere (viele) Objekte aus der Datenbank, speichern Sie es in ehcache und fragen Sie es mit Primärschlüssel
1) Es dauert viel Zeit, wenn ich Zeile für Zeile basierend auf ID abfragen und es im Cache speichern. Kann ich zu Beginn abfragen und die gesamte Tabelle in EHCache speichern und kann sie später in der Verarbeitung mit dem Primärschlüssel abfragen
2) Ich möchte nicht Abfragecache verwenden. Da ich 4k Objekte nicht gleichzeitig laden kann, um das korrekte Objekt zu finden.
ich für eine optimale Lösung suchen, wie jetzt mein Prozess etwa 2 Stunden nimmt (es beinhaltet eine andere Verarbeitung zu)
Dank für Ihre Hilfe danken.
In der Tat, wenn Sie die Daten einmal für einen bestimmten Zweck verwenden, müssen Sie nicht wirklich zwischenspeichern. Sie benötigen eine Karte. Jedoch keine 'TreeMap'. Das wäre viel langsamer. Sie fragen nach ID. HashMap ist in Ordnung und schneller. Oder verwenden Sie eine ConcurrentHashMap, wenn Sie parallel arbeiten. Führe einen addAll darauf aus. Für Ehcache gibt es eine loadAll-Funktion. Aber es fühlt sich nicht so an, als ob Sie ein Caching-Framework benötigen. – Henri
4k Objekte geladen im Speicher zu haben, ist keine gute Lösung, denke ich – Khushi