SlideShare una empresa de Scribd logo
1 de 27
INTRODUCTION TO
TERADATA DATA WAREHOUSE
SYSTEM ARCHITECTURE
PREPARED BY: MOHAMED TAHOON
1. What’s a Teradata DWH System ?
2. SMP vs MPP
3. Shared-Everything vs Shared-Nothing architecture
4. Hardware architecture
4.1 Cliques 4.2 Hot standby Nodes
5. Node architecture
5.1 PDE 5.2 Virtual Processors
5.3 Parsing Engine 5.4 Access Module Processor
5.5 Disk Arrays
6. Request Processing
2
3
1 What is Teradata DWH system?
• RDBMS designed to run the world’s largest databases
• Latest Intel technology nodes
• Standard access language (SQL)
• Massive Parallel Processing ‘MPP’ system
• a “Shared-Nothing” architecture
• Parallel-aware optimizer
allowing concurrent complex queries
• Linear Scalability
2. SMP VS MPP
- Multiple CPU’s serving
separate processes Simultaneously
- Shared Everything
- All CPU’s Share Same Memory
- Mostly Hosted on Shared SAN
Symmetric Multi Processing Massive Parallel Processing
- Multiple CPUs runs in Parallel
serving single process
- Shared Nothing
- Each CPU have It’s Own Memory and space
- High Speed Nodes Connection [ByNet]
4
1. What’s a Teradata DWH System ?
2. SMP vs MPP
3. Shared-Everything vs Shared-Nothing architecture
4. Hardware architecture
4.1 Cliques 4.2 Hot standby Nodes
5. Node architecture
5.1 PDE 5.2 Virtual Processors
5.3 Parsing Engine 5.4 Access Module Processor
5.5 Disk Arrays
6. Request Processing
5
6
SHARED-NOTHINGSHARED-EVERYTHING
- Disk controllers and bandwidth shared
- Synchronization required across nodes
- Large scale Scalability Issue
- Best for many small statements
- Controllers dedicated to nodes
- No Cache Synchronization necessary
- Linear Scalability
- Best for Heavy statements
1. What’s a Teradata DWH System ?
2. SMP vs MPP
3. Shared-Everything vs Shared-Nothing architecture
4. Hardware architecture
4.1 Cliques 4.2 Hot standby Nodes
5. Node architecture
5.1 PDE 5.2 Virtual Processors
5.3 Parsing Engine 5.4 Access Module Processor
5.5 Disk Arrays
6. Request Processing
7
8
4 Teradata Hardware Architecture
• SMP Nodes
> Latest Intel SMP CPUs
> Configured in 2+1 node cliques
> Linux or Windows
• BYNET Interconnect
> Fully scalable bandwidth
> 1 to 1024 nodes
• Storage
> Independent I/O per Node
> Scales per node
• Server Management
> One console for the entire system
Server Management
PE
SMP Node1
AMPPE
AMP AMP AMP
PE
SMP Node2
AMPPE
AMP AMP AMP
PE
SMP Node3
AMPPE
AMP AMP AMP
PE
SMP Node4
AMPPE
AMP AMP AMP
BYNET Interconnect
4.1 CLIQUES
• Group nodes together by multiported
access to common disk array units.
• Inter-node disk array connections are
made using FibreChannel (FC) buses.
• FC paths enable redundancy to ensure
the loss of a processor node or disk
controller won’t limit data availability.
• Clique is a mechanism supports migration of VPROCs under PDE following a
node failure.
• If a node in a clique fails, VPROCs migrate to other nodes in the clique and
continue to operate while recovery occurs on their home node.
9
4.2 HOT STANDBY NODES
Improves availability and maintain performance levels
in the event of a node failure.
What’s a Hot Standby node:
• Is a member of each clique in the system.
• Does not normally participate in Teradata Database operations.
• Used to compensate for the loss of a node in the clique.
Using Hot Standby node Eliminates:
• Restarts that are required to bring a failed node back into service.
• Degraded service when VPROCs have migrated to other nodes in a clique.
How Hot Standby node failover works :
At node failure, all AMPs and LAN-attached PEs on the failed node migrate to the hot standby node
The hot standby node becomes the production node.
When the failed node returns to service, it becomes the new hot standby node.
10
1. What’s a Teradata DWH System ?
2. SMP vs MPP
3. Shared-Everything vs Shared-Nothing architecture
4. Hardware architecture
4.1 Cliques 4.2 Hot standby Nodes
5. Node architecture
5.1 PDE 5.2 Virtual Processors
5.3 Parsing Engine 5.4 Access Module Processor
5.5 Disk Arrays
6. Request Processing
11
5 Node Architecture (‘Shared Nothing’)
Each Teradata Node is made up of hardware and software
• Each node runs copy of OS, database SW, & virtual processes
• Each node has CPUs, system disk, memory & adapters
PE vproc
AMP
vproc
Vdisk
AMP
vproc
Vdisk
AMP
vproc
Vdisk
AMP
vproc
Vdisk
AMP
vproc
Vdisk
AMP
vproc
Vdisk
AMP
vproc
Vdisk
AMP
vproc
Vdisk
PE vproc
UNIX
PDE
5.1 PARALLEL DATABASE EXTENSIONS - PDE
Software interface layer lies between O. S. & TD DB which enables The database to :
• Run in a parallel environment
• Execute Vprocs
• Apply a flexible priority scheduler to Teradata Database sessions
• Consistently manage memory, I/O, and messaging system interfaces across multiple OS platforms
PDE provides a series of parallel operating system services, which include:
• Facilities to manage parallel execution of database operations on multiple nodes.
• Dynamic distribution of database tasks.
• Coordination of task execution within and between nodes.
13
5.2 VIRTUAL PROCESSORS – WHAT IS IT
What is it:
• Set of software processes that run on a node under Teradata (PDE).
• Eliminate dependency on specialized physical processors
VPROC characteristics:
• Multiple VPROCs can run on an SMP platform or a node.
• VPROCs and the tasks running under them communicate using unique-address
messaging, as if they were physically isolated from one another.
• This message communication is done using the BYNET hardware and BYNET Driver.
• maximum # VPROCs in a system: 16,384 VPROCs, in a node 128.
14
5.2 VIRTUAL PROCESSORS – VPROC TYPES
GTW
• Gateway VPROCs provide a socket interface to Teradata Database
PE
• Parsing Engines perform session control, query parsing, security validation, query optimization
AMP
• Access Module Processors perform DB functions; Like: executing database queries.
• Database storage Distributed Across AMPs.
TVS
• Manages Teradata Database storage.
• AMPs acquire their portions of database storage through the TVS vproc.
NODE
• The node vproc handles PDE and operating system functions not directly related to AMP and PE work.
• Cannot be externally manipulated, and do not appear in the output of the Vproc Manager utility.
RSG
• Relay Services Gateway provides a socket interface for the replication agent.
• Relaydictionary changes to the Teradata Meta Data Services utility.
15
5.3 PARSING ENGINE ‘PE’
• Communicates with the client system on one side and with the AMPs (via the BYNET) on the other side.
• Each PE executes the database software that manages sessions, decomposes SQL statements into
steps, possibly in parallel, and returns the answer rows to the requesting client.
Parsing Engine Elements
Parser Decomposes SQL into relational data management processing steps.
Optimizer Determines the most efficient path to access data.
Generator Generates and packages steps.
Dispatcher Receives processing steps from the parser, sends them to the appropriate AMPs via BYNET.
Monitors the completion of steps and handles errors encountered during processing.
Session
Control
Manages session activities, such as logon, password validation, and logoff.
Recovers sessions following client or server failures.
16
5.4 ACCESS MODULE PROCESSOR ‘AMP’
• The AMP VPROC manages Teradata Database interactions with the disk subsystem.
• Each AMP manages a share of the disk storage.
Database management tasks
• Accounting
• Journaling
• Locking tables, rows, and databases
• Output data conversion
During query processing:
• Sorting
• Joining data rows
• Aggregation
File System Management
Disk Space management.
17
5.4 THE AMPS – REQUEST PROCESSING
• The BYNET transmits messages to and from the AMPS and PEs.
• An AMP step can be sent to one of the following:
• One AMP
• Multi-Cast (A selected set of AMPs)
• All AMPs in the system
PE communication with Amps during request processing:
1. PE 1 : Access is through a primary index and a request is for a single row
- the PE transmits steps to a single AMP
2. PE 2 : the request is for many rows (an all-AMP request):
- the PE makes the BYNET broadcast the steps to all AMPs
** To minimize system overhead, the PE can send a step to a subset of AMPs, when appropriate.
18
5.5 DISK ARRAYS
Logical Units ‘Lun’
• The RAID Manager uses drive groups DG
• DG is a set of drives that have been configured
into one or more LUNs.
• OS recognizes a LUN as a disk and is not aware
that it is writing on on multiple disk drives.
Vdisk
• Group of cylinders currently assigned to an AMP
• OS recognizes a LUN as a disk and is not aware
that it is writing on on multiple disk drives.
• The actual physical storage may derive from
several different storage devices
19
1. What’s a Teradata DWH System ?
2. SMP vs MPP
3. Shared-Everything vs Shared-Nothing architecture
4. Hardware architecture
4.1 Cliques 4.2 Hot standby Nodes
5. Node architecture
5.1 PDE 5.2 Virtual Processors
5.3 Parsing Engine 5.4 Access Module Processor
5.5 Disk Arrays
6. Request Processing
20
6 REQUEST PROCESSING – “LIFETIME OF A QUERY”
1. The Parser
•Checks Request cache to determine
if the request is already there
2. The Syntaxer
•checks the syntax of an incoming
request
3. The Resolver
•Adds information from the Data
Dictionary to convert database,
table, view, stored procedure, and
macro names to internal identifiers.
4. Security module
•checks privileges in the Data
Dictionary.
5. The Optimizer
•Determines the most effective way
to implement the SQL request.
6. The Optimizer
•scans the request to determine
where to place locks, then passes
the optimized parse tree to the
Generator.
7. The Generator
•Transforms the optimized parse
tree into plastic steps, caches the
steps if appropriate, and passes
them to gncApply
8. gncApply
•Takes the plastic steps produced by
the Generator, binds in
parameterized data if it exists, and
transforms it into concrete steps.
9 The Dispatcher
21
P.45 REQUEST PROCESSING – “1. THE PARSER”
1. The Parser
• Checks if the request in Request cache:
• IF IN = > Go to Step (2) - The Syntaxer.
• IF New Request
• The Parser reuses the plastic steps found in the
cache and passes them to gncApply.
• Go to checking privileges (step 4)
• Then Go to gncApply (step 8) after.
2. The Syntaxer
•checks the syntax
3. The Resolver
•convert Object names to internal
identifiers.
4. Security module
•checks privileges
5. The Optimizer
•Determines the most effective way
to implement the SQL request.
6. The Optimizer
•scans the request to determine
where to place locks
7. The Generator
•Transforms parse tree into plastic
steps.
8. gncApply
•binds parameterized data if it exists,
transforms it into concrete steps.
9 The Dispatcher
Plastic steps are directives to the
database management system
that do not contain data values
22
P.45 REQUEST PROCESSING – “2. SYNTAXER, 3. RESOLVER”
1. The Parser
•Checks Request cache to
determine if the request is
already there
2. The Syntaxer
• checks the syntax of new request:
• IF Wong => passes an error
message back to the requestor and
stops
• IF Correct => converts the request
to a parse tree and passes it to the
Resolver (3)
3. The Resolver
• Adds information from the Data
Dictionary (or cached copy of the
information) to convert database,
table, view, stored procedure, and
macro names to internal identifiers.
4. Security module
•checks privileges
5. The Optimizer
•Determines the most
effective way to implement
the SQL request.
6. The Optimizer
•scans the request to
determine where to place
locks
7. The Generator
•Transforms parse tree into
plastic steps.
8. gncApply
•binds parameterized data if it
exists, transforms it into
concrete steps.
9 The Dispatcher
23
P.45 REQUEST PROCESSING – “4. SECURITY MODULE, 5. - 6. OPTIMIZER”
1. The Parser
•Checks Request cache to determine if the
request is already there
2. The Syntaxer
•checks the syntax
3. The Resolver
•convert Object names to internal identifiers.
4. The Security module
• checks privileges of accessed object vs Requestor:
• Mismatch => returns a privilege error message
• Privileged => passes the request to the Optimizer.
5. The Optimizer
• Determines the most
effective way to implement
the request (Excution plan)
6. Optimizer
• Determine what type
and where to place
Objects locks
7. The Generator
•Transforms parse tree into plastic steps.
8. gncApply
•binds parameterized data if it exists,
transforms it into concrete steps.
9 The Dispatcher
24
P.45 REQUEST PROCESSING – “SEPARATE ORIGINAL”
1. The Parser
•Checks Request cache to determine if the request is
already there
2. The Syntaxer
•checks the syntax
3. The Resolver
•convert Object names to internal identifiers.
4. Security module
•checks privileges
5. The Optimizer
•Determines the most effective way to implement the
SQL request.
6. The Optimizer
•scans the request to determine where to place locks
7. The Generator
• Transforms the optimized parse
tree into plastic steps
• caches the steps if appropriate
• passes them to gncApply.
8. gncApply
• Binds in parameterized data if it
exists, and transform plastic
steps to concrete steps.
• passes the concrete steps to the
Dispatcher
9 The Dispatcher
Concrete steps are directives to the AMPs
that contain needed user-or session-
specific values and needed data parcels
25
P.45 DISPATCHER – REQUEST PROCESSING
• controls the sequence in which steps are executed:
• It also passes the steps to the BYNET to be distributed to the AMPs:
• 1 The Dispatcher receives concrete steps from gncApply.
• 2 The Dispatcher places the first step on the BYNET;
• - tells the BYNET whether the step is for one AMP, several AMPS, or all AMPs;
• - waits for a completion response.
• - Whenever possible, Teradata Database performs steps in parallel to enhance performance.
• 3 The Dispatcher receives a completion response from all expected AMPs and places the next step
on the BYNET.
• It continues to do this until all the AMP steps associated with a request are done.
26
27

