VERWENDUNG DER GOOGLE COMPUTE ENGINE FÜR DIE VIDEOTRANSKODIERUNG

Picture of bsp-admin-1
bsp-admin-1
blog-platzhalter bild

Für diejenigen unter uns, die in der Welt des Cloud-Computing tätig sind, war das Aufregendste an der Google I/O 2012 nicht, dass Fallschirmspringer Glass trugen, und auch nicht, dass es ein neues Tablet gab. Die große Neuigkeit war, dass Google in den Bereich der Cloud-Infrastruktur-as-a-Service einsteigt, der derzeit von Amazon Web Services (AWS) dominiert wird. Konkret hat Google einen neuen Dienst namens Google Compute Engine eingeführt, der mit Amazon EC2 konkurrieren soll.

Das ist aufregend. Die Welt braucht einen weiteren robusten, leistungsfähigen und gut durchdachten Cloud-Service für virtuelle Maschinen. Mit Verlaub, Rackspace und andere haben hier lange Zeit nur einen einzigen Anbieter gehabt - EC2 ist mit Abstand der Marktführer. Google hat offensichtlich das Know-how und die Größe, um ein ernstzunehmender Konkurrent zu sein, wenn sie dabei bleiben.

Wie sieht es aus? Die ersten Berichte sind positiv. Google Compute Engine (GCE) ist gut konzipiert, gut ausgeführt und basiert auf einer Infrastruktur, die Google schon seit Jahren nutzt. Die Leistung ist gut, vor allem bei der Festplatten-E/A, den Boot-Zeiten und der Konsistenz, die in der Vergangenheit nicht gerade zu den Stärken von EC2 gehörten. Aber wie gut eignet sich GCE für die Cloud-Videotranscodierung? Wir haben einige vorläufige Ergebnisse, wobei wir zugeben, dass noch mehr Tests durchgeführt werden müssen. Im Folgenden finden Sie einige grundlegende Tests zur Videotranskodierung und Dateiübertragung mit der Zencoder-Software sowohl auf GCE als auch auf EC2.

Geschwindigkeit der Rohtranscodierung

Leistung hat für uns oberste Priorität, daher verwendet Zencoder die schnellsten Server, die wir finden können. Auf EC2 verwenden wir Cluster Compute-Instanzen, schnelle Dual-CPU-Maschinen in zwei Größen: 4XL und 8XL. Wir haben diese mit dem schnellsten GCE-Instanztyp verglichen, der derzeit ein Single-CPU-8-Core-Server ist.

ServerCPU
GCE 8-KernIntel Xeon (Sandy Bridge - wahrscheinlich E5-2670) - 8 Kerne @ 2.60GHz
EC2 cc1.4xgroßZwei Intel Xeon X5570 - 8 Kerne bei 2,93 GHz/Kern
EC2 cc2.8xlargeZwei Intel Xeon E5-2670 - 16 Kerne bei 2,60 GHz/Kern

Diese Tests wurden mit einem H.264-Quellvideo mit den Auflösungen 640×360 und 1280×720 durchgeführt und von Zencoder mit denselben Einstellungen für die Transkodierung in einem Durchgang (H.264 Baseline-Profil, AAC, Transkodierung in einem Durchgang mit konstanter Qualität usw.) kodiert.

Google Compute Engine vs. Amazon EC2

ServerAuflösungGleichzeitige KodierungZeit (Sekunden)Kosten pro Tausend
EC2 cc1.4xgroß640×360615.87$0.96
EC2 cc2.8xlarge640×36069.93$1.10
GCE 8-Kern640×360621.05$1.13
GCE 8-Kern640×36016.01$1.94
EC2 cc1.4xgroß640×36015.96$2.15
EC2 cc1.4xgroß1280×720648.58$2.92
EC2 cc2.8xlarge640×36014.99$3.33
EC2 cc2.8xlarge1280×720630.74$3.42
GCE 8-Kern1280×720668.15$3.66
EC2 cc1.4xgroß1280×720112.89$4.65
GCE 8-Kern1280×720116.01$5.16
EC2 cc2.8xlarge1280×720110.92$7.28

Mit den Standardeinstellungen von Zencoder sind beide EC2-Instanztypen schneller als GCE. Die Wirtschaftlichkeit liegt etwas näher beieinander, und es gibt keinen klaren Gewinner zwischen 4XL EC2-Instances und GCE. GCE ist also eine praktikable Option für die Transcodierung, bei der die Kosten eine höhere Priorität haben als die reine Geschwindigkeit, obwohl AWS-Kunden Reserved Instances und Spot Instances für weitere Kostensenkungen nutzen können. Wir haben festgestellt, dass die EC2-Instances mit 16 Kernen unter Last mit 6 gleichzeitigen Transcodierungen etwa doppelt so schnell waren wie die GCE-Instances mit 8 Kernen.

Angesichts der ähnlichen Taktraten, aber der halben Anzahl von Kernen, ist dies das, was man erwarten würde. Wenn Google jedoch ähnliche 16-Kern-Maschinen hinzufügt, könnten sie vergleichbare Transcodierungsgeschwindigkeiten haben.

