| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| <!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
| <concept id="schema_objects"> |
| |
| <title>Impala Schema Objects and Object Names</title> |
| <titlealts audience="PDF"><navtitle>Schema Objects and Object Names</navtitle></titlealts> |
| <prolog> |
| <metadata> |
| <data name="Category" value="Impala"/> |
| <data name="Category" value="SQL"/> |
| <data name="Category" value="Data Analysts"/> |
| <data name="Category" value="Developers"/> |
| <data name="Category" value="Querying"/> |
| <data name="Category" value="Schemas"/> |
| </metadata> |
| </prolog> |
| |
| <conbody> |
| |
| <p> |
| <indexterm audience="hidden">schema objects</indexterm> |
| With Impala, you work with schema objects that are familiar to database users: primarily databases, tables, views, |
| and functions. The SQL syntax to work with these objects is explained in |
| <xref href="impala_langref_sql.xml#langref_sql"/>. This section explains the conceptual knowledge you need to |
| work with these objects and the various ways to specify their names. |
| </p> |
| |
| <p> |
| Within a table, partitions can also be considered a kind of object. Partitioning is an important subject for |
| Impala, with its own documentation section covering use cases and performance considerations. See |
| <xref href="impala_partitioning.xml#partitioning"/> for details. |
| </p> |
| |
| <p> |
| Impala does not have a counterpart of the <q>tablespace</q> notion from some database systems. By default, |
| all the data files for a database, table, or partition are located within nested folders within the HDFS file |
| system. You can also specify a particular HDFS location for a given Impala table or partition. The raw data |
| for these objects is represented as a collection of data files, providing the flexibility to load data by |
| simply moving files into the expected HDFS location. |
| </p> |
| |
| <p> |
| Information about the schema objects is held in the |
| <xref href="impala_hadoop.xml#intro_metastore">metastore</xref> database. This database is shared between |
| Impala and Hive, allowing each to create, drop, and query each other's databases, tables, and so on. When |
| Impala makes a change to schema objects through a <codeph>CREATE</codeph>, <codeph>ALTER</codeph>, |
| <codeph>DROP</codeph>, <codeph>INSERT</codeph>, or <codeph>LOAD DATA</codeph> statement, it broadcasts those |
| changes to all nodes in the cluster through the <xref href="impala_components.xml#intro_catalogd">catalog |
| service</xref>. When you make such changes through Hive or directly through manipulating HDFS files, you use |
| the <xref href="impala_refresh.xml#refresh">REFRESH</xref> or |
| <xref href="impala_invalidate_metadata.xml#invalidate_metadata">INVALIDATE METADATA</xref> statements on the |
| Impala side to recognize the newly loaded data, new tables, and so on. |
| </p> |
| |
| <p outputclass="toc"/> |
| </conbody> |
| </concept> |