Más contenido relacionado

La actualidad más candente

Apache Hadoop Security - Ranger
Apache Hadoop Security - RangerApache Hadoop Security - Ranger
Apache Hadoop Security - RangerIsheeta Sanghi
 
Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...
Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...
Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...Flink Forward
 
Zero to Snowflake Presentation
Zero to Snowflake Presentation Zero to Snowflake Presentation
Zero to Snowflake Presentation Brett VanderPlaats
 
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2Tanel Poder
 
Getting The Most Out Of Your Flash/SSDs
Getting The Most Out Of Your Flash/SSDsGetting The Most Out Of Your Flash/SSDs
Getting The Most Out Of Your Flash/SSDsAerospike, Inc.
 
Top 10 Mistakes When Migrating From Oracle to PostgreSQL
Top 10 Mistakes When Migrating From Oracle to PostgreSQLTop 10 Mistakes When Migrating From Oracle to PostgreSQL
Top 10 Mistakes When Migrating From Oracle to PostgreSQLJim Mlodgenski
 
Building an open data platform with apache iceberg
Building an open data platform with apache icebergBuilding an open data platform with apache iceberg
Building an open data platform with apache icebergAlluxio, Inc.
 
Google Bigtable Paper Presentation
Google Bigtable Paper PresentationGoogle Bigtable Paper Presentation
Google Bigtable Paper Presentationvanjakom
 
