IOPC2. Petr Čermák Vedoucí RNDr. Michal Kopecky, Ph.D.

Podobné dokumenty
Business Intelligence

Databáze II. 1. přednáška. Helena Palovská

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

Databáze 2013/2014. Konceptuální model DB. RNDr. David Hoksza, Ph.D.

Jalapeño: pekelně ostrá Java persistence v Caché. Daniel Kutáč Senior Sales Engineer

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Použití databází na Webu

Systémová administrace portálu Liferay

ADMINISTRACE POČÍTAČOVÝCH SÍTÍ. OPC Server

Stěhování aplikací. Michal Tomek, Sales Manager

Centrální přístupový bod k informačním zdrojům resortu Ministerstva zemědělství Portál MZe a Portál eagri

Obsah. Co je to Field-Map? Field-Map software Popis technologie Field-Map Zdroje

Vývoj moderních technologií při vyhledávání. Patrik Plachý SEFIRA spol. s.r.o.

Seznámení s prostředím dot.net Framework

RELAČNÍ DATABÁZE. Cíl:

Databáze v MS ACCESS

Databázové systémy úvod

Portál úředníka. Lubomír Forejtek

Úvod. Petr Aubrecht (CA) Martin Ptáček (Wincor Nixdorf) Je 10 typů lidí: ti, kteří znají binární kód, a ti, kteří ne.

předměty: ukončení: Zápočet + Zkouška / 5kb např. jméno, název, destinace, město např. student Jan Novák, narozen

Databázové systémy. Doc.Ing.Miloš Koch,CSc.

Novinky ve Visual Studio Tomáš Kroupa


RadioBase 3 Databázový subsystém pro správu dat vysílačů plošného pokrytí

Minerva TPV+ TPV funkcionalita v QAD. David Pochman Senior konzultant

InterSystems Caché Post-Relational Database

Nástroje a frameworky pro automatizovaný vývoj. Jaroslav Žáček jaroslav.zacek@osu.cz

STUDIJNÍ MATERIÁL PRO TECHNICKOU CERTIFIKACI ESET Server Security, Serverové produkty

Obsah. Kapitola 1. Kapitola 2. Kapitola 3. Kapitola 4. Úvod 11. Stručný úvod do relačních databází 13. Platforma 10g 23

Databázové a informační systémy

Znalostní systém nad ontologií ve formátu Topic Maps

C# - Databáze úvod, ADO.NET. Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí

Informační systém Státního mapového díla Zeměměřického úřadu

Systémy pro tvorbu digitálních knihoven

Architektury informačních systémů

Architektury informačních systémů

ve spolupráci s Zavádíme a provozujeme užitečné informační technologie v organizacích.

Semináˇr Java X J2EE Semináˇr Java X p.1/23

CASE. Jaroslav Žáček

Ukládání a vyhledávání XML dat

Microsoft SharePoint Portal Server Zvýšená týmová produktivita a úspora času při správě dokumentů ve společnosti Makro Cash & Carry ČR

MODULÁRNÍ REDAKČNÍ SYSTÉM (CMS), SE ZAMĚŘENÍM PRO FIREMNÍ

Požadavky pro výběrová řízení TerraBus ESB/G2x

Vzdělávací oblast: Informatika a informační a komunikační technologie Vzdělávací obor: Programování. Předmět: Programování

Snadný vývoj webových aplikací s Nette. Lukáš Jelínek

Obsah. Kapitola 1. Předmluva 11 O této knize 13 Konvence...13

UAI/612 - Cloudová Řešení. Návrh aplikací pro cloud

Řízení nákupu ve skupině ČEZ

Od klasického reportingu k SAP BO Design studio na BW power by HANA Pavel Strnad

Programování a implementace Microsoft SQL Server 2014 databází

INFORMAČNÍ TECHNOLOGIE PRO ZPRACOVÁNÍ EEG I

egovernment ready úřad

ProjectWise V8 XM Edition

O Apache Derby detailněji. Hynek Mlnařík

DATABÁZOVÉ SYSTÉMY. Metodický list č. 1

IBM InfoSphere Guardium - ochrana databází

Olga Rudikova 2. ročník APIN

Jak efektivně ochránit Informix?

PROVÁZÁNÍ ECM/DMS DO INFORMAČNÍCH SYSTÉMŮ STÁTNÍ A VEŘEJNÉ SPRÁVY

