Mikro-Batch-Verarbeitung - Spectrum_OnDemand - spectrum_platform - web_services - 23 - 23.1

Spectrum-Webdienste-Handbuch

Product type
Software
Portfolio
Integrate
Product family
Spectrum™ software
Product
Spectrum™ software > Web Services
Version
23.1
ft:locale
de-DE
Product name
Spectrum Technology Platform
ft:title
Spectrum-Webdienste-Handbuch
First publish date
2007
ft:lastEdition
2023-10-25
ft:lastPublication
2023-10-25T07:20:03.279000

Bei der Mikro-Batch-Verarbeitung handelt es sich um eine Methode, bei der Sie mehr als einen Datensatz in eine einzelne Dienstanforderung aufnehmen können. Wenn Sie eine umfangreiche Sammlung an Datensätzen über einen Dienst verarbeiten, können Sie die Leistung bedeutend verbessern, indem Sie mehrere Datensätze in eine Anforderung aufnehmen, statt separate Anforderungen für jeden Datensatz auszustellen. Spectrum Technology Platform unterstützt die Mikro-Batch-Verarbeitung für REST- und SOAP-Webservices.

Mikro-Batch-Endpunkt

Verwenden Sie für AMER amer-microbatch.precisely.com. Dieser Endpunkt weist eine Zeitüberschreitung von 5 Minuten auf, was größere Mikro-Batchgrößen ermöglicht.
Verwenden Sie für EMEA emea-microbatch.precisely.com. Dieser Endpunkt weist eine Zeitüberschreitung von 5 Minuten auf, was größere Mikro-Batchgrößen ermöglicht.
Verwenden Sie für APAC den Standardendpunkt, da kein spezieller Mikro-Batch-Endpunkt vorhanden ist. Dieser Endpunkt weist eine Zeitüberschreitung von 30 Sekunden auf, sodass die Anzahl der Datensätze in einem Mikro-Batch kleiner sein muss.

Mikro-Batchgröße

Da AMER und EMEA den speziellen Mikro-Batch-Endpunkt verwenden, können Sie so viele Datensätze ablegen, wie innerhalb eines 5-Minuten-Timeouts möglich sind. Ihnen wird jeder Datensatz in der Anforderung in Rechnung gestellt, auch wenn es zu einer Zeitüberschreitung kommt. Daher sollten Sie die Anzahl der Datensätze entsprechend auswählen, sodass sie in 4 Minuten verarbeitet werden können, falls die Verarbeitung länger dauert.

Da für APAC der Standardendpunkt verwendet wird, hängt die maximale Anzahl an Datensätzen, die in einer Anforderung zugelassen ist, von der Kategorie des Dienstes ab.

Dienstkategorie Maximale Anzahl an eingegebenen Entitäten
Addressing 25
Analytisch 10
Datenqualität 10
Geocoding 25
Consumer Insight 10
PSAP 25
Routenführung 1
Spatial 1
Steuerhoheit 25
Telco 1

Jeder Mikro-Batchaufruf muss synchron erfolgen (jeweils 1). Senden Sie die Anforderung, und warten Sie auf die Antwort, bevor Sie eine weitere Anforderung senden. Durch asynchrone Mikro-Batchaufrufe wird Spectrum Technology Platform gegebenenfalls überfordert, sodass die Leistung für andere Kunden möglicherweise gemindert wird. Wenn Sie asynchrone Abrufe oder zu große Mikro-Batches verwenden, wird Ihr Konto eventuell deaktiviert. So wird sichergestellt, dass es keine Beeinträchtigungen gibt, wenn andere Kunden Spectrum Technology Platform verwenden.

Verwenden einer Datensatz-ID

Es ist eventuell hilfreich, jedem Datensatz in einem Mikro-Batch eine ID zuzuweisen, sodass Sie die Datensätze in der Anforderung mit den in der Antwort zurückgegebenen Datensätzen in Beziehung setzen können. Führen Sie dies anhand von Benutzerfeldern durch.Informationen zu Benutzerfeldern erhalten Sie unter Die REST-Schnittstelle.Informationen zu Benutzerfeldern erhalten Sie unter Die SOAP-Schnittstelle.

Mikro-Batch-Verarbeitung in REST

Nehmen Sie zwei oder mehr Datensätze als XML oder JSON in den Text der Anforderung auf, und senden Sie die Anforderung über die POST-Methode, um die Mikro-Batch-Verarbeitung mit einem REST-Webservice durchzuführen. Weitere Informationen zum Senden einer POST-Anforderung an einen Spectrum Technology Platform-Webservice erhalten Sie unter JSON POST-Anforderung und XML POST-Anforderung.

Beispiel: Die folgende Anforderung enthält zwei Datensätze als XML im Text der Anforderung:

