- en
- Language: ru
- Documentation version: latest
IV. Запись и передача данных
В этой части книги рассматриваются вопросы сохранения и передачи данных. Данными могут быть, например:
вывод команд
обработанный вывод команд в виде словаря, списка и подобного
информация полученная из системы мониторинга
До сих пор рассматривался только самый простой вариант - запись информации в обычный текстовый файл.
В этой части рассматривается чтение и запись данных в форматах CSV, JSON и YAML:
CSV - это табличный формат представления данных. Он может быть получен, например, при экспорте данных из таблицы или базе данных. Аналогичным образом данные могут быть записаны в этом формате для последующего импорта в таблицу.
JSON - это формат, который очень часто используется в API. Кроме того, этот формат позволит сохранить такие структуры данных как словари или списки в структурированном формате и затем прочитать их из файла в формате JSON и получить те же структуры данных в Python.
Формат YAML очень часто используется для описания сценариев. Например, он используется в Ansible. Кроме того, в этом формате удобно записывать вручную параметры, которые должны считывать скрипты.
Примечание
Python позволяет записывать объекты самого языка в файлы и считывать их с помощью модуля Pickle, но этот аспект в книге не рассматривается.
Также в этой части рассматриваются базы данных. Хотя данные можно записать с соблюдением структуры и в CSV или JSON, запрашивать нужную информацию из файлов в этом формате не всегда удобно. Особенно, когда речь идет о более сложных запросах, в которых указаны несколько критериев.
Для задач такого рода отлично подходят базы данных. В разделе 25 рассматривается СУБД SQLite, а также основы языка SQL.