#11. Стандарты работы с данными
Хрун-Варвар согласно стандартам Пупземелья считался чуть ли не академиком, поскольку умел думать, не шевеля при этом губами. (с) Цвет волшебства
Я давно планировал написать про проблемы стандартизации работы с данными, она не так заметна в узкосфокусированных областях, но становится более чем актуальной когда много разных, часто малоуправляемых, источников данных публикующих данные о схожих объектах в разных форматах.
Прежде чем продолжить надо дать два определения:
стандарты метаданных - это способы описания хранимых наборов данных и иных цифровых объектов (digital assets). Они используются для того чтобы максимально полно хранить сведения о происхождении данных, первоисточнике, частоте обновления, форматах и иной сопутствующей информации которая необходима при обработке этих данных. Эти стандарты используются при каталогизации данных.
стандарты данных - это описание структур данных внутри набора данных. Они используются для того чтобы максимально удобно описать то что содержится в данном наборе данных. Стандарты данных используются при подготовке данных и их распространении.
И тех и других существует великое множество, я приведу кратко основные и далее уже по проблемам с ними связанными.
Стандарты и форматы
Каталоги данных и стандарты публикации метаданных
каталог стандартов работы с данными от GovEx&Geothink https://datastandards.directory/ - большой каталог стандартов утилитарного применения, включает оценку их открытости, пригодности к применению в других юрисдикциях
стандарты работы с данными на Data.gov https://resources.data.gov/standards/ - перечень стандартов, сообществ и инструментов работы со стандартами работы с данными
каталог стандартов метаданных от DCC (Digital Curation Center) в UK https://www.dcc.ac.uk/guidance/standards/metadata/list - имеет фокус на стандарты метаданных архивируемых данных
Egeria - Open Metadata and Governance https://github.com/odpi/egeria - попытка создать единый стандарт метаданных в корпоративных каталогах данных
OpenLineage https://github.com/OpenLineage/OpenLineage - ещё один подход к единой структуре метаданных в корпоративных каталогах
OAI-PMH (Open Archives InitiativeProtocol for Metadata Harvesting) https://www.openarchives.org/pmh/ стандарт используемый в цифровых архивах, используемый для метаданных любых цифровых объектов
Стандарты каталогизации данных
Dublin Core http://dublincore.org/ - базовый стандарт описания большей части метаданных любых объектов
Data Catalog Vocabulary (DCAT) - Version 2 https://www.w3.org/TR/vocab-dcat-2/ - стандарт ведения и публикации каталогов данных, используется значительной частью платформ
DCAT-US https://resources.data.gov/resources/dcat-us/ - расширение стандарта DCAT структурами данных актуальными для каталогов данных в США
DataCite Metadata Schema https://schema.datacite.org/ - стандарты публикации исследовательских данных используемый DataCite, выдающим постоянные идентификаторы DOI публикациям с данными
Стандарты публикации геоданных
CSW https://www.ogc.org/standards/cat - стандарты публикации метаданных р геоданных от Open Geospatial Consortium
INSPIRE https://inspire.ec.europa.eu/quick-overview-implementers/57528 стандарты описания метаданных и данных от программы открытой инфраструктуры геоданных INSPIRE в Евросоюзе
GeoJSON https://geojson.org/ - стандарт кодирования геоданных, RFC 7946
ShapeFile https://www.esri.com/library/whitepapers/pdfs/shapefile.pdf - популярный стандарт публикации геоданных разработанный и поддерживаемый компанией Esri
ISO 19115:2003 https://www.iso.org/standard/26020.html - стандарт ISO по описанию метаданных геоданных
Стандарты публикации API
The OpenAPI Specification https://www.openapis.org/ - консорциум и стандарт описания API, развитие стандарта Swagger
RAML https://raml.org/ - спецификация и инструменты моделирования API
API Blueprint https://apiblueprint.org/ - ещё одна спецификация моделирования API
HAL - Hypertext Application Language http://stateless.co/hal_specification.html - спецификация описания API как гипермедиа
Hydra Core Vocabulary https://www.hydra-cg.com/spec/latest/core/ - пока на уровне черновика, также описание API как гипермедиа
Стандарты публикации статистических данных
SDMX https://sdmx.org - международный стандарт публикации официальной статистики
Data Documentation Initiative https://ddialliance.org/ - международный стандарт публикации опросов и статистики
Стандарты описания объектов
Schema.org https://schema.org/ - набор стандартов описания объектов на веб-страницах для индексирования их поисковыми системами
реестр онтологий http://vocab.linkeddata.es/ - многочисленные онтологические описания предметных областей
Универсальные стандарты
Data Package (Frictionless Data) https://frictionlessdata.io/ - активно разрабатываемый и внедряемый стандарт описания и публикации данных в виде стандартизированных пакетов данных. Включает большое число инструментов по подготовке данных
Network Common Data Form (NetCDF) https://www.unidata.ucar.edu/software/netcdf/ - стандарт публикации научных данных используемый с конца 80-х годов
BagIt https://tools.ietf.org/html/rfc8493 - стандарт RFC 8493 по упаковке цифровых объектов. Активно используется государственными и научными архивами, например, DataOne и Библиотекой Конгресса США
Отраслевые стандарты данных*
Fiscal Data Package https://specs.frictionlessdata.io/fiscal-data-package/ - стандарт публикации финансовых данных о расходах и доходах
The General Transit Feed Specification https://developers.google.com/transit/gtfs - формат описания транспортной инфраструктуры, изначально разработан Google
Open Contracting https://standard.open-contracting.org/ - стандарт публикации данных о контрактах
IATI Standard https://iatistandard.org - стандарт публикации информации о международной помощи развивающимся странам
*здесь приведены далеко не все отраслевые стандарты, поскольку их довольно много, а только наиболее заметные
Группы по стандартизации данных в государстве
Data Standards Authority https://www.gov.uk/government/groups/data-standards-authority - рабочая группа в Правительстве Великобритании по стандартизации данных
Web of Data https://www.w3.org/2013/data/ - рабочая группа в W3C по разработке стандартов по работе с данными
Тезисы и рассуждения
Какой-либо единой стандартизации данных нет в мире и в помине. Стандарты разбросаны по RFC, W3C, ISO и ещё большое число стандартов де-фактов и спецификаций разработанных коммерческими компаниями и отданными всем в открытый доступ.
Многие спецификации дублируют друг друга, одних только спецификаций описания метаданных около десятка, не считая тех что я привожу выше.
Есть довольно чёткие границы между стандартами принятыми к использованию в научной среде, в государстве и в data-корпорациях. В каком-то смысле - это слабопересекающиеся среды.
В академической среде стандартизация метаданных идёт, в первую очередь, от каталогизации цифровых объектов (digital assets) и научных репозиториев. Важнейшая характеристика всех научных порталов открытых данных и данных, в принципе - это предоставление метаданных связанных с цитированием и повторным использованием. К примеру, DataVerse, один из основных продуктов для публикации научных данных, использует DataCite, DDI, Dublin Core и множество предметных стандартов метаданных для публикации научных наборов данных.
Другие академические продукты аналогично используют эти и другие стандарты, адаптированных под обмен данными между научными учреждениями и агрегацию данных из каталогов. Это, в первую очередь, стандарты каталогизации такие как OAI-PHM и близкие аналоги.
Это в корне отличается от практически всех государственных каталогов открытых данных и порталов, где, либо используется стандарт DCAT, изначальный или доработанный с расширениями под страну, либо раскрытие данных из каталога осуществляется через интерфейсы используемого типового ПО (CKAN, OpenDataSoft, Socrata и др.), либо свои “доморощенные“ способы публикации списков наборов данных, вроде перечней opendata.csv используемых на отечественных порталах данных или API по собственным стандартам предоставляемых порталами данных.
Для госпорталов открытых данных вопросы цитирования и качества данных были вторичны в течении многих лет. Цитирование не рассматривалось как модель использования, а качество данных повышалось только от обратной связи.
Примерно за последние 2 года появилось очень много порталов, сервисов, продуктов коммерческих каталогов данных для data science существующих по совершенно иным требованиям. Большая часть таких каталогов продаются как ПО или сервисы, но ряд крупных дата-корпораций их открывают с исходным кодом. Например, Amundsen или Marquez, а также надо отметить облачные каталоги больших данных которые публикуют Microsoft, Google и Amazon через свои платформы.
Главная особенность подобных дата каталогов в том что они не про файлы, а про таблицы с данными. Если научные репозитории и госкаталоги предполагают что данные публикуются файлами и, при продвинутости каталога, они преобразуются в таблицы внутри, то коммерческие каталоги выступают в роли сервисов обнаружения данных (data discovery), но доступ к ним происходит уже внутри инфраструктуры владельца данных.
Подобные каталоги, созданные для внутреннего потребления data scientist’ами, фактически не используют общепринятых стандартов метаданных описания наборов и спецификаций форматов файлов, потому что это не хранилища файлов.
Для коммерческих каталогов важнее чем стандарты оказываются вопросы интеграции, API, желательно унифицированного, и стека технологий которые используются все вместе.
Фактически все эти три направления стандартизации можно свести к правилам контроля за первоисточниками:
репозитории научных данных - ограниченный контроль за первоисточниками данных через консенсус и стандартизацию данных, постепенное создание эталонных баз данных, формирование онтологий и тд.
каталоги открытых государственных данных - слабый контроль за первоисточниками и, как следствие, низкое качество данных и высокая их “замусоренность“ бесполезными данными не имеющими практического применения.
коммерческие каталоги данных для data science - высокий контроль за первоисточниками, существенная работа по их формированию, доступность только в рамках жестко ограниченных экосистем внутреннего доступа и, в некоторых случаях, частичная публичность через “витрины данных“.
Выводы
Из вышеописанных тезисов проистекает и ряд проблем связанных с эволюцией госполитики работы с данными, роли государства, стратегий компаний и ряд предположений того что может происходить дальше.
Текущие государственные порталы открытых данных не решают задач пользователей, как общественных, так и коммерческих как надежные источники достоверных данных. Значительный фокус переходит на информационные системы отдающие API напрямую.
Фактически эволюция госпорталов открытых данных в балансе или смещении баланса между большей академизацией (использованием DOI, учёта цитирования, большем акценте на стандарты) и практиками data science из коммерческих каталогов данных.
Можно предполагать что по мере развития навыков работы с данными внутри органов власти появление, там внутренних каталогов данных для data science на базе коммерческих или open source, решений.
Почти наверняка эти внутренние каталоги будут иметь интеграцию с общедоступными каталогами/источниками данных и, как затягивать оттуда информацию, так и публиковать “витрины данных“ для общего доступа или доступа по запросу.
Появление таких каталогов на какую-то отдельную страну, даже небольшую, маловероятно. Слишком высоки трудозатраты по контролю каждого первоисточника. Но в отраслевом разрезе и под контролем крупного отраслевого регулятора - возможно.