Groß denken. Es ist ein Leitprinzip in der Wirtschaft und im Internetzeitalter von Cloud Computing und Globalisierung auch ein guter Ratschlag für Technologiesystemarchitekten und C-Suite-Direktoren, die die Entwicklung ihrer IT-Stacks überwachen.
Zu den zentralen Zielen, Aufgaben und Vorgaben der IT-Abteilung gehört die Schaffung eines klaren Kanals, um die Skalierung von Anwendungen, Datenrepositorys, IT-Diensten und allen Arten interner Systemmechanismen und -funktionen zu ermöglichen. Aber scalability selbst kommt nicht in Form einer verpackten, definierten IT-Lösung daher, die jedes Unternehmen einfach kaufen kann. Was bedeutet es also wirklich und wie erreichen wir es?
Scalability selbst ist ein Begriff, der auf eine Anwendung, einen IT-Systemprozess, ein algorithmisches Modell, einen Teil von Daten (oder eine gesamte Datenbank), eine Technologiekomponente (z. B. eine Anwendungsprogrammierschnittstelle (API), einen Systemagenten usw.) angewendet wird B. eine Art Orchestrator-Funktion), eine Software-Engine (z. B. eine KI-Maschine oder ein Big-Data-Analysedienst) oder tatsächlich ein produktives Stück Technologie, das nicht unbedingt als Anwendung oder Dienst definiert ist.
Maßstab, warum sollte man sich Sorgen machen?
Die meisten von uns (Benutzern) haben ein gewisses Verständnis für Skalierungsprobleme entwickelt, als wir versucht haben, eine Website für einen Dienst oder eine Anforderung zu nutzen, die „viral“ geworden ist und abgestürzt ist. Ganz gleich, ob es um die Bestellung von Covid-19-Tests, den Versuch, an Konzertkarten zu kommen, oder den Versuch ging, sich während der aktuellen Energiekrise Zugriff auf die Website unseres heimischen Gaslieferanten zu verschaffen, wir alle haben schon erlebt, dass Systeme ausgefallen sind.
Manchmal (im obigen Beispiel) handelt es sich um Webdienste, manchmal um die Fähigkeit des Cloud-Backbones, Benutzer zu verbinden … und manchmal handelt es sich um etwas eher Infrastrukturelles, wie etwa eine Datenbanküberlastung oder eine Nichtübereinstimmung des Betriebssystems (OS), falls vorhanden Die Anwendung wurde auf ein neues System umskaliert, jedoch nicht gründlich einem Stresstest unterzogen.
„Die meisten Menschen stellen sich scalability als die Fähigkeit eines Systems vor, die Kapazität zu erhöhen, um einem plötzlichen Anstieg der Nachfrage gerecht zu werden. Allerdings geht es bei scalability um viel mehr als nur diesen einen Aspekt“, erklärte Nelson Petracek, globaler CTO beim Unternehmensdatenplattform Unternehmen Tibco.
„Aus technischer Sicht geht es bei scalability darum, dass Systeme (Hardware oder Software) in der ‚richtigen‘ Größe für aktuelle oder erwartete Kontexte laufen, ohne Pause … und ohne die Notwendigkeit plötzlicher Refaktorisierungs- oder Neuarchitekturaktivitäten, die zusätzliche Risiken mit sich bringen können oder.“ Komplexität. Skalierbare Systeme können die an sie gestellten Anforderungen zu jedem Zeitpunkt erfüllen – und das auf transparente Weise. Aber so wichtig wie die technischen Elemente sind, wenn es um scalability geht, so wichtig sind auch die nichttechnischen Elemente, einschließlich Menschen und Prozesse. Beide Seiten müssen koexistieren, um den maximalen Wert im Unternehmen zu erzielen“, fügte Petracek von Tibco hinzu.
Wenn wir Ihre Anwendungen, Daten und Infrastruktur skalieren, muss auch unser Sicherheitsansatz mit dem Skalierungsfaktor zurechtkommen. Während wir eine IT-Infrastruktur zur Unterstützung von Anwendungen und Transaktionen ausbauen, sollten auch unsere Sicherheitstools und unser Support skaliert werden. Dies kann zu einigen schwierigen Fragen führen, die sich darauf beziehen, ob wir in der Lage sind, unsere traditionelle On-Premise-Technologie sowie alle Cloud-basierten Lösungen zu schützen – und ob wir alle Aspekte und möglicherweise verschiedene Arten von Cloud-Modellen und Anbietern abdecken können.
„Skalierbarkeit bedeutet, dass Sie sicher sein können, ob Ihre Cyber-Sicherheitsstrategie flexibel ist und Veränderungen bewältigen kann“, sagte Paul Baird, Chief Technical Security Officer für Großbritannien beim cloudbasierten IT-, Sicherheits- und Compliance-Lösungsunternehmen Qualys. „Das bedeutet, dass wir mehrere Bereiche betrachten müssen – können Ihre Entwickler beispielsweise vorgefertigte und genehmigte Sicherheitsfunktionen innerhalb der Organisation nutzen? Anstatt jedes Mal neue Methoden zu entwickeln, kann die Bereitstellung eines Authentifizierungs-Frameworks, in das Forschung und Entwicklung einbinden können, tatsächlich dazu beitragen, sichere Software schneller herauszubringen. Dies kann ihnen helfen, häufige Sicherheitsprobleme in ihrem Code zu beseitigen, wie z. B. fehlerhafte Zugriffskontrollmaßnahmen, Code-Injection-Versuche oder unsichere Designs.“
Darüber hinaus sagt Baird, dass das Scannen von Anwendungen auf Sicherheitsprobleme vor der Bereitstellung in der Produktion einfach klingt, aber dies in einer DevOps-Welt zu tun erfordert enorme Geschwindigkeit und Skalierbarkeit. Die Sicherstellung, dass sicherer Code von Anfang an in diesen Hyperskalierungsumgebungen bereitgestellt wird, spart Zeit und Geld und beseitigt das Risiko potenzieller Ausfallzeiten.
„Eine auf das Unternehmen abgestimmte Cyber-Sicherheitsstrategie hilft dabei, diese potenziellen Herausforderungen vorherzusagen. Wenn Sie sich von isolierten Tools fernhalten, behalten Sie einen klaren Überblick über die Cybersicherheitsrisikolage Ihres Unternehmens“, fügte Baird von Qualys hinzu.
Scalability definiert
In puristischen Begriffen der Softwareprogrammierung können wir sagen, dass scalability ein Maß für die Fähigkeit einer Anwendung oder eines Netzwerks, eines Algorithmus, eines Protokolls oder eines umfassenderen Softwaresystems ist, sich nach oben zu bewegen, um einen größeren Aufgabenbereich mit mehr Funktionen und mehr Benutzern zu bedienen und zu können um von seinem erweiterten Status und seiner erweiterten Form zu profitieren. Denken wir auch daran, dass sich scalability in der Mathematik meist auf den Abschluss durch Skalarmultiplikation bezieht.
Scalability kann sich natürlich auch in die andere Richtung und nach unten bewegen. Dies ist wichtig im Kontext der Welt des Cloud Computing, in der nur das bezahlt wird, was man braucht. Aber trotzdem sprechen wir im Allgemeinen von aufwärts scalability. In der Welt der Speicherung erinnert uns das Open-Source-Softwareplattformunternehmen SUSE daran, dass es sowohl vertikale (skalierte) scalability als auch horizontale (skalierte) scalability gibt.
„Vertikal (Skalierung) scalability erhöht die Kapazität von Hardware oder Software durch Hinzufügen von Ressourcen zu einem physischen System, z. B. durch Hinzufügen von Rechenleistung zu einem Server, um ihn schneller zu machen. Für Scale-up-Speicher bedeutet dies, dass einem vorhandenen System weitere Geräte, wie z. B. Festplattenlaufwerke, hinzugefügt werden, wenn mehr Kapazität erforderlich ist“, erklärt SUSE auf seinen (oben verlinkten) technischen Definitionsseiten.
Als zusätzliche Klarstellung erklärt SUSE auch, dass horizontal (Scale-out) scalability mehrere Elemente verbindet, um als eine einzige logische Einheit zu funktionieren. Für Scale-out-Speicher bedeutet dies das Hinzufügen von Geräten in verbundenen Arrays oder Clustern. Jeder Cluster kann viele Knoten (Geräte) haben und die Knoten können geografisch getrennt sein.
Scalability in einer Echtzeitwelt
Da so viele unserer Softwaresysteme mittlerweile in Echtzeit arbeiten und Benutzer mit nahezu sofortiger Interaktivität unterstützen müssen, sollten wir scalability auch im Zusammenhang mit Softwarediensten berücksichtigen, die hochverfügbar sein müssen, oft unter extremen Umgebungsbedingungen .
„Scalability steht in engem Zusammenhang mit Hochverfügbarkeit (HA), womit ich Verfügbarkeit im Sinne der Systemverfügbarkeit meine, damit Benutzer Zugriff auf die Anwendungen und Dienste erhalten, die sie benötigen“, argumentiert Eric Raab, CTO von KX, einem Unternehmen bekannt für seine Echtzeit-Datenanalyse- und Entscheidungsintelligenztechnologien.
„Organisationen fordern zunehmend, dass ihre IT-Systeme unter allen Bedingungen verfügbar bleiben, einschließlich Netzwerkausfällen, Anbieterausfällen, Naturkatastrophen – und plötzlicher, erhöhter Auslastung.“ Durch eine architektonische Herangehensweise an scalability unter dem Gesichtspunkt der Hochverfügbarkeit kann ein System so konzipiert werden, dass es Fehlermodi „überwindet“ und zuverlässige Leistung unter variabler Last liefert. Dieser Ansatz, den ich „HA scalability Modell“ nenne, bietet ein konsistentes Designmuster, das strenge Unternehmensleistungsziele erfüllt“, fügte Raab hinzu.
Größer als linear
In der mehr als linearen Wachstumszone, die für Systeme typisch ist, die unter dem Druck stehen, scalability zu zeigen, ist es für Softwaresysteme von entscheidender Bedeutung, schnelles Wachstum ohne Engpässe auf effektiver Ebene bewältigen zu können.
„Wenn Systemengpässe auftreten, sind Unternehmen in der Regel dazu gezwungen, verschiedene Verfahren zur Neuarchitektur durchzuführen, die natürlich weitreichende Auswirkungen haben können, wenn sie in kritischen Momenten beim Betrieb geschäftskritischer Anwendungen und Dienste auftreten“, sagte Rob Tribe, Vizepräsident für Systemtechnik bei EMEA-Region beim Cloud-Plattform-Unternehmen Nutanix.
„Der Umgang mit Cloud Computing unter Berücksichtigung von scalability in diesem Zusammenhang sollte Unternehmen dazu veranlassen, nach Plattformen und Tools zu suchen, die in der Lage sind, Hybrid Cloud auf möglichst benutzerfreundliche, benutzerfreundliche, verwaltbare und im Wesentlichen skalierbare Weise anzubieten. Merkmale wie einfachere Verpackungs-, Mess- und Preismodelle in Kombination mit Automatisierung zur Bereitstellung von Selbstheilungs- und Disaster Recovery (DR)-Funktionen können hier von entscheidender Bedeutung sein; Dies sind die Zutaten, die es einem Unternehmen ermöglichen, kompetenter auf unvorhersehbare Ausweitungen der Arbeitslast und häufige Technologie-Updates zu reagieren“, fügte Tribe von Nutanix hinzu.
IT & Business Scalability
Alles in allem ist die Cloud sicherlich die Antwort, d. h. sie ermöglicht es uns, auf dem zu arbeiten, was viele Leute Webscale-Ebene nennen, ein Hinweis darauf, dass das Netzwerk, auf das wir über Cloud-Dienste zugreifen, potenziell genauso expansiv ist wie das Web selbst. Aber sollte dieser Gedanke nicht auch mit der Geschäftsstrategie harmonieren?
Die Antwort ist offensichtlich ja.
Aber die nächste Frage ist; Wie skalieren Sie Ihre Mitarbeiter und insbesondere Ihre Entwickler? Das ist die scalability Herausforderung, vor der die meisten Unternehmen stehen. No-Code- und Low-Code-Technologien liefern allmählich Antworten, helfen Entwicklern, produktiver zu werden und geben mehr Menschen in der IT die Möglichkeit, Apps zu erstellen. Angesichts des weltweiten Mangels an Entwicklern kann die Lösung zur Skalierung der Entwicklerressourcen nicht einfach in mehr Programmierern liegen. Stattdessen sollten Unternehmen versuchen, Technikern, die nicht programmieren können, die Möglichkeit zu geben, Lösungen zu entwickeln, die geschäftliche Probleme lösen“, sagte Mat Rule, CEO von Toca, einem Unternehmen, das für seine No-Code-Enterprise-Entwicklungsplattform bekannt ist, die es Unternehmen ermöglicht, Entwicklungsergebnisse zu beschleunigen und Entwickler freizustellen sich auf die geschäftskritische Entwicklung zu konzentrieren.
Ein scalability-zentriertes IT-Stack-Betriebsmodell kann nur aus einem scalability-zentrierten Unternehmensbetriebsmodell hervorgehen und von diesem gesteuert werden, bei dem alle Unternehmensressourcen (Technologie, physische Gebäude, Menschen, Rohstoffe und Geschäftskultur) als fertige Lösung existieren. maßstabsgetreues Element des gesamten kommerziellen Angebots, das ein Unternehmen aufbauen möchte.
Im Gegensatz zu den anderen Aspekten der Skalierung sind Daten normalerweise nicht kurzlebig. Das bedeutet, dass Transaktionen erstellt werden, je mehr Benutzer sich engagieren.“ Es werden mehr Daten erstellt. Dieses Datenwachstum kann mit Kosten verbunden sein – mangelnde Flexibilität, größere Angriffsfläche, dunkle Daten, die in Silos vorhanden sind. Im Cloud-Zeitalter müssen Datensysteme flexibel sein, um skalierbar zu sein nahtloser Übergang in einer Multi-Cloud-Welt, dynamische Neuausrichtung auf der Grundlage von Arbeitslastverschiebungen und dies unter Anwendung der Prinzipien der Zero-Trust-Sicherheit, die auf den Datenzugriff selbst angewendet werden“, sagte Matt Waxman, Chief Solutions Officer bei Datenmanagement und Spezialist für softwaredefinierte Backups Zusammenhalt Chief Operating Officer.
Scalability’s Die nächste Mission wird nachhaltig sein scalability, ein Begriff und ein Thema, das bisher noch nicht umfassend diskutiert wurde. Wenn wir die Technologie skalieren, sollte sich unsere Verantwortung jetzt wohl darauf konzentrieren, zu prüfen, wie viel Wachstum wir mit wiederverwendbaren Technologieressourcen schaffen können, da wir uns jetzt für die Kreislaufwirtschaft einsetzen – und das gilt sowohl für wiederverwendete virtualisierte Softwareressourcen als auch für physische Hardwarekomponenten.
Die Waage ist gut, aber die grüne, saubere und klimaneutrale Waage ist viel besser. Lasst uns aufräumen, bevor wir erwachsen werden.