Fine Tuning and Enhancing Performance of Apache Spark Jobs
Fine Tuning and Enhancing Performance of Apache Spark JobsFine Tuning and Enhancing Performance of Apache Spark Jobs
Fine Tuning and Enhancing Performance of Apache Spark JobsDatabricks
 
Oracle db performance tuning
Oracle db performance tuningOracle db performance tuning
Oracle db performance tuningSimon Huang
 
Presentation upgrade, migrate & consolidate to oracle database 12c &amp...
Presentation   upgrade, migrate & consolidate to oracle database 12c &amp...Presentation   upgrade, migrate & consolidate to oracle database 12c &amp...
Presentation upgrade, migrate & consolidate to oracle database 12c &amp...solarisyougood
 
How to Take Advantage of an Enterprise Data Warehouse in the Cloud
How to Take Advantage of an Enterprise Data Warehouse in the CloudHow to Take Advantage of an Enterprise Data Warehouse in the Cloud
How to Take Advantage of an Enterprise Data Warehouse in the CloudDenodo
 
Présentation Veritas Backup Exec 16
Présentation Veritas Backup Exec 16Présentation Veritas Backup Exec 16
Présentation Veritas Backup Exec 16Aymen Mami
 
Understanding Oracle RAC 11g Release 2 Internals
Understanding Oracle RAC 11g Release 2 InternalsUnderstanding Oracle RAC 11g Release 2 Internals
Understanding Oracle RAC 11g Release 2 InternalsMarkus Michalewicz
 
