Oracle Database
Oracle en Teradata zijn beide Relationele databasebeheersystemen (RDBMS), Oracle implementeert echter een Object-relationeel databasebeheersysteem (ORDBMS).[ik]
Het RDBMS is geïntroduceerd met behulp van het relationele model [ii] dat relaties tussen tabellen onderhoudt met behulp van indexen, primaire en externe sleutels. Het is sneller om gegevens op te halen en op te slaan in vergelijking met het oude databasebeheersysteem (DBMS).
Hoewel vergelijkbaar met een relationele database, gebruikt het objectgeoriënteerde databasemodel van Oracle objecten en worden klassen ondersteund in het databaseschema en de querytaal..
Toen eind jaren zeventig Oracle het eerste commercieel beschikbare RDBMS werd, legde Teradata de basis voor het eerste datawarehouse. De 'capabilities' maakten hem perfect voor big data (een term bedacht door Teradata), Business Intelligence (BI) tools [iii] en het Internet of Things (IoT) [iv].
Relationele databasebeheersystemen (RDBMS) kunnen worden gecategoriseerd als Online transactieverwerking - OLTP en Online analytische verwerking - OLAP.[V]
OLTP is transactioneel en biedt gegevens aan datawarehouses en OLAP is ontworpen om de gegevens te analyseren.
"EEN datawarehouse is een database met gegevens die meestal de bedrijfsgeschiedenis van een organisatie weergeven. Gegevens in een datawarehouse zijn zo georganiseerd dat ze analyse ondersteunen in plaats van realtime transacties te verwerken als in online transactieverwerkingssystemen (OLTP).
OLAP technologie maakt data warehouses effectief voor online analyse en biedt snelle antwoorden op iteratieve complexe analytische vragen.”[Vi]
Hoewel Teradata is gericht op OLAP en Oracle voor OLTP, kan Oracle zowel OLTP- als OLAP-databases uitvoeren op hetzelfde platform, dat Teradata niet ondersteunt. De prestaties bieden Oracle een voordeel ten opzichte van Teradata in de meeste gemengde werkbelastingsscenario's.
Transacties omvatten een of meer SQL-instructies die in een database worden uitgevoerd om taken te voltooien, terwijl de gegevensintegriteit gehandhaafd blijft. Transacties zijn onderling afhankelijk om gegevens die worden toegevoegd of verwijderd uit een database te beheren en verwerken.
Oracle is op maat gemaakt voor transactieverwerking vanwege zijn architecturale flexibiliteit (met een object RDBMS), terwijl Teradata's OLAP krachtig is voor slicing en dicing data (OLTP's data history) voor analyse, zonder gegevens te moeten verplaatsen of herstructureren.
Oracle wordt voornamelijk gebruikt als een online back-endapplicatie voor het beheren van invoegingen, updates en verwijderingen tijdens het verwerken, terwijl Teradata is Data Warehousing dat big data voor analyse onderhoudt en er zijn geen real-time transacties.
Teradata is een goede combinatie tussen hardware en software, waarmee een toptoepassing voor enterprise-databases wordt geproduceerd, maar Oracle lanceerde zijn OLAP Exadata Server in 2008. Het was Oracle's antwoord op een volledig database-apparaat.
Beide vereisen een aanzienlijke investering en zijn meer geschikt voor zeer grote databases die uitstekende prestaties vereisen bij complexe query's.
Teradata is Shared Nothing (SN) Architecture terwijl Oracle dat is Gedeelde alles.
De voorwaarde deelde niets architectuur verwijst naar een databasebeheersysteem met meerdere processors waar geheugen en schijfopslag niet worden gedeeld tussen de processors. [vii] Netwerkbandbreedte wordt gedeeld om gegevens over te dragen.
Met Teradata worden de gegevens opgeslagen op servers en elk berekent zijn eigen deel. De gegevens worden gepartitioneerd en opgeslagen over een set servers en elke server is verantwoordelijk voor de gegevens. Voorbeelden van geavanceerde platforms met dezelfde architectuur zijn Google, Amazon en Facebook.
Maar met Oracle's gedeeld alles architectuur, alle gegevens zijn toegankelijk voor alle servers en toegangsniveaus kunnen naar behoefte op elk deel van de gegevens worden toegepast. Het potentiële nadeel is de toename van de overhead voor gegevenstoegangsbeheer en kan het systeembeheer complexer maken om te beheren.
Oracle's architectuur betekent effectief dat elke machine toegang heeft tot alle gegevens, en dit is het fundamentele verschil tussen Teradata, waardoor Teradata bij uitstek geschikt is voor datawarehousing en Oracle beter geschikt is voor OTLP.
Hoewel Oracle Exadata een hybride benadering van de twee architecturen heeft geïmplementeerd, kan een Exadata-systeem niet zonder Oracle worden gebruikt. Exadata is een 'add-on'-opslagengine en geen revisie van de Oracle-database-engine.
Schaalbaarheid omvat verschillende aspecten van een IT-infrastructuur, zoals het verwerken van stijgingen in gegevens en transactievolumes, evenals de toename van multidimensionale gegevens, aantal gebruikers, werkbelastingbeheer, complexiteit van query's en volume, enz..
Teradata is Lineair schaalbaar[viii] wat betekent dat de databasecapaciteit kan worden verhoogd door meer knooppunten aan de infrastructuur toe te voegen, en wanneer het gegevensvolume toeneemt, wordt de prestatie niet beïnvloed.
Het systeem is ontworpen voor multidimensionale schaalbaarheid en biedt robuustere modellen voor scale-up en scale-out dan Oracle. Hoewel Oracle een goede schaalbaarheid heeft, is het bekend dat er knelpunten optreden bij het opslagsubsysteem en het heeft wel een van de beste gegevensverwerkingssnelheden, maar slechts tot een bepaalde limiet. Als de meeste query's bijvoorbeeld bekend zijn en de gebruikte gegevens minder dan 600 TB zijn, zou Oracle geschikt kunnen zijn, maar als de gegevens naar verwachting verder zullen toenemen, is Teradata de betere keuze.
Teradata heeft onvoorwaardelijk parallellisme [ix] terwijl Oracle voorwaardelijk is. Het geeft Teradata een voordeel met OLAP omdat de prestaties uitzonderlijk zijn om sneller één antwoord te krijgen dan een niet-parallel systeem. Parallellisme maakt gebruik van meerdere processoren die samenwerken om snel een taak te volbrengen.
Om een analogie te gebruiken van hoe parallelliteit werkt, denk aan een wachtrij in een drukke winkel, met een wachtrij die zich aftakelt naar aparte wachtrijen voor elke kassa. De lijn verplaatst zich sneller op deze manier in plaats van een wachtrij en een tot. Hoe efficiënter de parallelbelading, hoe beter de prestaties van het systeem.
Teradata heeft een parallellisme doorheen het hele systeem, inclusief de architectuur, complexe verwerking en het laden van gegevens. Het afstemmen van query's is niet nodig om verzoeken parallel te verwerken en Teradata is niet afhankelijk van beperkingen voor kolombereik of beperkte gegevenshoeveelheid, in tegenstelling tot Oracle.
Andere noemenswaardige verschillen zijn onder meer:
Oracle en Teradata zijn beide volgroeid in product en technologie, maar Oracle overtreft het aantal implementaties in vergelijking met Teradata.
Omdat Oracle op grotere schaal wordt gebruikt dan Teradata, beschikt het over een uitgebreide verzameling hulpprogramma's, waardoor het de betere keuze is voor ontwikkelaars en zakelijke gebruikers. Percepties van zakelijke gebruikers zien Teradata als te complex of gereserveerd voor gespecialiseerde experts, daarom is het gemakkelijker om een ervaren Oracle-gebruiker of -ontwikkelaar te vinden dan om een Teradata-oplossing te vinden.
bestanddeel | Teradata | Orakel |
architectuur | · Gedeeld niets · Relationeel model · Knooppunten hebben meerdere Parsing-engines en database-engines genaamd Access Module Processors | · Gedeeld alles · Objectrelationeel model · Gedeelde schijf / losjes gekoppeld gedeeld geheugen · DB-architectuur voor databases met meerdere knooppunten |
OLAP | Systeem ontworpen en essentiële configuratie niet vereist. | Installatie en configuratie voor OLAP is technisch en complex. |
OLTP | Niet mogelijk. | Systeem ontworpen. |
Besturingssysteem | · Ramen · Linux · UNIX | · Ramen · Linux · UNIX · Mac OS X · Z / OS |
Parallelism | Onvoorwaardelijk "Always On", vanaf het begin ontworpen. | Voorwaardelijk en onvoorspelbaar |
Databasetabellen | Tabellen gemaakt in de databases en schijfruimte worden beheerd door Teradata zelf. | Tabellen gemaakt in tablespaces behorend bij een schema en gebruik maken van parameters voor het gebruik van de ruimte. |
Database-objecten | · Cursor · Externe routine · Functie · Procedure · Op gang brengen | · Datadomein · Cursor · Externe routine · Functie · Procedure · Op gang brengen |
Gebruik van de index | Gebruik traditioneel niet veel indexen, omdat de parallelle architectuur zich richt op de prestatie-eisen voor de doorvoer. | Vertrouw op indexen omdat OLTP-workloads snelle toegangspaden vereisen. |
Interface | · SQL | · SQL · GUI |
Datatypes | ||
Draad | · CHAR · CLOB · VARCHAR | · CHAR · CLOB · VARCHAR · NCHAR · NVARCHAR |
Binair | · BYTE · VARBYTE | · BFILE · LONGRAW · RAW |
Datum Tijd | · TIJD · DATE · TIMESTAMP | · DATE · TIMESTAMP |
Algemene gebruikersranglijst (IT Central Station-enquête) [xi] | Derde | Eerste |