Open Nashev opened 6 years ago
https://www.cmswire.com/information-management/data-ingestion-best-practices/ перечисляет несколько реализаций data ingestion систем разной степени автономности, но не факт, что они реализованы через RDF
Там так же напоминают, что кроме соответствия (и приведения) полей, нужно разбираться в соответствии и приведении к целевой форме данных, как скалярных (чисел, представленных в разной форме и разных единицах измерения), так и ссылочных (когда речь об одном и том же, например, человеке, но названо оно по-разному).
Впрочем то, что касается ссылочных соответствий, актуально и для собственно сопоставления полей. И должно обязательно иметь механизм ручного сопоставления, предполагающий постепенную автоматизацию.
Преобразование формы ссылок (например, фамилию в ФИО) делать, несомненно, через преобразование в идентификатор сущности (персона или хотя бы сочетание ФИО), обладающее нужными полями)
Преобразование чисел через базовую единицу измерения...
Про систему, которая должна интегрироваться с разными другими учётными системами, сформулировал токое вот:
"Обычно делают персональные таблицы соответствий, однослойные, стягивающие две стороны синхронизации длинными и в простейшем случае только прямыми связями. RDF позволяет описывать цепочки преобразований произвольной глубины, и автоматически иметь у данных со своей стороны множество представлений, некоторые из которых намного ближе к данным той или иной системы, с которой надо взаимодействовать.
Правда, я ещё ни одной реализации толком не видел ;)"
Так и видится мне - в некоем мысленном пространстве две системы, этакими ящиками, у них стенки, обращённые друг к другу, на которых представлены их словари данных, и ниточки соответствия между ними, по которым типа сами данные текут... А при использовании RDF - между стенками этими есть ещё множество прослоек - коробочек-конвертеров, крупных и совсем мелких, типа узелков на нитках, разветвлений, слияний и т.п, совокупность которых образует, при взгляде с определённой точки зрения, стенку, один в один похожую на ту, с которой надо интегрироваться. Типа ставь рядом и соединяй напрямую. А если надо с другой системой - нашёл подходящие концы, и собрал уже почти готовую стенку для прямой интеграции с другой системой. Ну только если нескольких соответствий не найдётся - их соорудить, это уже сильно меньше работы.