You are not logged in | Log in

A JSONPath query compiler targeting JSON parsers APIs

Speaker(s)
Łukasz Orawiec
Affiliation
MIMUW
Language of the talk
Polish
Date
Oct. 29, 2024, 10:15 a.m.
Room
room 4060
Seminar
Seminarium "DeSeR: Dane, strumienie, rozpraszanie"

Istnieje wiele implementacji parserów danych w formacie JSON, oferujących różne rodzaje API, takie jak interfejsy DOM-like, w których dokument jest dostępny jako zmaterializowane w pamięci drzewo, lub SAX-like, w których parser emituje zdarzenie dla każdego elementu napotkanego w trakcie pojedynczego przejścia przez dokument. Jest także nowatorskie podejście on-demand, dążące do połączenia prostoty interfejsów DOM-like z wysoką wydajnością wynikającą z leniwego materializowania struktury drzewa. Takie API jest dostępne w simdjson, parserze będącym w stanie przetwarzać gigabajty danych na sekundę dzięki wykorzystaniu instrukcji SIMD.

Z drugiej strony, odczytywanie danych z dokumentów JSON może być wyrażane za pomocą JSONPath, standaryzowanego języka zapytań, będącego odpowiednikiem popularnego XPath dla dokumentów XML.

W ramach referatu przybliżę powyższe zagadnienia i opowiem o temacie mojej pracy magisterskiej, której celem jest wypełnienie luki pomiędzy JSONPath i istniejącymi parserami, poprzez implementację kompilatora przekształcającego zapytania JSONPath do postaci kompatybilnej z konkretnym API parsera.