Tag-Archive for » schneller «

PostgreSQL 9.4 macht JSON schneller

PostgreSQL-9Die Entwickler von PostgreSQL haben die Version 9.4 des quelloffenen, objektrelationalen Datenbankmanagement-Systems veröffentlicht. In dem neuen Release lag der Schwerpunkt unter anderem auf der Verbesserung der JSON-Funktionen (JavaScript Object Notation).

Ein neuer Datentyp namens JSONB (steht für “binary JSON”) soll die Verarbeitung des im Internet verbreiteten Datenaustauschformats beschleunigen. Er macht die Auswahl zwischen relationaler und nichtrelationaler Datenbank unnötig, denn mit JSONB bekommt man beides gleichzeitig

Durch die Einführung sogenannter Generalized Inverted Indices (GIN), versprechen sich die Entwickler von JSONB eine schnellere Suche mit einfacherer Syntax. Andere Funktionen in diesem Bereich ermöglichen es dem Benutzer, in JSON-Daten zu suchen und sie zu manipulieren, und zwar in einer von dokumentenorientierten Datenbanken gewohnten Geschwindigkeit. Darüber hinaus lassen sich mit JSONB strukturierte und unstrukturierte Daten einfach miteinander kombinieren.

Weitergehende Informationen dazu finden Sie auch bei Heise.

Neue PHP-Engine beschleunigt Programme um bis zu 30 Prozent

phpUm die Ausführung von PHP-Anwendungen zu beschleunigen, haben Mitarbeiter der Firma Zend mit JIT-Techniken und LLVM experimentiert.

Das brachte aber noch nicht die gewünschte Beschleunigung, so dass das Team sich auf größere Umbauten an den internen Datentypen verlegte – das erbrachte jetzt Leistungssteigerungen zwischen 10 und 30 Prozent, wie Dmitry Stogov schreibt.

Die Entwickler waren zwar davon ausgegangen, dass die Virtuelle Maschine (VM) optimiert sei, aber sie arbeitete wohl mit zu vielen Speicherzuweisungen und Referenzzählern. Daher sollen jetzt die Datentypen so geändert werden, dass solche “Heap-Zuweisungen minimiert werden“.

Bis heute werden alle Werte von der Zend Engine auf dem Heap-Speicher verwaltet. Damit benutzen sie die Referenzzählung und den Garbage Collector. Außerdem arbeitet die Zend Engine hauptsächlich mit Zeigern auf die interne Datenstruktur für alle Variablen, Zvals.

Die neue PHP-Implementierung nutzt keine Zeiger mehr und speichert die Zvals auf dem Stack, in Hashtable-Buckets und Property Slots. Das soll die Operationen auf dem langsameren Heap “dramatisch” verringern und vermeidet auch Referenzzählung und Garbage Collector für einfachere Datentypen.

Eine Kompilieranleitung für die neue PHP-Engine findet sich im Wiki.

PostgreSQL 9.2 ist schneller und genügsamer

Heute wurde die neue Version PostgreSQL 9.2 der freien relationalen Datenbank zum Download bereitgestellt. PostgreSQL 9.2 ist um einiges schneller geworden, was hauptsächlich durch sogenannte Index-only-scans erreicht wurde. Dabei werden Abfragen (Queries) möglichst nur aus den Indexdaten beantwortet und nicht durch Zugriff auf die Datentabellen.

Typische Anfragen sollen sich damit um Faktor 20 beschleunigen, in der Ankündigung liest man von 350.000 Queries/Sekunde. Trotz dieser deutlich erhöhten Abfrageleistung soll der Energieverbrauch von PostgreSQL 9.2 um ein Drittel gegenüber der Vorversion gesenkt worden sein.

Die Release Notes geben eine kompakte Übersicht der Neuerungen und in einem langen Artikel sind alle Änderungen sehr ausführlich beschrieben.

Versionen für BSD, Linux, Solaris, Mac OS X und Windows und natürlich auch der Quellcode können als Binärpakete heruntergeladen werden.

Schnelleres Javascript mit der Beta von Firefox 9

Typinferenz nennt sich die Technik, mit der die Beta von Firefox 9 den Ablauf von Javascript-Programmen deutlich beschleunigen will. Dabei erzeugt die Jacascript-Engine Spidermonkey durch Analyse des Codes und Überwachung während der Ausführung vollautomatisch Typinformationen zu den Javascript-Programmen.

Bei der nachfolgenden Just-in-Time-Übersetzung werden diese Typinformationen benutzt, um hocheffizienten Code zu erstellen. Benchmarks zeigen dabei Verbesserungen der Ablaufgeschwindigkeit bis zu 30 % an.

Die Erkennung der “Do not track”-Funktion für die Privatsphäre der Benutzer, die nicht möchten, dass ihre Aktivitäten verfolgt werden, ist jetzt in FF 9 möglich.
Sämtliche Neuerungen in Firefox 9 sind in den Release Notes zu finden.

SlideShare hat erfolgreich von Flash auf HTML5 gewechselt

Über SlideShare kann man Dokumente und Präsentationen mit anderen teilen. Das A und O der Plattform ist also die Darstellung von Dokumenten aller möglicher Formate. Bisher wurde das mit Adobe’s Flash gemacht, jetzt hat das Portal auf HTML5 umgestellt.

Es gab zwei Gründe dafür. Einerseits wollte man die Entwickler-Ressourcen weniger aufsplitten, zum Anderen ging es um die Grundlage der neuen Mobil-Strategie. Wenn man da völlig unterschiedliche Apps für iPhones, Androids, Blackberrys oder Windows Phones erstellen muss, bringt das schnell an die Grenzen der Möglichkeiten und des Kostenrahmens.

Nach der Umstellung auf HTML5 äußert sich SlideShare sehr zufrieden. Auch Power Point- oder Word-Dokumente werden in HTML5 wie original dargestellt, und das 30 % schneller und mit 40 % geringerem Speicherbedarf.

Solche Erfolgsgeschichten sollten uns Internetschaffende bei neuen Projekten auch mal wieder drüber nachdenken lassen, ob es nicht schon Zeit für HTML5 ist…

Firefox 7 startet schneller ohne Windows Prefetch

Im Blog des Mozilla-Entwicklers Taras Glek kann man nachlesen, dass die Startbeschleunigung von Firefox 7 durch Vorladen von Bibliotheken unter Linux und Mac gut funktioniert. Bei Windows verhindert das aber der Prefetcher, der ja eigentlich dafür gedacht ist, häufig aufgerufene Programme schneller zu laden.

Nach Mozillas Auswertungen haben ungefähr ein Viertel aller Nutzer der Windows/Firefox-Kombination den Windows Prefetcher ausgeschaltet, um die Ladezeit des Browsers deutlich zu verkürzen.

Ein einfacher Trick reicht aber auch häufig, damit Firefox 7 nicht vom Prefetcher ausgebremst wird: Wenn man Firefox 7 neu installiert, sollte man den Browser nicht sofort starten, sondern erst einen Neustart durchführen. Wenn man nach dem Neustart Firefox 7 aufruft, arbeiten FF7 und Windows Prefetch so zusammen, dass man den Startvorteil auch merkt.