Nerelační databázové modely. Helena Palovská

Nové jazykové brány do Caché. Daniel Kutáč

Řešení ochrany databázových dat

Zvýšení kvality IA s využitím nových technologií: Představení řešení IDEA - SymSure pro CCM

OpenGrey. Petra Pejšová, NTK, ČR Christiane Stock, INIST-CNRS, Francie

Novell Identity Management. Jaromír Látal Datron, a.s.

CineStar Černý Most Praha

Archivace Elektronických Dokumentů

Michal Krátký, Miroslav Beneš

ČESKÉ VYSOKÉ UČENÍ TECHNIKÉ Fakulta elektrotechnická. Microsoft Sharepoint 2007 Workflows Průmyslové informační systémy

Profilová část maturitní zkoušky 2017/2018

Integrace a komunikace IT ve zdravotnictví

Compatibility List. GORDIC spol. s r. o. Verze

Krajská koncepce e-gov

PŘÍLOHA C Požadavky na Dokumentaci

MPLAB Harmony. Idea Instalace. Více podrobností naleznete na nejen k MPLAB Harmony

OpenGrey. Petra Pejšová, NTK, ČR Christiane Stock, INIST-CNRS, Francie. Digitálná knižnica 2012, dubna 2012 Jasná pod Chopkom

Databáze 2011/2012 Konceptuální model DB. RNDr. David Hoksza, Ph.D.

Analýza a modelování dat. Přednáška 5

KAPITOLA 1 Představení platformy Microsoft SQL Server 2008

PA165: Úvod do Java EE. Petr Adámek

Odpov di na dotazy k ve ejné zakázce. 30/ SSZ Registr IKP

VÝVOJ INTERNETOVÝCH APLIKACÍ - VIA

Databázové systémy trocha teorie

Koncept řešení EOS EVIDENCE ORGANIZAČNÍ STRUKTURY

Podpora XML v.net. Podpora XML v.net. nezávislý publicista. Jirka Kosek.

Lotus Quickr - ECM Integrace s LD/LN aplikacemi. Ing. Josef Homolka VUMS Legend

eorders LeasePlan ČR Michal Bašta ICT Maintenance Manager LPCZ

Databázové systémy úvod

MVS a Knihovny.cz jak to vzniklo, proč a kde jsme

M Administrace Microsoft SQL Server Popis: Absolvent kurzu bude umět: Požadavky pro absolvování kurzu: Kurz určen pro: Literatura:

Programování v jazyku C# II. 5.kapitola

Manuscriptorium jako základ pro virtuální badatelské prostředí

Vzdělávací oblast: Informatika a informační a komunikační technologie Vzdělávací obor: Programování Předmět: Programování

Standardy pro BIM Nutnost pro efektivní modelování

Jan Váša TGB Sales Representative, Oracle Czech 10. června 2011 MRI Kladno

Oracle XML DB. Tomáš Nykodým

Tvorba podnikových aplikací v jazyce JAVA. Josef Pavlíček KII PEF CZU

Archivace relačních databází

Transkript:

IOPC2 Petr Čermák Vedoucí RNDr. Michal Kopecky, Ph.D.

Obsah Cíle práce Vývoj knihovny Design a implementace Porovnání s předchozími verzemi Shrnutí a další vývoj

Cíle práce Návrh a implementace knihovny poskytující sluţby OR mapování v C++ Komfortní, konzistentní rozhraní Transparentní vývoj uţivatelských aplikací Sjednocení vývoje předchozích knihoven POLiTe, POLiTe2 a IOPC Analýza vlastností ORDBMS a moţnosti jejich vyuţití v ORM knihovně. ADT mapování

Vývoj knihovny Knihovna IOPC 2 vznikla na základě několika knihoven Disertační práce RNDr. Michala Kopeckého, Ph.D. Persistence C++ objektů v relačních databázích Třídy popsány pomocí maker Vertikální mapování Persistence asociací mezi objekty Nemodulární architektura

Vývoj knihovny Knihovna IOPC 2 vznikla na základě několika knihoven Diplomová práce Mgr. Jana Hadravy Zaměřena na zlepšení výkonu knihovny POLiTe Rozšiřitelná cacheovací vrstva Multithreaded prostředí Ostatní vlastnosti stejné jako POLiTe

