Naturalnym paradygmatem teoretycznym do przechowywania XBRL w bazie danych byłby OLAP, ponieważ XBRL dotyczy kostek danych. OLAP na relacyjnej bazie danych miałby nazwę ROLAP.
To nie jest banalny problem, ponieważ fakty zaczerpnięte z dużej liczby taksonomii mogą tworzyć bardzo duży i rzadki sześcian (dla dokumentów SEC to 10k + wymiary), a także dlatego, że tworzenie schematu SQL wymaga znajomości taksonomii przed import. Jeśli pojawią się nowe taksonomie, trzeba wszystko powtórzyć ETL. Nie powoduje to, że relacyjne bazy danych są odpowiednie jako ogólne rozwiązanie.
Jeśli opiłki mają tę samą taksonomię, a systematyka jest bardzo prosta (jak w: niezbyt wiele wymiarów), możliwe jest wymyślenie mapowania ad-hoc w celu przechowywania wszystkich faktów w jednej tabeli z wieloma wiersze w sensie ROLAP (fakty do wierszy, aspekty do kolumn). Niektórzy dostawcy specjalizują się w przechowywaniu niezwymiarowych faktów XBRL, w którym to przypadku tradycyjne oferty SQL (lub "post-SQL", które skalują się z wierszami) działają dobrze.
Niektórzy dostawcy tworzą tabelę dla każdego hipersześcianu XBRL w taksonomii, ze schematem pochodzącym z sieci definicji, ale różnym dla każdego hipersześcianu. Może to prowadzić do wielu tabel w bazie danych i wymaga wielu sprzężeń w przypadku zapytań obejmujących wiele hipersześci.
Niektórzy inni dostawcy przyjmują założenia dotyczące podstawowej struktury XBRL lub rodzaju zapytań, które muszą wykonać użytkownicy. Ograniczenie zakresu problemu pozwala na znalezienie specyficznych architektur lub schematów SQL, które również mogą spełnić te specyficzne potrzeby.
Aby zaimportować duże ilości dokumentów (np. Wszystkie dokumenty składane w SEC), my (mój pracodawca) stworzyliśmy generic mapping zamiast baz danych NoSQL zamiast baz danych. Duża liczba faktów o różnej liczbie wymiarów mieści się w dużych kolekcjach częściowo ustrukturyzowanych dokumentów, a sieci dobrze pasują do hierarchicznego formatu.
Nie sądzę, nie ma w ogóle, ja starałem się zrobić to samo o dwa lata temu, z wyjątkiem przeznaczenia było SQL Server. Jakie typy plików posiadasz? –
Zamiast baz danych SQL przejdź do baz danych NoSql z wydajności i skalowalności perpektywy –