Изучение собранных файлов Avro в Центрах событий Azure
В этой статье представлена схема файлов Avro, собранных Центрами событий Azure, а также несколько средств для их изучения.
Схема
Файлы Avro, созданные записью с помощью функции "Сбор" в Центрах событий, имеют следующую схему Avro.
Обозреватель службы хранилища Azure
Вы можете убедиться, что захваченные файлы были созданы в учетной записи служба хранилища Azure с помощью таких средств, как служба хранилища Azure Explorer. Чтобы выполнить определенные действия с этими файлами, их можно скачать локально.
Файлы Avro можно легко просмотреть с помощью инструментов Avro (JAR-файла) из Apache. Вы также можете использовать Apache Spark для выполнения сложной распределенной обработки для приема данных.
Использование Apache Spark
Apache Spark — это "единый аналитический механизм для крупномасштабной обработки данных". Он поддерживает разные языки, включая SQL, и может легко связываться с хранилищем BLOB-объектов Azure. Существует несколько вариантов для запуска Apache Spark в Azure, и каждый обеспечивает легкий доступ к хранилищу BLOB-объектов Azure:
- HDInsight: Обращение к файлам в хранилище Azure
- Azure Databricks: хранилище BLOB-объектов Azure. См. нижеприведенный пример: Масштабная потоковая передача со сбором центров событий.
- Служба Azure Kubernetes
Использование средств Avro
Средства Avro доступны в виде пакета JAR. После того как вы загрузили этот JAR-файл, чтобы просмотреть схему определенного файла Avro, выполните следующую команду:
java -jar avro-tools-1.9.1.jar getschema <name of capture file>
Эта команда возвращает следующее:
{
"type":"record",
"name":"EventData",
"namespace":"Microsoft.ServiceBus.Messaging",
"fields":[
{"name":"SequenceNumber","type":"long"},
{"name":"Offset","type":"string"},
{"name":"EnqueuedTimeUtc","type":"string"},
{"name":"SystemProperties","type":{"type":"map","values":["long","double","string","bytes"]}},
{"name":"Properties","type":{"type":"map","values":["long","double","string","bytes"]}},
{"name":"Body","type":["null","bytes"]}
]
}
Средства Avro можно также использовать для преобразования файлов в формат JSON и выполнения других задач обработки.
Чтобы выполнить более расширенную обработку, скачайте и установите Avro для определенной платформы. На момент написания статьи средства Avro доступны для следующих платформ: C, C++, C#, Java, NodeJS, Perl, PHP, Python и Ruby.
Apache Avro предоставляет руководства по началу работы для платформ Java и Python. Дополнительные сведения см. в статье Пошаговое руководство. Использование функции "Сбор" в Центрах событий с Python.
Следующие шаги
Функция "Сбор" в Центрах событий — это самый быстрый способ передать данные в Azure. С помощью знакомых средств и платформ (Azure Data Lake, фабрики данных Azure и Azure HDInsight) можно выполнять необходимую пакетную обработку и другие операции анализа в любом масштабе. Дополнительные сведения об этой функции см. в приведенных ниже статьях.