Vývoj knihovny Knihovna IOPC 2 vznikla na základě několika knihoven Diplomová práce Mgr. Josefa Trocha Zaměřena na transparentní vývoj uţivatelských aplikací Pouţívá source-to-source translator OpenC++ Vertikální, horizontální a filtrované mapování Dvě rozhraní - POLiTe a IOPC Mnoho problémů

Design a implementace - cíle Pouţít to nejlepší z předchozích knihoven Databázová vrstva (POLiTe) Transparentní vývoj uţivatelských aplikací (IOPC) Cacheovací vrstva (POLiTe 2) Různé druhy mapování (POLiTe, IOPC) Přidat další vlastnosti Modulární architektura Reflexe v C++ GCCXML místo OpenC++ OR databáze ADT mapování Oracle 10g

Architektura IOPC 2 - konfigurace iopc common sdílené sluţby iopc meta - reflexe iopc db přístup k databázi 1. Různé sluţby -logování, zámky... 2. Reflexe 3. Databázový přístup Oracle 10g Oracle 10g OR rozšíření iopc lib objektově relační mapování 4. OR mapování Uživatelská aplikace

Architektura IOPC 2 - workflow

Porovnání s předchozími verzemi POLiTe POLiTe 2 IOPC IOPC 2 Transparence - makra - makra + OpenC++ ++ GCCXML Typy mapování Vertikální Vertikální Vertikální, horizontální, filtrované Cachování Jednoduché Pokročilé Jednoduché (chybná impl) R/O přístup + + - + Vertikální, horizontální, filtrované, ADT Pokročilé z POLiTe 2 Architektura - - - + Různé konfigurace Multithreading - + - + Perzistence asociací + Různé druhy + Různé druhy - Jednoduchá reference Reflexe - - - + Podporované databáze - Jednoduchá reference Oracle 7 Oracle 7 Oracle 8i Oracle 10g

Výhody IOPC 2 a další vývoj Platforma pro jednoduchý a rychlý vývoj db aplikací v C++ Transparentní pouţití Moţnost integrace s IDE Široká konfigurovatelnost Další vývoj Implementace dalších DB driverů Rozšíření persistence asociací Rozšíření reflexe metody, další typy,... Více ORDBMS vlastností do ADT mapování Vytvoření reálné aplikace pouţívající IOPC2 -> další poţadavky Mnoho dalšího

Sec Porovnání výkonu ADT mapování 200 180 160 140 120 100 80 60 40 20 0 Insert 10 000 objektů max hloubky 1 5 10 15 20 25 30 Hloubka Vertical Horizontal Filtered ADT

Sec Porovnání výkonu ADT mapování 1000 900 800 700 600 500 400 300 200 100 0 Load 30 000 objektů po OID 1 5 10 15 20 25 30 Hloubka Vertical Horizontal Filtered ADT

Sec Porovnání výkonu ADT mapování 500 450 400 350 300 250 200 150 100 50 0 20 000 polymorfních selectů 1 5 10 15 20 25 30 Hloubka Vertical Horizontal Filtered ADT

Obdobné projekty v C++ LiteSQL http://apps.sourceforge.net/trac/litesql/ XML model -> třídy, schéma Pouze O/R mapování, ţádné cache apod. Debea Database Access Library http://debea.net/trac Popis pomocí maker Opět pouze O/R mapování Database Template Library http://dtemplatelib.sourceforge.net/ Nutno psát (de)serializační kód Ţádná dědičnost, spíše snadnější způsob jak dostat data z db HiberLite http://code.google.com/p/hiberlite/ Popis pomocí maker / bindování, základní persistence SOCI http://soci.sourceforge.net/doc/index.html Velmi dobrá knihovna pro přístup k DB, podporuje různé databáze Pro persistenci objektů je třeba psát konverzní můstky, ţádná dědičnost Seznam přejat z http://en.wikipedia.org/wiki/list_of_objectrelational_mapping_software

Obdobné projekty v C++ - komerční Objektové databáze Versant Object Database http://www.versant.com/en_us/products/objectdatabase Transparentní persistence Progress Software ObjectStore http://www.progress.com/objectstore/index.ssp Transparentní presistence Matisse http://www.matisse.com/ ODL definice tříd A další...