1. 1. How do you connect EME to Abinitio Server?2. What does dependency analysis mean in Ab Initio?Ans: Dependency analysis will answer the questions regarding datalinage.That iswhere does the data come from,what applications prodeuce and depend on this dataetc. We can retrieve the maximum (surrogate key) from the existing data,the by usingscan or next_in_sequence/reformat we can generate further sequence for new records.3. How to create repository in abinitio for stand alone system(LOCAL NT)?Ans: If you are trying to install the Ab -Initio on stand alone machine , then it is notnecessary to create the repository , While installing It creates automatically for youunder abinitio folder ( where you installing the Ab-Initio) If you are still not clearplease ask your Question on the same portal .4. What is the difference between rollup and scan?Ans: By using rollup we cant generate cumulative summary records for that we will beusing scan.5. How can i run the 2 GUI merge files?Ans:Do you mean by merging Gui map files in WR.If so, by merging GUI map files inGUI map editor it wont create corresponding test script.without testscript you cant runa file.So it is impossible to run a file by merging 2 GUI map files.6. Describe how you would ensure that database object definitions (Tables, Indices, Constraints, Triggers, Users, Logins, Connection Options, and Server Options etc) are consistent and repeatable between multiple database instances (i.e.: a test and production copy of a database).Ans: Take an entire database backup and restore it in different instance. Take astatistics of all valid and invalid objects and match.Periodically refresh.7. Describe the “Grant/Revoke” DDL facility and how it is implemented?Ans: Basically,This is a part of D.B.A responsibilities GRANT means permissions forexample GRANT CREATE TABLE ,CREATE VIEW AND MANY MORE .REVOKE means cancel the grant (permissions).So,Grant or Revoke both commandsdepend upon D.B.A.8. Explain the difference between the “truncate” and "delete" commands?ans: Truncate :- It is a DDL command, used to delete tables or clusters. Since it is aDDL command hence it is auto commit and Rollback cant be performed. It is fasterthan delete.Delete:- It is DML command, generally used to delete a record, clusters or tables.Rollback command can be performed , in order to retrieve the earlier deleted things.To make deleted things permanently, "commit" command should be used.8. When running a stored procedure definition script how would you guarantee the definition could be "rolled back" in the event of problems?ans: There are quite a few factors that determines the approach such as what type ofversion control are used, what is the size of the change, what is the impact of thechange, is it a new procedure or replacing an existing and so on.If it is a new, then just drop the wrong one
2. if it is a replacement then how big is the change and what will be the possible impact,depending upon you can have the entire database backed up or just create a script foryour original procedure before messing it up or you just do an ed and change the fileback to original and reapply. you may rename the old procedure as old and then workon new and so on. few issues to keep in mind are synonyms, dependancies, grants, any job calling theprocedure at the time of change and so on. In nutshell, scenario can be varied andsolution also can be varied.10. Describe the process steps you would perform when defragmenting a datatable. This table contains mission critical data.Ans: There are several ways to do this:1) We can move the table in the same or other tablespace and rebuild all the indexeson the table.alter table <table_name> move <tablespace_name> this activity reclaims thedefragmented space in the tableanalyze table table_name compute statistics to capture the updated statistics.2)Reorg could be done by taking a dump of the table, truncate the table and importthe dump back into the table.11. Describe the elements you would review to ensure multiple scheduled"batch" jobs do not "collide" with each other.?ans: Because every job depend upon another job for example if you first job result issuccessfull then another job will execute otherwise your job doesnt work.12. When using multiple DML statements to perform a single unit of work, is itpreferable to use implicit or explicit transactions, and why?Ans: Because implicit is using for internal processing and explicit is using for user opendata requied.13. How would you find out whether a SQL query is using the indices youexpect?ans: Explain plan can be reviewed to check the execution plan of the query. Thiswould guide if the expected indexes are used or not.14. What is a cursor? Within a cursor, how would you update fields on therow just fetched?Ans: The oracle engine uses work areas for internal processing in order to the executesql statement is called cursor.There are two types of cursors like Implecit cursor andExplicit cursor.Implicit cursor is using for internal processing and Explicit cursor isusing for user open for data required.15. What are Cartesian joins?Ans: Cartesian join will get you a Cartesian product. A Cartesian join is when you joinevery row of one table to every row of another table. You can also get one by joiningevery row of a table to every row of itself.16. What are primary keys and foreign keys?Ans: In RDBMS the relationship between the two tables is represented as Primary keyand foreign key relationship.Wheras the primary key table is the parent table andforeignkey table is the child table.The criteria for both the tables is there should be amatching column.
3. 17. Have you used rollup component? Describe how.Ans: If the user wants to group the records on particular field values then rollup isbest way to do that. Rollup is a multi-stage transform function and it contains thefollowing mandatory functions.1. initialise2. rollup3. finaliseAlso need to declare one temporary variable if you want to get counts of a particulargroup.For each of the group, first it does call the initialise function once, followed by rollupfunction calls for each of the records in the group and finally calls the finalise functiononce at the end of last rollup call.18. Have you worked with packages?Ans: Packages are nothing but the reusable blocks of objects like transforms, userdefined functions, dmls etc. These packages are to be included in the transform whereyou use them. For example, consider a user defined function like/*string_trim.xfr*/out::trim(input_string)=beginlet string(35) trimmed_string = string_lrtrim(input_string);out::trimmed_string;endNow, the above xfr can be included in the transform where you call the above functionasinclude ~/xfr/string_trim.xfr;But this should be included ABOVE your transform function.For more details see the help file in "packages".19. Explain what is lookup?ans: Lookup is basically a specific dataset which is keyed. This can be used to mappingvalues as per the data present in a particular file (serial/multi file). The dataset can bestatic as well dynamic ( in case the lookup file is being generated in previous phaseand used as lookup file in current phase). Sometimes, hash-joins can be replaced byusing reformat and lookup if one of the input to the join contains less number ofrecords with slim record length.AbInitio has built-in functions to retrieve values using the key for the lookup.20. How to handle if DML changes dynamically in abinitioans: If the DML changes dynamically then both dml and xfr has to be passed as graphlevel parameter during the runtime.21. How many components in your most complicated graph?ans: This is a tricky question, number of component in a graph has nothing to do with
4. the level of knowledge a person has. On the contrary, a proper standardized andmodular parametric approach will reduce the number of components to a very few. Ina well thought modular and parametric design, mostly the graphs will have 3/4components, which will be doing a particular task and will then call another sets ofgraphs to do the next and so on. This way total numbers of distinct graphs willdrastically come down, support and maintenance will be much more simplified.The bottomline is, there are lot more other things to plan rather than to addcomponents.22. What is the difference between look-up file and look-up, with a relevantexample?Ans: A lookup is a component of abinitio graph where we can store data and retrieve itby using a key parameter.A lookup file is the physical file where the data for the lookup is stored.23. Do you know what a local lookup is?ans: Lookup File consists of data records which can be held in main memory. Thismakes the transform function to retrieve the records much faster than retirving fromdisk. It allows the transform component to process the data records of multiple filesfastly.24. How do you add default rules in transformer?ans: Double click on the transform parameter of parameter tab page of componentproperties, it will open transform editor. In the transform editor click on the Edit menuand then select Add Default Rules from the dropdown. It will show two options - 1)Match Names 2) Wildcard.25. What are kinds of layouts does ab initio supportsans: Basically there are serial and parallel layouts supported by AbInitio. A graph canhave both at the same time. The parallel one depends on the degree of dataparallelism. If the multi-file system is 4-way parallel then a component in a graph canrun 4 way parallel if the layout is defined such as its same as the degree ofparallelism.26. What is the use of aggregation when we have rollup as we know rollupcomponent in abinitio is used to summirize group of data record. then wherewe will use aggregation ?ans: Aggregation and Rollup both can summerise the data but rollup is much moreconvenient to use. In order to understand how a particular summerisation being rollupis much more explanatory compared to aggregate. Rollup can do some otherfunctionalities like input and output filtering of records.27. What is the relation between EME , GDE and Co-operating system ?ans: EME is said as enterprise metdata env, GDE as graphical devlopment env and Co-operating sytem can be said as asbinitio server relation b/w this CO-OP, EME AND GDEis as fallows Co operating system is the Abinitio Server. this co-op is installed on perticular O.Splatform that is called NATIVE O.S .comming to the EME, its i just as repository ininformatica , its hold the metadata,trnsformations,db config files source and targetsinformations. comming to GDE its is end user envirinment where we can devlop thegraphs(mapping just like in informatica)desinger uses the GDE and designs the graphs and save to the EME or Sand box it isat user side.where EME is ast server side.
5. 28. How to retrive data from database to source in that case whicecomponenet is used for this?ans; To unload (retrive) Data from the database DB2, Informix, or Oracle we havecomponents like Input Table and Unload DB Table by using these two components wecan unload data from the database.29. What are the contineous components in Abinitio?ans: Contineous components used to create graphs,that produce useful output filewhile running continouslyEx:- Contineous rollup,Contineous update,batch subscribe30. Which one is faster for processing fixed length dmls or delimited dmls andwhy ?ans: Fixed length DMLs are faster because it will directly read the data of that lengthwithout any comparisons but in delimited one,s every character is to be compared andhence delays31. How will you test a dbc file from command prompt ??ans: try "m_db test myfile.dbc"32. What is mean by Co > Operating system and why it is special for Ab-initio ?ans: It converts the AbInitio specific code into the format, which the UNIX/Windowscan understand and feeds it to the native operating system, which carries out the task.33. What is the latest version that is available in Ab-initio?Ans: The latest version of GDE ism1.15 AND Co>operating system is 2.1434. What is AB_LOCAL expression where do you use it in ab-initio?ans: ablocal_expr is a parameter of itable component of Ab Initio.ABLOCAL() isreplaced by the contents of ablocal_expr.Which we can make use in parallelunloads.There are two forms of AB_LOCAL() construct, one with no arguments and onewith single argument as a table name(driving table).The use of AB_LOCAL() construct is in Some complex SQL statements containgrammar that is not recognized by the Ab Initio parser when unloading in parallel. Youcan use the ABLOCAL() construct in this case to prevent the Input Table componentfrom parsing the SQL (it will get passed through to the database). It also specifieswhich table to use for the parallel clause.35. How do you convert 4-way MFS to 8-way mfs?Ans: To convert 4 way to 8 way partition we need to change the layout in thepartioning component. There will be seperate parameters for each and every type ofpartioning eg. AI_MFS_HOME, AI_MFS_MEDIUM_HOME, AI_MFS_WIDE_HOME etc.The appropriate parameter need to be selected in the component layout for the type ofpartioning..36. What is $mpjret? Where it is used in ab-initio?ans: You can use $mpjret in endscript likeif 0 -eq($mpjret)
6. thenecho "success"elsemailx -s "[graphname] failed" mailid36. How Does MAXCORE works?Ans: Maxcore is a value (it will be in Kb).Whne ever a component is executed it willtake that much memeory we specified for execution37. What is the Difference between DML Expression and XFR Expression ?ans: The main difference b/w dml & xfr is thatDML represent format of the metadata.XFR represent the tranform functions.which will contain business rules38. What are the different versions and releases of ABinitio (GDE and Co-opversion)ans: For GDE 1.10, 1.11, 1.12, 1.13, and 1.15 is latest one. For Co-Op latest one is2.14.39. How to run the graph without GDE?Ans: In RUN ==> Deploy >> As script , it create a .bat file at ur host directory ,andthen run .bat file from Command prompt40. What are differences between different GDEversions(1.10,1.11,1.12,1.13and 1.15)?What are differences between different versions of Co-op?ans: 1.10 is a non key version and rest are key versions.There are lot of components added and revised at following versions.41. Can anyone give me an exaple of realtime start script in the graph?Ans: Here is a simple example to use a start script in a graph:In start script lets give as:export $DT=`date +%m%d%y`Now this variable DT will have todays date before the graph is run.Now somewhere in the graph transform we can use this variable as;out.process_dt::$DT;which provides the value from the shell.42. What is the syntax of m_dump command?ans: The genaral syntax is "m_dump metadata data [action] "43. What is the importance of EME in abinitio?
7. Ans: EME is a repository in Ab Inition and it used for checkin and checkout for graphsalso maintains graph version.44. What is m_dumpm_dump command prints the data in a formatted way.m_dump <dml> <file.dat>46. what is BRODCASTING and REPLICATE ?ans: Broadcast - Takes data from multiple inputs, combines it and sends it to all theoutput ports.Eg - You have 2 incoming flows (This can be data parallelism or componentparallelism) on Broadcast component, one with 10 records & other with 20 records.Then on all the outgoing flows (it can be any number of flows) will have 10 + 20 = 30recordsReplicate - It replicates the data for a particular partition and send it out to multipleout ports of the component, but maintains the partition integrity.Eg - Your incoming flow to replicate has a data parallelism level of 2. with one partitionhaving 10 recs & other one having 20 recs. Now suppose you have 3 output flos fromreplicate. Then each flow will have 2 data partitions with 10 & 20 records respectively.37. What is skew and skew measurement?Ans: skew is the mesaureof data flow to each partation .suppose i/p is comming from 4 files and size is 1 gb1 gb= ( 100mb+200mb+300mb+5oomb)1000mb/4= 250 mb(100- 250 )/500= --> -150/500 == cal ur self it wil come in -ve value.calclu for 200,500,300.+ve value of skew is allways desriable.skew is a indericet measure of graph.38. what is local and formal parameter?Ans: Two are graph level parameters but in local you need to initialize the value at thetime of declaration where as globle no need to initialize the data it will promt at thetime of running the graph for that parameter.39. What is driving port? When do you use it?Ans: When you set the sorted-input parameter of "JOIN" component to "In memory:Input need not be sorted", you can find the driving port. Generally driving port use toimprove performance in a graph.The driving input is the largest input. All other inputs are read into memory.For example, suppose the largest input to be joined is on the in1 port. Specify a portnumber of 1 as the value of the driving parameter. The component reads all otherinputs to the join — for example, in0, and in2 — into memory.
8. Default is 0, which specifies that the driving input is on port in0.Join also improves performance by loading all records from all inputs except thedriving input into main memory.40. How to get DML using Utilities in UNIX?Ans: If your source is a cobol copybook, then we have a command in unix whichgenerates the required in Ab Initio. here it is:cobol-to-dml.41. What is semi-joinans: In abinitio,there are 3 types of join...1.inner join. 2.outer join and 3.semi join.for inner join record_requiredn parameter is true for all in ports.for outer join it is false for all the in ports.if u want the semi join u put record_requiredn as true for the required component andfalse for other components..42. How would you do performance tuning for already built graph ? Can youlet me know some examples?Ans: example :- suppose sort is used in fornt of merge component its no use of usingsort ! bcz we hv sort component built in merge.2) we use lookup instead of JOIN,Merge Componenet.3) suppose we wnt to join the data comming from 2 files and we dnt wnt dupliates wewill use union funtion instead of adding addtional component for duplicate remover.43. How to do we run sequences of jobs ,,like output of A JOB is Input to BHow do we co-ordinate the jobs?Ans: By writing the wrapper scripts we can control the sequence of execution of morethan one job.44. What is the difference between .dbc and .cfg file?Ans: .cfg file is forÂ the remote connection and .dbc is for connecting the database..cfg contains :1. The name of the remote machine2. The username/pwd to be used while connecting to the db.3. The location of the operating system on the remote machine.4. The connection method.and .dbc file contains the information:1. The database name
9. 2. Database version3. Userid/pwd4. Database character set and some more...45. Sift links to MFS files on Unix for Ab Initio ? what is this ....2) $pound what is this3) $? what for it is used4) types of loading5 overwrite when it used ?ans: Link is a command where in unix we use for when the original file is deleted whenwe create a link the other replaces file exists.Example: ln file 1 file2$# Total number of positional parameters.$? exit status of the last executed commandtypes of loading are conventional loading and direct loadingOverride not overwrite it is used in join, assign keys alternate keyIn join it is used hen input need not be sorted.46. How to find the number of arguments defined in graph?Ans: $# - No of positional parameters$? - the exit status of the last executed command.47. Difference between conventional loading and direct loading ? when it isused in real time .?ans: Conventional Load:Before loading the data, all the Table constraints will be checked against the data.Direct load:(Faster Loading)All the Constraints will be disabled. Data will be loaded directly.Later the data will bechecked against the table constraints and the bad data wont be indexed.Api conventional loadingutility direct loading.48. can anyone tell me what happens when the graph run? i.e The Co-operating System will be at the host, We are running the graph at some otherplace. How the Co-operating System interprets with Native OS?ans: when ever you press Run button on your GDE,the GDE genarates a scriptand the genarated script will be transfered to your host which is specified in to yourGDE run settings. then the Co>operating system interprets this script and executesthe script on different mechins(if required) as a sub process(threads),after compleationof each sub process,these sub_processes will return status code to main process thismain process in tern returns error or sucess code of the job to GDE49. How to work with parameterized graphs?Ans: One of the main purpose of the parameterized graphs is that if we need to runthe same graph for n number of times for different files, we set up the graphparameters like $INPUT_FILE, $OUTPUT_FILE etc and we supply the values for these inthe Edit>parameters.These parameters are substituted during the run time. we can setdifferent types of parameters like positional, keyword, local etc.
10. The idea here is, instead of maintaining different versions of the same graph, we canmaintain one version for different files.50. What are the most commonly used components in a Abinition graph?can anybody give me a practical example of a trasformation of data, saycustomer data in a credit card company into meaningful output based onbusiness rules?Ans: The most commonly used components in to any Ab Initio project areinput file/output fileinput table/output tablelookup filereformat,gather,join,runsql,join with db,compress components,sort,trash,partition byexpression,partition by key ,concatinate51. How to Improve Performance of graphs in Ab initio?Give some examplesor tips.?Ans: There are somany ways to improve the performance of the graphs in Abinitio.I have few points from my side.1.Use MFS system using Partion by Round by robin.2.If needed use lookup local than lookup when there is a large data.3.Takeout unnecessary components like filter by exp instead provide them inreformat/Join/Rollup.4.Use gather instead of concatenate.5.Tune Max_core for Optional performance.6.Try to avoid more phases.52. How to Schedule Graphs in AbInitio, like workflow Schedule inInformatica? And where we must is Unix shell scripting in AbInitio?ans: As like in Informatica, the scheduling cannot be completely done in Ab Initio. Inthe Ab Initio GDE versions 2.14.X there is a Plan>It which replaced DTM plans.Through Plan>It plans we can have different methods to have pre and post processand also triggers. there are sepearte method to carry out particular process on successand failure of the graphs.As concerned to my knowledge, the scheduling of these plansare done thru the cron job only.53. What r the Graph parameter?ans: There are 2 types of graph parameters in AbInitio1. local parameter2. Formal parameters.(those parameters working at runtime)54. Explain the differences between api and utility mode?Ans: API and UTILITY are the two possible interfaces to connect to the databases toperform certain user specific tasks. These interfaces allows the user to access or usecertain functions (provided by the database vendor) to perform operation on thedatabases.The functionality of each of these interfaces depends on the databases.API has more flexibility but often considered as a slower process as compared toUTILITY mode. Well the trade off is their performance and usage.55. Can anyone please explain the environment varaibles with example.?ans; Environemental variables server as global variables in unix envrionment. Theyare used for passing on values from a shell/ process to another.
11. They are inherited by Abinitio as sandbox variables/ graph parameters likeAI_SORT_MAX_COREAI_HOMEAI_SERIALAI_MFS etc.To know what all variables exist, in your unix shell, find out the naming conventionand type a command like "env | grep AI". This will provide you a list of all thevariables set in the shell. You can refer to the graph parameters/ components to seehow these variables are used inside Abinitio.56. What is the difference between sandbox and EME, can we perform checkinand checkout through sandbox/ Can anybody explain checkin and checkout?Ans; Sandboxes are work areas used to develop, test or run code associated with agiven project. Only one version of the code can be held within the sandbox at anytime.The EME Datastore contains all versions of the code that have been checked into it. Aparticular sandbox is associated with only one Project where as a Project can bechecked out to a number of sandboxes57. How can we test the abintio manually and automation?ans: i hope abinitio testing is to be carried manually only no automation is available asof now.we need to integrate the graphs n also run them manually n carry on theprocess.thats it.58. Can we load multiple files?Ans: Load multiple files from my perspective means writing into more than one file ata time. If this is the same case with you, Ab initio provides a component called WriteMultiplefiles (in dataset Component group) which can write multiple files at a time. Butthe files which are to be written must be local files i.e., they should reside in your localPC. For more information on this component read in help file.59. What is data mapping and data modelling?Ans; Data mapping deals with the transformation of the extracted data at FIELD leveli.e. the transformation of the source field to target field is specified by the mappingdefined on the target field. The data mapping is specified during the cleansing of thedata to be loaded.For Example:source;string(35) name = "Siva Krishna ";target;string("01") nm=NULL("");/*(maximum length is string(35))*/Then we can have a mapping like:Straight move.Trim the leading or trailing spaces.The above mapping specifies the transformation of the field nm.60. What do you mean by .profile in Abinitio and what does it contains?Ans: .profile is a file which gets executed automatically when that particular userlogging in.you can change your .profile file to include any commands that you want to executewhenever u logging in.you can even put commands in your .profile file that overrides
12. settings made in /etc/profile(this file is set up by the system adminiastrator).you can set the following in your .profile......- Environment settings- aliases- path variables- name and size of your history file- primary and secondary command prompts..61. What is .abinitiorc and What it contain?ans: .abinitiorc is the config file for ab initio. It is found in users home directory.Generally it is used to contain abinitio home path, different log in information like idencrypted password login method for hosts where the graph connects in time ofexecution.It may contain inf like EME host and others.62. How to execute the graph from start to end stages? Tell me and how torun graph in non-Abinitio system?Ans: There are so many ways to do this, i am giving one example due to timeconstraint you can run components according to phasea how you defined.by creating ksh, sh scripts also you can run.63. For data parallelism, we can use partition components. For componentparallelism, we can use replicate component. Like this which component(s)can we use for pipeline parallelism?ans: When connected sequence of components of the same branch of graph executeconcurrently is called pipeline parallelism. Componets like reformat where wedistribute input flow to multiple o/p flow using output index depending on someselection criteria and process those o/p flows simultaneosly creates pipelineparallelism.But components like sort where entire i/p must be read befor a single record is writento o/p can not achieve pipeline parallelism.64. There are 2 tables, Employee and Department. There are few records inemployee table, for which, the department is not assigned. The output of thequery should contain all th employees names and their correspondingdepartments, if the department is assigned otherwise employee names andnull value in the place department name. What is the query?Ans: Use an ouer join to get your query.Select E.ENAME, D.DNAMEfrom Employee E, Dept Dwhere D.DEPTNO (+)= E.DEPTNO65. What is the function you would use to transfer a string into a decimal?Ans: For converting a string to a decimal we need to typecast it using the followingsyntax,out.decimal_field :: ( decimal( size_of_decimal ) ) string_field;The above statement converts the string to decimal and populates it to the decimalfield in output.____________________66. How many parallelisms are in Abinitio? Please give a definition of each.?
13. Ans: TYPES OF PARALLELISMâ€”There are 3 types of parallelism in ab-initio.1) Data Parallelism: Data is processed at the different servers at the same time.2) Pipeline parallelism: In this the records are processed in pipeline, i.e. thecomponents do not have to wait for all the records to be processed. The records thatgot processed are passed to next component in pipeline.3) Component Parallelism: In this two or more components process the records inparallel.Component parallelism:- A graph with multiple processes running simultaneously onseparate data uses component parallelism.Data parallelism :- A graph that deals with data divided into segments and operates oneach segment simultaneously uses data parallelism. Nearly all commercial dataprocessing tasks can use data parallelism. To support this form of parallelism, Ab Initioprovides Partition components to segment data, and Departition components to mergesegmented data back together .Pipeline parallelism :- A graph with multiple components running simultaneously onthe same data uses pipeline parallelism. Each component in the pipeline continuouslyreads from upstream components, processes data, and writes to downstreamcomponents. Since a downstream component can process records previously writtenby an upstream component, both components can operate in parallel. NOTE: To limitthe number of components running simultaneously, set phases in the graph.68. What is the difference between a DB config and a CFG file?Ans; A .dbc file has the information required for Ab Initio to connect to the databaseto extract or load tables or views. While .CFG file is the table configuration file createdby db_config while using components like Load DB Table.69. Have you eveer encountered an error called depth not equal? (Thisoccurs when you extensively create graphs it is a trick question)ans: When two components are linked together if their layout doesnot match then thisproblem can occur during the compilation of the graph. A solution to this problemwould be to use a partitioning component in between if there was change in layout.70. How do you truncate a table? (Each candidate would say only 1 of theseveral ways to do this.)ans: There are many ways to do it.1. Probably the easiest way is to use Truncate Table2. Run Sql or update table can be used to do the same thing3. Run Program71. What is the difference between partitioning with key and round robin?Ans: PARTITION BY KEY:In this, we have to specify the key based on which the partition will occur. Since it iskey based it results in very well balanced data. It is useful for key dependentparallelism.PARTITION BY ROUND ROBIN:In this, the records are partitioned in sequential way,distributing data evenly in blocksize chunks across the output partition. It is not keybased and results in well balanced data especially with blocksize of 1. It is useful forrecord independent parallelism.72. What is a ramp limit?