Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
På den här sidan beskrivs kända begränsningar för realtidsläge i Strukturerad direktuppspelning.
Källbegränsningar
För Kinesis stöder realtidsläget inte avsökningsläge. Dessutom kan frekventa ompartitioner påverka svarstiden negativt.
Unionsbegränsningar
Unionsoperatören har vissa begränsningar:
- Självunion stöds inte:
- För Kafka kan du inte använda samma källdataramobjekt och union härledda dataramar från det. Som en lösning använder du olika DataFrames som läser från samma källa.
- För Kinesis kan du inte förena dataramar som härletts från samma Kinesis-källa med samma konfiguration. Som en lösning kan du i stället för att använda olika DataFrames tilldela ett annat
consumerNamealternativ till varje DataFrame.
- Tillståndskänsliga operatorer (till exempel
aggregate,deduplicate,transformWithState) kan inte definieras före unionen. - Sammanfogning med batchkällor stöds inte.
mapPartitions Begränsning
mapPartitions i Scala och liknande API:er för Python (mapInPandas, mapInArrow) tar en iterator för hela indatapartitionen och skapar en iterator för hela utdata med godtycklig mappning mellan indata och utdata. Dessa API:er kan orsaka prestandaproblem i realtidsläge genom att blockera hela utdata, vilket ökar svarstiden. Semantiken för dessa API:er stöder inte effektivt vattenstämpelspridning.
Använd skalära UDF:er i kombination med Transformera komplexa datatyper eller filter i stället för att uppnå liknande funktioner.
transformWithStateInPandas stöds inte
Operatorn transformWithStateInPandas stöds inte i realtidsläge. Om du behöver anpassad tillståndskänslig bearbetning i Python med realtidsläge använder du det radbaserade transformWithState API:et i stället. Det radbaserade API:et har samma tillståndskänsliga bearbetningsfunktioner med hjälp av Row objekt i stället för Pandas DataFrames.
Se transformWithState i realtidsläge för information om transformWithState beteende i realtidsläge och Real-time-lägesexempel för ett fungerande Python exempel med hjälp av radbaserat API.