MyRocks introduction and production deployment
MyRocks introduction and production deploymentMyRocks introduction and production deployment
MyRocks introduction and production deploymentYoshinori Matsunobu
 

La actualidad más candente (20)

Apache Hadoop Security - Ranger
Apache Hadoop Security - RangerApache Hadoop Security - Ranger
Apache Hadoop Security - Ranger
 
Teradata training
Teradata trainingTeradata training
Teradata training
 
Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...
Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...
Streaming Event Time Partitioning with Apache Flink and Apache Iceberg - Juli...
 
Zero to Snowflake Presentation
Zero to Snowflake Presentation Zero to Snowflake Presentation
Zero to Snowflake Presentation
 
Oracle GoldenGate
Oracle GoldenGate Oracle GoldenGate
Oracle GoldenGate
 
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2
 
Getting The Most Out Of Your Flash/SSDs
Getting The Most Out Of Your Flash/SSDsGetting The Most Out Of Your Flash/SSDs
Getting The Most Out Of Your Flash/SSDs
 
Data Guard Architecture & Setup
Data Guard Architecture & SetupData Guard Architecture & Setup
Data Guard Architecture & Setup
 
Top 10 Mistakes When Migrating From Oracle to PostgreSQL
Top 10 Mistakes When Migrating From Oracle to PostgreSQLTop 10 Mistakes When Migrating From Oracle to PostgreSQL
Top 10 Mistakes When Migrating From Oracle to PostgreSQL
 
Oracle ASM Training
Oracle ASM TrainingOracle ASM Training
Oracle ASM Training
 
Building an open data platform with apache iceberg
Building an open data platform with apache icebergBuilding an open data platform with apache iceberg
Building an open data platform with apache iceberg
 
Google Bigtable Paper Presentation
Google Bigtable Paper PresentationGoogle Bigtable Paper Presentation
Google Bigtable Paper Presentation
 
Fine Tuning and Enhancing Performance of Apache Spark Jobs
Fine Tuning and Enhancing Performance of Apache Spark JobsFine Tuning and Enhancing Performance of Apache Spark Jobs
Fine Tuning and Enhancing Performance of Apache Spark Jobs
 
Storage
StorageStorage
Storage
 
Oracle db performance tuning
Oracle db performance tuningOracle db performance tuning
Oracle db performance tuning
 
Presentation upgrade, migrate & consolidate to oracle database 12c &amp...
Presentation   upgrade, migrate & consolidate to oracle database 12c &amp...Presentation   upgrade, migrate & consolidate to oracle database 12c &amp...
Presentation upgrade, migrate & consolidate to oracle database 12c &amp...
 
How to Take Advantage of an Enterprise Data Warehouse in the Cloud
How to Take Advantage of an Enterprise Data Warehouse in the CloudHow to Take Advantage of an Enterprise Data Warehouse in the Cloud
How to Take Advantage of an Enterprise Data Warehouse in the Cloud
 
Présentation Veritas Backup Exec 16
Présentation Veritas Backup Exec 16Présentation Veritas Backup Exec 16
Présentation Veritas Backup Exec 16
 
Understanding Oracle RAC 11g Release 2 Internals
Understanding Oracle RAC 11g Release 2 InternalsUnderstanding Oracle RAC 11g Release 2 Internals
Understanding Oracle RAC 11g Release 2 Internals
 
