MySQL メタデータで Hive テーブル作成ステートメントのコメント スクリプトを生成する方法

MySQL メタデータで Hive テーブル作成ステートメントのコメント スクリプトを生成する方法

序文

この記事は主にMySQLメタデータ生成Hiveテーブル作成ステートメントコメントスクリプトに関する関連コンテンツを紹介し、参考と学習のために共有します。詳細な紹介を一緒に見てみましょう:

最近、Mysql やその他のリレーショナル データベースから Hive テーブルにデータを抽出する場合、MySQL テーブル内のコメントを同期する必要があります。次のスクリプトは、Hive テーブル フィールドのコメント変更ステートメントを生成できます。

注: Oracle などの他のリレーショナル データベースも、メタデータを読み取り、スクリプト構文を変更することで、同じ考え方を使用して実装できます。

使用:

MySQLメタデータデータベースで次のステートメントを実行します: information_schema

SELECT CONCAT('テーブルの変更', TABLE_NAME, '列の変更', COLUMN_NAME, ' ', COLUMN_NAME, ' ', DATA_TYPE, 'コメント', '"', COLUMN_COMMENT, '"', ';')
FROM (SELECT TABLE_NAME, COLUMN_NAME, CASE WHEN DATA_TYPE = 'varchar' THEN 'string' WHEN DATA_TYPE = 'int' THEN 'int' WHEN DATA_TYPE = 'tinyint' THEN 'tinyint' WHEN DATA_TYPE = 'decimal' THEN 'double' WHEN DATA_TYPE = 'datetime' THEN 'string' WHEN DATA_TYPE = 'timestamp' THEN 'string' WHEN DATA_TYPE = 'float' THEN 'double' WHEN DATA_TYPE = 'double' THEN 'double' WHEN DATA_TYPE = 'bigint' THEN 'bigint' END AS DATA_TYPE, COLUMN_COMMENT
コラムより
ここで、TABLE_NAME = 'o_oms_statistic_profit'
) t;

MySQL などの他のリレーショナル データベースから Hive テーブルにデータを抽出する場合は、MySQL テーブル内のコメントを同期する必要があります。次のスクリプトは、Hive の create table ステートメントを生成できます。 Hive テーブルの主なフィールド情報のみが生成され、その他の情報は手動で追加する必要があります。

MySQLメタデータデータベースで次のステートメントを実行します: information_schema

SELECT CONCAT('テーブルの作成', TABLE_NAME, '(', 部分文字列(列情報, 1, 長さ(列情報) - 1), ')', 'コメント', '"', TABLE_COMMENT, '"', ';')
FROM (SELECT TABLE_NAME, TABLE_COMMENT, group_concat(CONCAT(COLUMN_NAME, ' ', DATA_TYPE, ' comment ', '"', COLUMN_COMMENT, '"')) AS column_info
(t1.table_nameを選択、t2.table_comment = nullの場合、t1.table_name else end as table_comment、column_type = 'varchar' then 'string' when data_type = 'decyint' then 'tynint' fhe e = 'dateTime' then 'string' when data_type = 'timestamp' then 'string' when data_type = 'float' and 'double' wheny dable 'and' double 'wheny data_type =' bigint 'and' bigint 'and data_type
列 t1 からテーブル t2 を結合し、t1.TABLE_NAME = t2.TABLE_NAME を指定します。
ここで、t1.TABLE_NAME = 'o_oms_statistic_profit'
) t3
テーブル名、テーブルコメントによるグループ化
)t4;

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に少しでもお役に立てれば幸いです。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM をご愛顧いただき、ありがとうございます。

以下もご興味があるかもしれません:
  • テーブルの作成、フィールドの追加、フィールドの変更、インデックスの追加によく使用される MySQL の SQL 文の概要
  • MySQL テーブル作成、よく使用される SQL 文、個人的な経験の共有
  • テーブルを作成するための MySQL SQL ステートメントの詳細な概要
  • MySQL テーブルを作成するためによく使用される SQL ステートメントの概要

<<:  echarts と vue.js を統合する際に発生するいくつかの問題の概要

>>:  Centos7.x での Nginx のインストール、SSL 設定、一般的なコマンドの詳細な説明

推薦する

Docker マイクロサービス用の ETCD クラスターの構築に関する詳細なチュートリアル

目次etcdの機能etcdが独自の高可用性クラスタを構築するには、主に3つの形式があります。今回構築...

EDMをHTMLで記述する際の注意点まとめ(メール送信時の一般的な注意点)

フォーマットエンコーディング1. ページの幅は600~800px、長さは1024px以内に設定してく...

シェルスクリプトによるDockerコンテナの起動順序の制御の詳細な説明

1. 遭遇した問題分散プロジェクトの展開プロセスでは、サーバーの再起動後にアプリケーション(データベ...

MySQLデータベースとOracleデータベース間のバックアップをインポートする

OracleデータベースからエクスポートされたデータをMySqlデータベースにインポートします。 1...

JS で配列の重複排除を実装する 7 つの方法

目次1. Set()+Array.from() を使用する2. 2層ループ+アレイ接合方式の使用3....

MYSQL updatexml() 関数のエラーインジェクション分析

まず、updatexml()関数を理解する UPDATEXML (XML ドキュメント、XPath ...

MySQL 学習ノート: データ エンジン

現在のデータベースでサポートされているエンジンを表示します エンジンを表示 +-----------...

Linux で Sudo を使用して権限を委譲する

sudo 権限委譲の概要su スイッチ ID: su –l ユーザー名 –c 'コマンド&#...

React の国際化 react-intl の使用

React で国際化を実現するにはどうすればよいでしょうか? react-intlプラグインは、Re...

docker run -v はデータボリュームを異常にマウントし、コンテナのステータスは常に再起動になります。

問題点: docker run に -v パラメータを追加すると、コンテナは常に再起動状態になります...

MySQL遅延レプリケーションライブラリ方式の詳細な説明

簡単に言えば、遅延レプリケーションとは、スレーブ データベースがマスター データベースより 1 時間...

Vue ルーターにパラメータを渡すときにページを更新するとパラメータが失われる問題に対処する方法

目次概要方法1: params経由でパラメータを渡す方法2: クエリを通じてパラメータを渡す方法3:...

Vue+echarts で積み上げ棒グラフを実現

この記事では、積み上げ棒グラフを実装するためのVue+echartsの具体的なコードを参考までに紹介...

Vueの学習手順

目次1. v-text (v-instruction name = "variable&q...

Flash での HTML と CSS の適用

Flash での HTML と CSS の適用:同僚の Den が Flash で HTML と C...