Übertragungsgeschwindigkeiten

Bei der Transkodierung von Videos in der Cloud ist die Netzwerk-E/A fast so wichtig wie die CPU. Dies gilt insbesondere für Kunden, die mit hochbitratigen Inhalten arbeiten (Rundfunkanstalten, Studios und Kreative). Wie sind also die Übertragungsgeschwindigkeiten von GCE im Vergleich zu EC2? Um dies zu testen, haben wir vier Benchmark-Sets durchgeführt:

  • Amazon S3 zu Amazon EC2
  • Amazon S3 zu Google Compute Engine
  • Google Cloud-Speicher für Amazon EC2
  • Google Cloud Storage zu Google Compute Engine

Dazu haben wir dieselbe 1 GB große Videodatei getestet, die auf Google Cloud Storage (GCS) und auf Amazon S3 gespeichert war. Die Übertragung wurde über 10 HTTP-Verbindungen durchgeführt (Zencoder tut dies standardmäßig, um die Übertragungsgeschwindigkeiten zu optimieren, und es kann die Übertragung großer Dateien über HTTP erheblich beschleunigen).

GCE vs. EC2 Übertragungsgeschwindigkeiten

 Übertragungsgeschwindigkeit (Mbps)Server-Bandbreite
S3 bis GCE470.961 Gbit/s
S3 zu EC2 c1.xlarge644.291 Gbit/s
S3 zu EC2 cc2.8xlarge1458.3210 Gbit/s
GCS zu GCE202.601 Gbit/s
GCS zu EC2 c1.xlarge378.281 Gbit/s
GCS zu EC2 cc2.8xlarge641.3410 Gbit/s

Das ist interessant. Wir haben erwartet, dass die Übertragung von Amazon zu Amazon schnell ist, und das war sie auch. Aber wir haben auch erwartet, dass die Google-zu-Google-Übertragung schnell ist, was nicht der Fall war. Tatsächlich scheint es so zu sein, dass GCS langsamer ist als S3 und die GCE-Übertragung langsamer als EC2, so dass man, selbst wenn man Google für Berechnungen nutzt, besser dran ist, wenn man S3 für die Speicherung nutzt. Die Übertragung war 2,3 Mal schneller von S3 zu GCE als von GCS zu GCE.

Weitere Tests erforderlich

Betrachten Sie diese Ergebnisse als vorläufig. Es müssen weitere Tests durchgeführt werden, um mehr Variablen zu berücksichtigen.

  • Unterschiede von Instanz zu Instanz. Dies gilt insbesondere für die Dateiübertragung, die je nach Netzwerkbedingungen und Instanzvariabilität stark variieren kann.
  • Zusätzliche Anwendungen. Diese Benchmarks decken nur die Transkodierung ab, die ein CPU-gebundener Benchmark ist. Andere Anwendungen sind durch Festplatte, Speicher usw. begrenzt, und diese Tests sagen nichts anderes aus als Transcoding.
  • Skalierbarkeit. Skalierbarkeit ist für jeden, der die Cloud für die Videotranskodierung nutzt, extrem wichtig. Es sind weitere Tests erforderlich, um herauszufinden, wie GCE im Vergleich zu EC2 bei einer enormen Skalierung - Zehntausende von Servern (oder mehr) - abschneidet. An welchem Punkt stoßen die Benutzer auf Kapazitätsprobleme? Leistungsprobleme? Design-Einschränkungen? Instabilität?

Zukunft der Cloud-Infrastruktur

Auch wenn EC2 in diesen ersten Tests gewinnt, sind wir von Google Compute Engine begeistert. Um ein ernsthafter Konkurrent für Hochleistungs-Transcoding zu sein, muss Google größere Instanzen mit schnelleren CPUs hinzufügen. Das Hinzufügen neuer Instanztypen ist jedoch einfach. Nichts hindert Google daran, dies zu tun. Die Schwierigkeit besteht darin, eine robuste, leistungsfähige, mit allen Funktionen ausgestattete und skalierbare Cloud-Plattform zu entwickeln, und das scheint Google gelungen zu sein. Wenn Google diesem Produkt und den Entwicklern langfristig verpflichtet ist, könnte die Welt der Cloud-Virtualisierung gerade einen zweiten legitimen Akteur bekommen haben.

Teilen Sie

Tags

Brightcove half einem Hersteller von Diagnosegeräten dabei, die Unterrichtszeit und die Kosten zu reduzieren und gleichzeitig den Erfolg ...
Brightcove unterstützte den bekanntesten Automobilmarktplatz bei der Verwaltung seiner umfangreichen, älteren Videobibliothek und deren Monetarisierung...
Um die Markenintegrität zu wahren, benötigen Einzelhandelsmarken anpassbare Videoplayer, die es ihnen ermöglichen, die Farben, die Schriftart...

SIND SIE BEREIT, LOSZULEGEN?

Setzen Sie sich mit uns in Verbindung, um zu erfahren, wie wir Ihre Videomarketing-Bemühungen verbessern und Ihnen dabei helfen können, die gewünschten Ergebnisse und den gewünschten ROI zu erzielen.