MyRocks introduction and production deployment
MyRocks introduction and production deploymentMyRocks introduction and production deployment
MyRocks introduction and production deployment
 

Similar a Teradata introduction - A basic introduction for Taradate system Architecture

1.4 System Arch.pdf
1.4 System Arch.pdf1.4 System Arch.pdf
1.4 System Arch.pdfssuser8b6c85
 
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community) [발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community) 동현 김
 
Membase East Coast Meetups
Membase East Coast MeetupsMembase East Coast Meetups
Membase East Coast MeetupsMembase
 
BIL406-Chapter-2-Classifications of Parallel Systems.ppt
BIL406-Chapter-2-Classifications of Parallel Systems.pptBIL406-Chapter-2-Classifications of Parallel Systems.ppt
BIL406-Chapter-2-Classifications of Parallel Systems.pptKadri20
 
Serve like a boss (part one)
Serve like a boss (part one)Serve like a boss (part one)
Serve like a boss (part one)Hamed Nemati
 
(ATS6-PLAT06) Maximizing AEP Performance
(ATS6-PLAT06) Maximizing AEP Performance(ATS6-PLAT06) Maximizing AEP Performance
(ATS6-PLAT06) Maximizing AEP PerformanceBIOVIA
 
Membase Intro from Membase Meetup San Francisco
Membase Intro from Membase Meetup San FranciscoMembase Intro from Membase Meetup San Francisco
Membase Intro from Membase Meetup San FranciscoMembase
 
Current and Future of Non-Volatile Memory on Linux
Current and Future of Non-Volatile Memory on LinuxCurrent and Future of Non-Volatile Memory on Linux
Current and Future of Non-Volatile Memory on Linuxmountpoint.io
 
Considerations when implementing_ha_in_dmf
Considerations when implementing_ha_in_dmfConsiderations when implementing_ha_in_dmf
Considerations when implementing_ha_in_dmfhik_lhz
 
HDFS_architecture.ppt
HDFS_architecture.pptHDFS_architecture.ppt
HDFS_architecture.pptvijayapraba1
 
Multithreading computer architecture
 Multithreading computer architecture  Multithreading computer architecture
Multithreading computer architecture Haris456
 
Developing a Ceph Appliance for Secure Environments
Developing a Ceph Appliance for Secure EnvironmentsDeveloping a Ceph Appliance for Secure Environments
Developing a Ceph Appliance for Secure EnvironmentsCeph Community
 
Multiprocessor.pptx
 Multiprocessor.pptx Multiprocessor.pptx
Multiprocessor.pptxMuhammad54342
 
Benchmark emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mware
Benchmark   emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mwareBenchmark   emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mware
Benchmark emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mwaresolarisyougood
 
Apache Performance Tuning: Scaling Up
Apache Performance Tuning: Scaling UpApache Performance Tuning: Scaling Up
Apache Performance Tuning: Scaling UpSander Temme
 
18 parallel processing
18 parallel processing18 parallel processing
18 parallel processingdilip kumar
 
chap 18 multicore computers
chap 18 multicore computers chap 18 multicore computers
chap 18 multicore computers Sher Shah Merkhel
 

Similar a Teradata introduction - A basic introduction for Taradate system Architecture (20)

MYSQL
MYSQLMYSQL
MYSQL
 