POST https://spectrum.precisely.com/rest/ValidateAddressPOST/results.xml HTTP/1.1 Accept-Encoding: gzip,deflate Content-Type: application/xml Authorization: Basic YWRtaW46YWRtaW4= Content-Length: 533 Host: spectrum.precisely.com Connection: Keep-Alive User-Agent: Apache-HttpClient/4.1.1 (java 1.5)  <ValidateAddressPOSTRequest xmlns:svc="http://www.pb.com/spectrum/services/ValidateAddressPOST">     <svc:Input>        <svc:Row>           <svc:AddressLine1>3001 Summer</svc:AddressLine1>           <svc:City>Stamford</svc:City>           <svc:StateProvince>CT</svc:StateProvince>        </svc:Row>        <svc:Row>           <svc:AddressLine1>33 west monroe</svc:AddressLine1>           <svc:City>Chicago</svc:City>           <svc:StateProvince>IL</svc:StateProvince>        </svc:Row>     </svc:Input> </ValidateAddressPOSTRequest>
Anmerkung: In Diensten ist die POST-Unterstützung nicht standardmäßig aktiviert. Sie müssen die POST-Unterstützung aktivieren, um die Mikro-Batch-Verarbeitung mit diesen Diensten durchzuführen. Weitere Informationen finden Sie unter Hinzufügen von POST-Unterstützung zu einem REST-Webservice.

Mikro-Batch-Verarbeitung in SOAP

Nehmen Sie zwei oder mehr Datensätze in eine SOAP-Anforderung auf, um die Mikro-Batch-Verarbeitung in einem SOAP-Webservice durchzuführen. Die folgende Anforderung enthält beispielsweise zwei Datensätze:

POST http://spectrum.example.com:8080/soap/ValidateAddress HTTP/1.1 Accept-Encoding: gzip,deflate Content-Type: text/xml;charset=UTF-8 SOAPAction: "" Authorization: Basic YWRtaW46YWRtaW4= Content-Length: 782 Host: config813vm0:8080 Connection: Keep-Alive User-Agent: Apache-HttpClient/4.1.1 (java 1.5)  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:val="http://www.pb.com/spectrum/services/ValidateAddress">    <soapenv:Header/>    <soapenv:Body>       <val:ValidateAddressRequest>          <val:input_port>             <val:Address>                <val:AddressLine1>1 N. State St.</val:AddressLine1>                <val:City>Chicago</val:City>                <val:StateProvince>IL</val:StateProvince>             </val:Address>             <val:Address>                <val:AddressLine1>3001 summer</val:AddressLine1>                <val:City>stamford</val:City>                <val:StateProvince>ct</val:StateProvince>             </val:Address>          </val:input_port>       </val:ValidateAddressRequest>    </soapenv:Body> </soapenv:Envelope>

Mikro-Batch-Verarbeitung in der Client-API

Senden Sie mehrere Datenzeilen in der Anforderung, um die Mikro-Batch-Verarbeitung in einer API-Anforderung an einen Dienst durchzuführen. Beispiel: Bei der folgenden .NET-Klasse werden zwei Zeilen in der Anforderung gesendet:

using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Net; using System.Text; using ConsoleApplication1.ValidateAddress_Reference;  namespace Test {     class Program     {         static void Main(string[] args)         {             var validateClient = new ValidateAddress {Credentials = new NetworkCredential("admin", "admin")};              var address1 = new input_portAddress             {                 AddressLine1 = "1825B Kramer Lane",                 AddressLine2 = "Suite 100",                 PostalCode = "78758",                 City = "Austin",                 StateProvince = "Texas"             };              var address2 = new input_portAddress             {                 AddressLine1 = "100 Congress",                  PostalCode = "78701",                  City = "Austin",                  StateProvince = "Texas"             };              var addresses = new input_portAddress[2];             addresses[0] = address1;             addresses[1] = address2;              var options = new options {OutputCasing = OutputCasing.M};             output_portAddress[] results = validateClient.CallValidateAddress(options, addresses);              for (int i = 0; i < results.Length; i++)             {                 System.Console.WriteLine("Record " + (i+1) + ":");                 System.Console.WriteLine("AddressLine1=" + results[i].AddressLine1);                 System.Console.WriteLine("City=" + results[i].City);                 System.Console.WriteLine("StateProvince=" + results[i].StateProvince);                 System.Console.WriteLine("PostalCode=" + results[i].PostalCode + "\n");             }                          System.Console.Write("Press any key to continue...");             System.Console.ReadKey();         }     } }
Tipp: Trennen Sie die Verbindung zwischen Anforderungen nicht. Durch das Trennen und Herstellen einer Verbindung wird die Leistung eventuell reduziert.