Impala-テーブルステートメントの作成

ザ・ CREATE TABLEステートメントは、Impalaの必要なデータベースに新しいテーブルを作成するために使用されます。基本テーブルの作成には、テーブルに名前を付け、その列と各列のデータ型を定義することが含まれます。

構文

以下は、の構文です。 CREATE TABLEステートメント。ここに、IF NOT EXISTSオプションの句です。この句を使用すると、指定されたデータベースに同じ名前の既存のテーブルがない場合にのみ、指定された名前のテーブルが作成されます。

create table IF NOT EXISTS database_name.table_name (
   column1 data_type,
   column2 data_type,
   column3 data_type,
   ………
   columnN data_type
);

CREATE TABLEは、データベースシステムに新しいテーブルを作成するように指示するキーワードです。テーブルの一意の名前または識別子は、CREATETABLEステートメントの後に続きます。オプションで指定できますdatabase_name に加えて table_name

以下は、createtableステートメントの例です。この例では、という名前のテーブルを作成しましたstudent データベース内 my_db

[quickstart.cloudera:21000] > CREATE TABLE IF NOT EXISTS my_db.student
   (name STRING, age INT, contact INT );

上記のステートメントを実行すると、指定された名前のテーブルが作成され、次の出力が表示されます。

Query: create table student (name STRING, age INT, phone INT) 

Fetched 0 row(s) in 0.48s

検証

ザ・ show Tablesクエリは、Impalaの現在のデータベース内のテーブルのリストを提供します。したがって、を使用してテーブルが作成されているかどうかを確認できます。Show Tables ステートメント。

まず、以下に示すように、必要なテーブルが存在するデータベースにコンテキストを切り替える必要があります。

[quickstart.cloudera:21000] > use my_db; 
Query: use my_db

次に、を使用してテーブルのリストを取得する場合 show tables クエリ、あなたはという名前のテーブルを観察することができます student 以下に示すようにその中に。

[quickstart.cloudera:21000] > show tables;

Query: show tables 
+-----------+ 
| name      | 
+-----------+ 
| student   | 
+-----------+ 
Fetched 1 row(s) in 0.10s

HDFSパス

HDFSファイルシステムでデータベースを作成するには、以下に示すように、データベースを作成する場所を指定する必要があります。

CREATE DATABASE IF NOT EXISTS database_name LOCATION hdfs_path;

Hueブラウザを使用したデータベースの作成

impalaクエリエディタを開き、次のように入力します CREATE Tableその中のステートメント。次のスクリーンショットに示すように、実行ボタンをクリックします。

クエリを実行した後、カーソルをドロップダウンメニューの上部にそっと移動すると、更新記号が表示されます。更新記号をクリックすると、データベースのリストが更新され、最近行われた変更がデータベースに適用されます。

検証

クリックしてください drop down 見出しの下 DATABASEエディターの左側にあります。そこにデータベースのリストが表示されます。データベースを選択しますmy_db 以下に示すように。

データベースの選択について my_db以下に示すように、その中のテーブルのリストを見ることができます。ここでは、新しく作成されたテーブルを見つけることができますstudent 以下に示すように。