1.4 System Arch.pdf
1.4 System Arch.pdf1.4 System Arch.pdf
1.4 System Arch.pdf
 
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community) [발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
 
Membase East Coast Meetups
Membase East Coast MeetupsMembase East Coast Meetups
Membase East Coast Meetups
 
BIL406-Chapter-2-Classifications of Parallel Systems.ppt
BIL406-Chapter-2-Classifications of Parallel Systems.pptBIL406-Chapter-2-Classifications of Parallel Systems.ppt
BIL406-Chapter-2-Classifications of Parallel Systems.ppt
 
Serve like a boss (part one)
Serve like a boss (part one)Serve like a boss (part one)
Serve like a boss (part one)
 
(ATS6-PLAT06) Maximizing AEP Performance
(ATS6-PLAT06) Maximizing AEP Performance(ATS6-PLAT06) Maximizing AEP Performance
(ATS6-PLAT06) Maximizing AEP Performance
 
Membase Intro from Membase Meetup San Francisco
Membase Intro from Membase Meetup San FranciscoMembase Intro from Membase Meetup San Francisco
Membase Intro from Membase Meetup San Francisco
 
Current and Future of Non-Volatile Memory on Linux
Current and Future of Non-Volatile Memory on LinuxCurrent and Future of Non-Volatile Memory on Linux
Current and Future of Non-Volatile Memory on Linux
 
Considerations when implementing_ha_in_dmf
Considerations when implementing_ha_in_dmfConsiderations when implementing_ha_in_dmf
Considerations when implementing_ha_in_dmf
 
CA UNIT IV.pptx
CA UNIT IV.pptxCA UNIT IV.pptx
CA UNIT IV.pptx
 
HDFS_architecture.ppt
HDFS_architecture.pptHDFS_architecture.ppt
HDFS_architecture.ppt
 
Multithreading computer architecture
 Multithreading computer architecture  Multithreading computer architecture
Multithreading computer architecture
 
Developing a Ceph Appliance for Secure Environments
Developing a Ceph Appliance for Secure EnvironmentsDeveloping a Ceph Appliance for Secure Environments
Developing a Ceph Appliance for Secure Environments
 
parallel-processing.ppt
parallel-processing.pptparallel-processing.ppt
parallel-processing.ppt
 
Multiprocessor.pptx
 Multiprocessor.pptx Multiprocessor.pptx
Multiprocessor.pptx
 
Benchmark emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mware
Benchmark   emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mwareBenchmark   emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mware
Benchmark emc vnx7500, emc fast suite, emc snap sure and oracle rac on v-mware
 
Apache Performance Tuning: Scaling Up
Apache Performance Tuning: Scaling UpApache Performance Tuning: Scaling Up
Apache Performance Tuning: Scaling Up
 
18 parallel processing
18 parallel processing18 parallel processing
18 parallel processing
 
chap 18 multicore computers
chap 18 multicore computers chap 18 multicore computers
chap 18 multicore computers
 

Último

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 

Último (20)

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 

Teradata introduction - A basic introduction for Taradate system Architecture

  • 1. INTRODUCTION TO TERADATA DATA WAREHOUSE SYSTEM ARCHITECTURE PREPARED BY: MOHAMED TAHOON
  • 2. 1. What’s a Teradata DWH System ? 2. SMP vs MPP 3. Shared-Everything vs Shared-Nothing architecture 4. Hardware architecture 4.1 Cliques 4.2 Hot standby Nodes 5. Node architecture 5.1 PDE 5.2 Virtual Processors 5.3 Parsing Engine 5.4 Access Module Processor 5.5 Disk Arrays 6. Request Processing 2
  • 3. 3 1 What is Teradata DWH system? • RDBMS designed to run the world’s largest databases • Latest Intel technology nodes • Standard access language (SQL) • Massive Parallel Processing ‘MPP’ system • a “Shared-Nothing” architecture • Parallel-aware optimizer allowing concurrent complex queries • Linear Scalability
  • 4. 2. SMP VS MPP - Multiple CPU’s serving separate processes Simultaneously - Shared Everything - All CPU’s Share Same Memory - Mostly Hosted on Shared SAN Symmetric Multi Processing Massive Parallel Processing - Multiple CPUs runs in Parallel serving single process - Shared Nothing - Each CPU have It’s Own Memory and space - High Speed Nodes Connection [ByNet] 4
  • 5. 1. What’s a Teradata DWH System ? 2. SMP vs MPP 3. Shared-Everything vs Shared-Nothing architecture 4. Hardware architecture 4.1 Cliques 4.2 Hot standby Nodes 5. Node architecture 5.1 PDE 5.2 Virtual Processors 5.3 Parsing Engine 5.4 Access Module Processor 5.5 Disk Arrays 6. Request Processing 5
  • 6. 6 SHARED-NOTHINGSHARED-EVERYTHING - Disk controllers and bandwidth shared - Synchronization required across nodes - Large scale Scalability Issue - Best for many small statements - Controllers dedicated to nodes - No Cache Synchronization necessary - Linear Scalability - Best for Heavy statements
  • 7. 1. What’s a Teradata DWH System ? 2. SMP vs MPP 3. Shared-Everything vs Shared-Nothing architecture 4. Hardware architecture 4.1 Cliques 4.2 Hot standby Nodes 5. Node architecture 5.1 PDE 5.2 Virtual Processors 5.3 Parsing Engine 5.4 Access Module Processor 5.5 Disk Arrays 6. Request Processing 7
  • 8. 8 4 Teradata Hardware Architecture • SMP Nodes > Latest Intel SMP CPUs > Configured in 2+1 node cliques > Linux or Windows • BYNET Interconnect > Fully scalable bandwidth > 1 to 1024 nodes • Storage > Independent I/O per Node > Scales per node • Server Management > One console for the entire system Server Management PE SMP Node1 AMPPE AMP AMP AMP PE SMP Node2 AMPPE AMP AMP AMP PE SMP Node3 AMPPE AMP AMP AMP PE SMP Node4 AMPPE AMP AMP AMP BYNET Interconnect
  • 9. 4.1 CLIQUES • Group nodes together by multiported access to common disk array units. • Inter-node disk array connections are made using FibreChannel (FC) buses. • FC paths enable redundancy to ensure the loss of a processor node or disk controller won’t limit data availability. • Clique is a mechanism supports migration of VPROCs under PDE following a node failure. • If a node in a clique fails, VPROCs migrate to other nodes in the clique and continue to operate while recovery occurs on their home node. 9
  • 10. 4.2 HOT STANDBY NODES Improves availability and maintain performance levels in the event of a node failure. What’s a Hot Standby node: • Is a member of each clique in the system. • Does not normally participate in Teradata Database operations. • Used to compensate for the loss of a node in the clique. Using Hot Standby node Eliminates: • Restarts that are required to bring a failed node back into service. • Degraded service when VPROCs have migrated to other nodes in a clique. How Hot Standby node failover works : At node failure, all AMPs and LAN-attached PEs on the failed node migrate to the hot standby node The hot standby node becomes the production node. When the failed node returns to service, it becomes the new hot standby node. 10
  • 11. 1. What’s a Teradata DWH System ? 2. SMP vs MPP 3. Shared-Everything vs Shared-Nothing architecture 4. Hardware architecture 4.1 Cliques 4.2 Hot standby Nodes 5. Node architecture 5.1 PDE 5.2 Virtual Processors 5.3 Parsing Engine 5.4 Access Module Processor 5.5 Disk Arrays 6. Request Processing 11
  • 12. 5 Node Architecture (‘Shared Nothing’) Each Teradata Node is made up of hardware and software • Each node runs copy of OS, database SW, & virtual processes • Each node has CPUs, system disk, memory & adapters PE vproc AMP vproc Vdisk AMP vproc Vdisk AMP vproc Vdisk AMP vproc Vdisk AMP vproc Vdisk AMP vproc Vdisk AMP vproc Vdisk AMP vproc Vdisk PE vproc UNIX PDE
  • 13. 5.1 PARALLEL DATABASE EXTENSIONS - PDE Software interface layer lies between O. S. & TD DB which enables The database to : • Run in a parallel environment • Execute Vprocs • Apply a flexible priority scheduler to Teradata Database sessions • Consistently manage memory, I/O, and messaging system interfaces across multiple OS platforms PDE provides a series of parallel operating system services, which include: • Facilities to manage parallel execution of database operations on multiple nodes. • Dynamic distribution of database tasks. • Coordination of task execution within and between nodes. 13
  • 14. 5.2 VIRTUAL PROCESSORS – WHAT IS IT What is it: • Set of software processes that run on a node under Teradata (PDE). • Eliminate dependency on specialized physical processors VPROC characteristics: • Multiple VPROCs can run on an SMP platform or a node. • VPROCs and the tasks running under them communicate using unique-address messaging, as if they were physically isolated from one another. • This message communication is done using the BYNET hardware and BYNET Driver. • maximum # VPROCs in a system: 16,384 VPROCs, in a node 128. 14
  • 15. 5.2 VIRTUAL PROCESSORS – VPROC TYPES GTW • Gateway VPROCs provide a socket interface to Teradata Database PE • Parsing Engines perform session control, query parsing, security validation, query optimization AMP • Access Module Processors perform DB functions; Like: executing database queries. • Database storage Distributed Across AMPs. TVS • Manages Teradata Database storage. • AMPs acquire their portions of database storage through the TVS vproc. NODE • The node vproc handles PDE and operating system functions not directly related to AMP and PE work. • Cannot be externally manipulated, and do not appear in the output of the Vproc Manager utility. RSG • Relay Services Gateway provides a socket interface for the replication agent. • Relaydictionary changes to the Teradata Meta Data Services utility. 15
  • 16. 5.3 PARSING ENGINE ‘PE’ • Communicates with the client system on one side and with the AMPs (via the BYNET) on the other side. • Each PE executes the database software that manages sessions, decomposes SQL statements into steps, possibly in parallel, and returns the answer rows to the requesting client. Parsing Engine Elements Parser Decomposes SQL into relational data management processing steps. Optimizer Determines the most efficient path to access data. Generator Generates and packages steps. Dispatcher Receives processing steps from the parser, sends them to the appropriate AMPs via BYNET. Monitors the completion of steps and handles errors encountered during processing. Session Control Manages session activities, such as logon, password validation, and logoff. Recovers sessions following client or server failures. 16
  • 17. 5.4 ACCESS MODULE PROCESSOR ‘AMP’ • The AMP VPROC manages Teradata Database interactions with the disk subsystem. • Each AMP manages a share of the disk storage. Database management tasks • Accounting • Journaling • Locking tables, rows, and databases • Output data conversion During query processing: • Sorting • Joining data rows • Aggregation File System Management Disk Space management. 17
  • 18. 5.4 THE AMPS – REQUEST PROCESSING • The BYNET transmits messages to and from the AMPS and PEs. • An AMP step can be sent to one of the following: • One AMP • Multi-Cast (A selected set of AMPs) • All AMPs in the system PE communication with Amps during request processing: 1. PE 1 : Access is through a primary index and a request is for a single row - the PE transmits steps to a single AMP 2. PE 2 : the request is for many rows (an all-AMP request): - the PE makes the BYNET broadcast the steps to all AMPs ** To minimize system overhead, the PE can send a step to a subset of AMPs, when appropriate. 18
  • 19. 5.5 DISK ARRAYS Logical Units ‘Lun’ • The RAID Manager uses drive groups DG • DG is a set of drives that have been configured into one or more LUNs. • OS recognizes a LUN as a disk and is not aware that it is writing on on multiple disk drives. Vdisk • Group of cylinders currently assigned to an AMP • OS recognizes a LUN as a disk and is not aware that it is writing on on multiple disk drives. • The actual physical storage may derive from several different storage devices 19
  • 20. 1. What’s a Teradata DWH System ? 2. SMP vs MPP 3. Shared-Everything vs Shared-Nothing architecture 4. Hardware architecture 4.1 Cliques 4.2 Hot standby Nodes 5. Node architecture 5.1 PDE 5.2 Virtual Processors 5.3 Parsing Engine 5.4 Access Module Processor 5.5 Disk Arrays 6. Request Processing 20
  • 21. 6 REQUEST PROCESSING – “LIFETIME OF A QUERY” 1. The Parser •Checks Request cache to determine if the request is already there 2. The Syntaxer •checks the syntax of an incoming request 3. The Resolver •Adds information from the Data Dictionary to convert database, table, view, stored procedure, and macro names to internal identifiers. 4. Security module •checks privileges in the Data Dictionary. 5. The Optimizer •Determines the most effective way to implement the SQL request. 6. The Optimizer •scans the request to determine where to place locks, then passes the optimized parse tree to the Generator. 7. The Generator •Transforms the optimized parse tree into plastic steps, caches the steps if appropriate, and passes them to gncApply 8. gncApply •Takes the plastic steps produced by the Generator, binds in parameterized data if it exists, and transforms it into concrete steps. 9 The Dispatcher 21
  • 22. P.45 REQUEST PROCESSING – “1. THE PARSER” 1. The Parser • Checks if the request in Request cache: • IF IN = > Go to Step (2) - The Syntaxer. • IF New Request • The Parser reuses the plastic steps found in the cache and passes them to gncApply. • Go to checking privileges (step 4) • Then Go to gncApply (step 8) after. 2. The Syntaxer •checks the syntax 3. The Resolver •convert Object names to internal identifiers. 4. Security module •checks privileges 5. The Optimizer •Determines the most effective way to implement the SQL request. 6. The Optimizer •scans the request to determine where to place locks 7. The Generator •Transforms parse tree into plastic steps. 8. gncApply •binds parameterized data if it exists, transforms it into concrete steps. 9 The Dispatcher Plastic steps are directives to the database management system that do not contain data values 22
  • 23. P.45 REQUEST PROCESSING – “2. SYNTAXER, 3. RESOLVER” 1. The Parser •Checks Request cache to determine if the request is already there 2. The Syntaxer • checks the syntax of new request: • IF Wong => passes an error message back to the requestor and stops • IF Correct => converts the request to a parse tree and passes it to the Resolver (3) 3. The Resolver • Adds information from the Data Dictionary (or cached copy of the information) to convert database, table, view, stored procedure, and macro names to internal identifiers. 4. Security module •checks privileges 5. The Optimizer •Determines the most effective way to implement the SQL request. 6. The Optimizer •scans the request to determine where to place locks 7. The Generator •Transforms parse tree into plastic steps. 8. gncApply •binds parameterized data if it exists, transforms it into concrete steps. 9 The Dispatcher 23
  • 24. P.45 REQUEST PROCESSING – “4. SECURITY MODULE, 5. - 6. OPTIMIZER” 1. The Parser •Checks Request cache to determine if the request is already there 2. The Syntaxer •checks the syntax 3. The Resolver •convert Object names to internal identifiers. 4. The Security module • checks privileges of accessed object vs Requestor: • Mismatch => returns a privilege error message • Privileged => passes the request to the Optimizer. 5. The Optimizer • Determines the most effective way to implement the request (Excution plan) 6. Optimizer • Determine what type and where to place Objects locks 7. The Generator •Transforms parse tree into plastic steps. 8. gncApply •binds parameterized data if it exists, transforms it into concrete steps. 9 The Dispatcher 24
  • 25. P.45 REQUEST PROCESSING – “SEPARATE ORIGINAL” 1. The Parser •Checks Request cache to determine if the request is already there 2. The Syntaxer •checks the syntax 3. The Resolver •convert Object names to internal identifiers. 4. Security module •checks privileges 5. The Optimizer •Determines the most effective way to implement the SQL request. 6. The Optimizer •scans the request to determine where to place locks 7. The Generator • Transforms the optimized parse tree into plastic steps • caches the steps if appropriate • passes them to gncApply. 8. gncApply • Binds in parameterized data if it exists, and transform plastic steps to concrete steps. • passes the concrete steps to the Dispatcher 9 The Dispatcher Concrete steps are directives to the AMPs that contain needed user-or session- specific values and needed data parcels 25
  • 26. P.45 DISPATCHER – REQUEST PROCESSING • controls the sequence in which steps are executed: • It also passes the steps to the BYNET to be distributed to the AMPs: • 1 The Dispatcher receives concrete steps from gncApply. • 2 The Dispatcher places the first step on the BYNET; • - tells the BYNET whether the step is for one AMP, several AMPS, or all AMPs; • - waits for a completion response. • - Whenever possible, Teradata Database performs steps in parallel to enhance performance. • 3 The Dispatcher receives a completion response from all expected AMPs and places the next step on the BYNET. • It continues to do this until all the AMP steps associated with a request are done. 26
  • 27. 27

Notas del editor

  1. 12
  2. Plastic steps are directives to the database management system that do not contain data values.
  3. Plastic steps are directives to the database management system that do not contain data values.
  4. Plastic steps are directives to the database management system that do not contain data values.
  5. Plastic steps are directives to the database management system that do not contain data values.
  6. Plastic steps are directives to the database management system that do not contain data values.