Avro: декодирование с использованием многопроцессорности в PythonPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Avro: декодирование с использованием многопроцессорности в Python

Сообщение Anonymous »

Какой асинхронный подход лучше подходит для декодирования сообщения Avro, полученного из темы Kafka, с точки зрения лучшей производительности и меньшей задержки?
Я использовал параллельные фьючерсы с Avro библиотеки, и я все еще вижу такое же время выполнения по сравнению с тем, которое было выполнено без использования параллельных фьючерсов.
from avro.io import BinaryDecoder, DatumReader
from confluent_kafka.avro.cached_schema_registry_client import CachedSchemaRegistryClient

class DoIt():
def some_method():
with concurrent.futures.ProcessPoolExecutor(max_workers=multiprocessing.cpu_count()) as executor:
msg_cnt_type_futures = [executor.submit(CatalogExporter.decode_avro, avro, self.schema_url) for avro in avro_list]

@staticmethod
def decode_avro(payload_tuple, schema_url):
# print("Process ID:", os.getpid())
msg_id, current_msg_offset, payload = payload_tuple
magic, schema_id = struct.unpack('>bi', payload[:5])
register_client = CachedSchemaRegistryClient(url=schema_url)

# Get Schema registry
# Avro value format
if magic == MAGIC_BYTES:
schema = register_client.get_by_id(schema_id)
reader = DatumReader(schema)
output = BinaryDecoder(io.BytesIO(payload[5:]))
decoded = reader.read(output)
return msg_id, current_msg_offset, decoded, schema.name
# no magic bytes, something is wrong
else:
raise ValueError



Подробнее здесь: https://stackoverflow.com/questions/788 ... -in-python
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • При выполнении org.apache.avro:avro-maven-plugin:1.11.3:schema: org/apache/avro/Schema$Parser отсутствовал необходимый к
    Anonymous » » в форуме JAVA
    0 Ответы
    66 Просмотры
    Последнее сообщение Anonymous
  • C# и AVRO. Проблема декодирование заголовка AVRO
    Anonymous » » в форуме C#
    0 Ответы
    30 Просмотры
    Последнее сообщение Anonymous
  • Что мне нужно установить для Avro-tools.jar, чтобы работать с Snappy-Compresed Avro-файлами?
    Anonymous » » в форуме JAVA
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous
  • Что мне нужно установить для Avro-tools.jar, чтобы работать с Snappy-Compresed Avro-файлами?
    Anonymous » » в форуме Linux
    0 Ответы
    52 Просмотры
    Последнее сообщение Anonymous
  • Почему мой avro-tools.jar не распознает сносовые файлы avro?
    Anonymous » » в форуме JAVA
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»