違い: 1. Hive-SQL は等結合をサポートしませんが、SQL はサポートします; 2. Hive-SQL は「テーブルへの挿入 Values()」、UPDATA、および DELETE 操作をサポートしませんが、SQL はサポートします; 3 . Hive-sql はトランザクションをサポートしませんが、SQL はトランザクションをサポートします。
一般的に、hiveSQL は基本的に SQL と同じです。本来の設計目的は、SQL は知っているが MapReduce をプログラムできない人でもデータ処理に Hadoop を使用できるようにすることです。 。 対処する。
1. Hive は等結合をサポートしていません
等結合はサポートしていません。一般に、代わりに左結合、右結合、または内部結合が使用されます。
例:
SQL の内部関連付けは次のように記述できます: select * from a, b where a.key = b.key
Hive では次のように記述します。 select * from a join b on a.key = b.key
結合を省略する方法はハイブでは使用できません。
2. セミコロン文字
セミコロンは SQL ステートメントの終了記号であり、ハイブ内の記号でもあります。ただし、ハイブはそれほどインテリジェントではありません。場合によっては、エスケープ ";" --> "\073"
3, NULL
SQL の null は null 値を表しますが、 Hive では、String 型フィールドが空の文字列、つまり長さが 0 の場合、is null 判定結果は False
4 となります。Hive では、既存のテーブルへのデータの挿入や、パーティション
Hive はテーブル全体の上書きと再書き込みのみをサポートします。
insert overwrite 表 (重写覆盖)
5. Hive はテーブルへの挿入 Values()、UPDATA、DELETE 操作をサポートしていません
insert into はテーブルまたはパーティションにデータを追加することです。
6. Hive は、複雑なロジックを処理するための MapReduce プログラムの埋め込みをサポートしています
現在、提供できる例はありません。
7. Hive は、変換されたデータを別のテーブルに直接書き込むことをサポートしており、パーティション、hdf、ローカル ディレクトリに書き込むこともできます
入力テーブルの複数のスキャンを回避します。 。
8. HQL は行レベルの追加、変更、削除をサポートしていません。すべてのデータはロード時に決定され、変更できません。
プログラミング関連の知識について詳しくは、プログラミング入門をご覧ください。 !
以上がHive-sql と SQL の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。