Форматер и проверщик схем Apache Avro

ДанныеРазработчикТекст
Реклама · УДАЛИТЬ?

Или

Параметры

Результаты проверки появятся здесь.
Реклама · УДАЛИТЬ?

Гид

Форматчик и проверщик схем Apache Avro

Форматчик и проверщик схем Apache Avro

Вставьте схему Apache Avro в формате JSON и получите её красиво отформатированную и проверенную в соответствии с официальным спецификацией Avro прямо в браузере. Инструмент выявляет проблемы, которые пропускают простые проверщики JSON или большие языковые модели — неверные объединения типов, значения по умолчанию, не совпадающие с первым ветвью объединения, дублирование имен полей, неразрешённые ссылки на типы, символы перечислений, нарушающие правила названий, и другие.

Он также генерирует Формат парсинга определённый спецификацией Avro, который является детерминированным представлением, используемым для отпечатков схем и проверки совместимости между производителями и потребителями.

Как использовать

  1. Вставьте ваш .avsc Вставьте схему (в формате JSON) в область ввода, или перетащите файл на загрузчик.
  2. Выберите стиль отступов, который вы хотите использовать для отформатированного вывода — 2 пробела, 4 пробела, табуляция или полностью сжатый.
  3. Опционально отметьте Сортировка ключей объектов по алфавиту для детерминированных изменений между версиями схемы.
  4. Проверка Вывод в формате парсинга при необходимости использования входного отпечатка, определённого спецификацией. Опции отступа и сортировки игнорируются в этом режиме.
  5. Просмотрите зелёную/красную полосу сверху от вывода — она показывает, является ли схема валидной или невалидной, а также количество записей, полей, перечислений, объединений и фиксированных типов. Предупреждения (например, значение по умолчанию, не являющееся null, не совпадающее с первым ветвью объединения) появляются ниже.
  6. Используйте кнопку копирования или загрузки в выходной раздел для экспорта отформатированной схемы.

Возможности

  • Строгая проверка спецификации Avro — проверяет примитивные и сложные типы, синтаксис имени и пространства имен, правила ветвей объединения и обнаружение дублирования имен типов.
  • Совместимость значений по умолчанию — проверяет каждое значение по умолчанию на соответствие его объявленному типу, с особым обращением к правилу первой ветви объединения.
  • Разрешение имен типов — разрешает ссылки вроде com.example.User на более ранние определения в том же документе.
  • Формат парсинга — генерирует детерминированный JSON, определённый спецификацией, используемый для отпечатков схем.
  • Опции форматирования — 2 или 4 пробела, табуляция или сжатый вывод, с опциональной сортировкой ключей по алфавиту для стабильных изменений.
  • Встроенные статистики — количество записей, полей, перечислений, объединений и фиксированных типов, отображаемых после каждой проверки.
  • Работает полностью в браузере — схема не загружается на сервер, поэтому инструмент безопасен для проприетарных или внутренних схем.

Реклама · УДАЛИТЬ?

Часто задаваемые вопросы

  1. Что такое Apache Avro?

    Apache Avro — это система сериализации данных на основе строк, широко используемая в экосистемах Hadoop и Kafka. Она описывает данные с помощью схемы в формате JSON и сериализует нагрузки в компактном бинарном формате. Схема сопровождает (или ссылается) данные, что и делает Avro популярным для эволюционирующих данных-потоков.

  2. Почему значения по умолчанию в Avro должны соответствовать первой ветви объединения?

    Читатели Avro определяют объединение, сопоставляя индекс ветви, записанной автором, с соответствующей ветвью читателя. Когда поле отсутствует в данных, читатель не имеет индекса для сопоставления, поэтому спецификация требует, чтобы значение по умолчанию было представимым в первой ветви читателя. Именно поэтому поля с типом null традиционно записываются как ['null', T] с значением по умолчанию null.

  3. Что такое формат парсинга?

    Это нормализованная сериализация JSON, определённая спецификацией Avro. Короткие имена заменяются полностью квалифицированными именами, несущественные атрибуты, такие как doc и aliases, удаляются, порядок ключей фиксируется, и все пробелы удаляются. Две схемы генерируют одинаковый формат парсинга (и одинаковый отпечаток) при семантической эквивалентности, даже если их авторские JSON различаются.

  4. Как разрешаются пространства имен?

    Имя без точки квалифицируется наиболее вложенным пространством имен. Имя с точкой рассматривается как полное имя и используется без изменений. Каждый элемент (запись, перечисление, фиксированный тип) должен иметь уникальное полное имя в рамках схемы документа.

  5. Поддерживаются логические типы?

    Логические типы, такие как десятичное число, дата, время в миллисекундах и временная метка в миллисекундах, являются примитивными типами Avro с дополнительными аннотациями. Этот инструмент проверяет основной примитивный тип и сохраняет метаданные логического типа в отформатированном выводе, но не обеспечивает логические ограничения (например, точность и масштаб десятичного числа).

Хотите убрать рекламу? Откажитесь от рекламы сегодня

Установите наши расширения

Добавьте инструменты ввода-вывода в свой любимый браузер для мгновенного доступа и более быстрого поиска

в Расширение Chrome в Расширение края в Расширение Firefox в Расширение Opera

Табло результатов прибыло!

Табло результатов — это интересный способ следить за вашими играми, все данные хранятся в вашем браузере. Скоро появятся новые функции!

Реклама · УДАЛИТЬ?
Реклама · УДАЛИТЬ?
Реклама · УДАЛИТЬ?

новости с техническими моментами

Примите участие

Помогите нам продолжать предоставлять ценные бесплатные инструменты

Купи мне кофе
Реклама · УДАЛИТЬ?