Reputation: 1144
A DDL (Data Definition Language) compiler generates a set of tables stored in data dictionary.
Upvotes: 0
Views: 1008
Reputation: 18408
(1) You have a false perception of what a DDL compiler does. First and foremost, the compiler does nothing else than compile your statements. If those statements are also to be executed then it is the DDL processor that does this. (Granted, it is often not very visible as being a separate component of the system because there is often no point in keeping "compiled DDL" stored somewhere for repeated execution. So compile & execute usually go hand in hand.) But second, its scope of operation is not at all limited to "generating sets of tables". For example, DDL can also create user-defined data types. DDL can also define inter-table constraints. etc. etc.
(2) What does a data dictionary mean ? A data dictionary is a dictionary that contains every piece of information needed to describe the database structures your applications use.
(3) How is it stored in memory ? Irrelevant question. Your interface to the data dictionary is the front-end component of the DDL processing system. How its own internal data are structured, is for the vendor to choose, and not for you to know.
(4) Is it because ... ? No. Data dictionaries have come hand in hand with DBMS systems as long as programmers can remember. They are not exclusive to in-memory DBMS systems.
(5) How is a relational table stored in memory ? Tables with zillions of rows usually aren't "stored in memory" at all. Other than that, the question is once again irrelevant. Physical data independence is not a bug, it is a feature. It means programmers can be freed from having to know the internal structures used by the DBMS. It means their programs can operate independently from all those nitty gritty internal structure details. And it means DBMS vendors are at complete freedom to choose which internal structures they use (or not) in their particular DBMS product, and this implies in turn that your question is not answerable in general.
Upvotes: 1