Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
— |
engine:procedures:mi_getstorageallocinfo_ad [11.01.2016 ] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ===== mi_GetStorageAllocInfo_Ad ===== | ||
+ | |||
+ | Ermittelt Informationen zur Speicherbelegung von bestimmten Objekten (Tabellen oder Datenbanken).\\ | ||
+ | |||
+ | Anmerkungen zum Parameter "GetStorageAllocInfoFor":\\ | ||
+ | |||
+ | In diesem Parameter wird angegeben, zu welchen Objekten die Informationen zur Speicherbelegung ermittelt werden sollen. Mögliche Werte sind : | ||
+ | * 'AllUserTables' : Zu allen Benutzer-Tabellen (ausgenommen also System-Tabellen) in der Datenbank, in der diese Prozedur hier gespeichert ist, wird der Speicherverbrauch (nach Daten und Indizes getrennt) ermittelt (sowie die Anzahl Datensätze) - inkl. einer "Summen-Zeile". | ||
+ | * 'Top10UserTables' : Es werden die 10 Benutzer-Tabellen (ausgenommen also System-Tabellen) in der Datenbank, in der diese Prozedur hier gespeichert ist, mit dem größten Speicherverbrauch ermittelt und zusammen mit denselben Informationen wie im Fall 'AllUserTables' ausgegeben. | ||
+ | * '<DB-Name>' : Es wird die Speicher-Belegung der angegebene Datenbank, nach Segmenten unterteilt, ermittelt | ||
+ | ACHTUNG : Erlaubte DB-Namen sind sämtliche "dstore..."-DBs, sowie System-Datenbanken (z.B. "master") und der Name der Datenbank, in der diese Prozedur hier gespeichert ist. D.h. bei Installationen, wo mehrere "Engines" auf einem ASE vorhanden sind, wird so verhindert, daß man Informationen über eine andere "Engine" erlangen kann. | ||
+ | * '<Tabellen-Name>' : Der Speicher-Verbrauch der angegebenen Tabelle (nach Daten und Indizes getrennt) wird ermittelt (sowie die Anzahl Datensätze) | ||
+ | Anmerkung : Die spezielle Tabelle "syslogs" wird nicht unterstützt, daher gibt es ggf. "-500" !\\ | ||
+ | |HTTP-Method|GET | | ||
+ | |HTTP-Auth|Optional | | ||
+ | |Alias|mi_GetStorageAllocationInformation_Ad | | ||
+ | |Tags|{{tag>[mi Get Storage Allocation Information Ad]}}| | ||
+ | |Engine-Kategorie|system administration | | ||
+ | |Engine-Typ|Daten-Ermittlung | | ||
+ | |Letzte Aktualisierung|7.0.7 (2015-01-29)| | ||
+ | |||
+ | ==== Parameter ==== | ||
+ | |||
+ | |GetStorageAllocInfoFor|'AllUserTables' |Für welche(s) Objekt(e) Infos zur Speicherbelegung ermittelt werden sollen (s. Beschreibung) :\\ - "AllUserTables" : Alle Benutzer-Tabellen\\ - "Top10UserTables" : Top-10 Benutzer-Tabellen\\ - <sonst> : Name einer Datenbank oder Tabelle\\ |varchar(50)|6.0.7| | ||
+ | ==== Rückgabe ==== | ||
+ | |||
+ | === wenn GetInfoForADatabase (Pseudo-Parameter) = 1 === | ||
+ | |||
+ | ^Spaltenname ^Beschreibung ^SQL-Datentyp((siehe [[:webservice:engine_datatypes|Datentypen im Bereich "engine"]])) ^ab Version ^ | ||
+ | |DBName|Name der in "GetStorageAllocInfoFor" angegebenen Datenbank\\ |varchar(50)|6.0.7 | | ||
+ | |SegmentName|Name eines Segments in der Datenbank "DBName"\\ |varchar(50)|6.0.7 | | ||
+ | |MB_allocated|Wieviel MB für "SegmentName" alloziert sind, sprich die Größe des Segments\\ |decimal(12,2)|6.0.7 | | ||
+ | |MB_used|Wieviel MB "SegmentName" derzeit tatsächlich belegt.\\ Anmerkung : Im Falle des Log-Segments ("SegmentName = 'log only'") ist dies "MB_allocated" ABZÜGLICH für "rollbacks" reserviertem Speicher und Anzahl freier Pages im Log-Segment.\\ |decimal(12,2)|6.0.7 | | ||
+ | |MB_free|Wieviel MB von "SegmentName" noch belegt werden können.\\ Anmerkung : Im Falle des Log-Segments ("SegmentName = 'log only'") ist dies die Anzahl freier Pages im Log-Segment ABZÜGLICH für "rollbacks" reserviertem Speicher.\\ |decimal(12,2)|6.0.7 | | ||
+ | |FreeSpaceInPercent|Wieviel Prozent von "SegmentName" noch frei sind (also das Verhältnis von "MB_free" zu "MB_allocated" in Prozent)\\ |numeric|6.0.7 | | ||
+ | === wenn GetInfoForADatabase (Pseudo-Parameter) = 0 === | ||
+ | |||
+ | ^Spaltenname ^Beschreibung ^SQL-Datentyp((siehe [[:webservice:engine_datatypes|Datentypen im Bereich "engine"]])) ^ab Version ^ | ||
+ | |TableName|Name einer Tabelle, auf die sich die weiteren Spalten beziehen (für die also der Speicher-Verbrauch bestimmt wurde)\\ |varchar(50)|6.0.7 | | ||
+ | |TableSize_MB|Gesamte Größe der Tabelle "TableName" in MB\\ |decimal(12,2)|6.0.7 | | ||
+ | |NumberOfRows|Anzahl Datensätze in der Tabelle "TableName"\\ |integer|6.0.7 | | ||
+ | |DataSize_MB|Speicherverbrauch für die Daten der Tabelle "TableName" in MB\\ |decimal(12,2)|6.0.7 | | ||
+ | |IndexSize_MB|Speicherverbrauch für die Indizes der Tabelle "TableName" in MB\\ |decimal(12,2)|6.0.7 | | ||
+ | |NumberOfIndexes|Anzahl Indizes der Tabelle "TableName"\\ |smallint|6.0.7 | | ||
+ | |||
+ | == Sortierung der Rückgabe == | ||
+ | |||
+ | (parameterunabängige Sortierung) | ||
+ | * TableSize_MB (absteigend) | ||
+ | |||
+ | ==== Output-Parameter ==== | ||
+ | |||
+ | Die Prozedur hat keine Output-Parameter.==== Mögliche Return-Codes ==== | ||
+ | |||
+ | ^Code ^Beschreibung ^Quelle ((direkt meint "von der Prozedur selber" und indirekt meint "von intern aufgerufenen Unterprozeduren")) ^ | ||
+ | |-569|Der Benutzer hat kein Ausführungsrecht für die Prozedur|nur indirekt| | ||
+ | |-567|Die Prozedur darf z. Zt. nicht ausgeführt werden|nur indirekt| | ||
+ | |-566|Die Prozedur darf mit den übergebenen Parametern nicht ausgeführt werden|nur indirekt| | ||
+ | |-535|Das Datum liegt nicht in der Vergangenheit|nur indirekt| | ||
+ | |-530|Der Wert ist nicht konvertierbar|nur indirekt| | ||
+ | |-510|Der Benutzer ist nicht registriert|nur indirekt| | ||
+ | |-504|Es ist ein Problem aufgetreten, das nicht gelöst werden kann, Prozedur wird daher abgebrochen|nur indirekt| | ||
+ | |-502|Die Parameter-Werte der Prozedur können nicht verarbeitet werden (kein passendes Trennzeichen)|nur indirekt| | ||
+ | |-500|Falsche Parameter|direkt und indirekt| | ||
+ | ==== XML-Schema ==== | ||
+ | |||
+ | Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema [[http://resources.dstore.de/xsd/webservice_SmartGate/Response/EngineProcedure_v1_0.xsd|Response/EngineProcedure_v1_0.xsd]] validiert. | ||
+ | ==== Historie ==== | ||
+ | |||
+ | |7.0.7 |2015-01-29|Interne Änderung : Datentyp-Erweiterung des "ReferenceKey" [für "_mi_StartProcedure"-Aufruf]\\ | | ||
+ | |6.5.3 |2013-03-18|Interne Anpassungen wg. UTF8-Unterstützung\\ | | ||
+ | |6.0.7 |2012-05-08|Erstmalig in dieser Version erstellt\\ | | ||
+ | |||
+ | ==== Code-Snippets ==== | ||
+ | |||
+ | == Engine Playground == | ||
+ | Der folgende Link öffnet in einem separaten Fenster den Engine Playground der fest mit dem dbap-demo System verbunden ist: | ||
+ | * [[http://playground.dstore.de/index.php?proc=mi_GetStorageAllocInfo_Ad|mi_GetStorageAllocInfo_Ad im Engine Playground öffnen]] | ||
+ | == cURL == | ||
+ | Unformatierte Ausgabe: | ||
+ | <code bash> | ||
+ | curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/mi_GetStorageAllocInfo_Ad'</code>Mit xmllint ((I.d.R. auf Unix-artigen Systemen bereits installiert, Bestandteil der libxml2, siehe http://www.xmlsoft.org)) formatierte Ausgabe: | ||
+ | <code bash> | ||
+ | curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/mi_GetStorageAllocInfo_Ad' | xmllint --format -</code>== dStore_php == | ||
+ | <code php> | ||
+ | use dStore_php\WebService; | ||
+ | |||
+ | $service = new WebService\Service( WebService\Scheme::HTTP,'<partner>-<project>.dstore.de', 80); | ||
+ | |||
+ | $request = new WebService\Requests\Engine\Procedure\Request( | ||
+ | new WebService\Requests\AccessData('default'), | ||
+ | 'mi_GetStorageAllocInfo_Ad', | ||
+ | array( | ||
+ | // 'GetStorageAllocInfoFor' => 'AllUserTables' | ||
+ | ) | ||
+ | ); | ||
+ | |||
+ | $service->execute($request); | ||
+ | |||
+ | $xml_result = $request->getResponse()->getBody()->toSimpleXmlDocument(); | ||
+ | $ResultSet = $xml_result->getRowsAsArray(); | ||
+ | |||
+ | </code> | ||
+ | == engine/execute == | ||
+ | XML zur Ausführung mit der Methode [[:webservice:engine:execute|engine/execute]], z.B. per | ||
+ | curl --header 'Content-Type: application/xml' -X POST 'http://<partner>-<kunde>.dstore.de/default/engine/execute' -d '<xml-daten>' | ||
+ | |||
+ | <code xml> | ||
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
+ | <ListOfBatches> | ||
+ | <Batch No="0"> | ||
+ | <Procedure Name="mi_GetStorageAllocInfo_Ad"> | ||
+ | <Parameters> | ||
+ | <!-- <Parameter Name="GetStorageAllocInfoFor">'AllUserTables'</Parameter> --> | ||
+ | </Parameters> | ||
+ | </Procedure> | ||
+ | </Batch> | ||
+ | </ListOfBatches></code> | ||