ApacheHive一点一点进步(2)–HIVEJDBC
Hive提供了多种方式进行数据的访问。其中对 java 的支持是最好的,而且是其最原生的支持。传说中的JDBC。哈哈! 在 hive 安装目录下的lib目录中有 hive - jdbc -0.8.1.jar 。以0.8版本的为例来介绍。 当然了,也别忘了要通过hive的server方式将hive启动起来
Hive提供了多种方式进行数据的访问。其中对java的支持是最好的,而且是其最原生的支持。传说中的JDBC。哈哈!
在hive安装目录下的lib目录中有hive-jdbc-0.8.1.jar 。以0.8版本的为例来介绍。
当然了,也别忘了要通过hive的server方式将hive启动起来。命令就不在这里介绍了。
以下是官网提供的一段示例,使用起来比较简单。client端支持的语法在这里都是支持的。
而且可以通过这个进行环境变量设置,这个设置并不会影响server端,只在本次会话中生效,所以不用担心任务间影响。
Java
import java.sql.SQLException;import java.sql.Connection;import java.sql.ResultSet;import java.sql.Statement;import java.sql.DriverManager; public class HiveJdbcClient { private static String driverName = "org.apache.hadoop.hive.jdbc.HiveDriver"; /** * @param args * @throws SQLException */ public static void main(String[] args) throws SQLException { try { Class.forName(driverName); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); System.exit(1); } Connection con = DriverManager.getConnection("jdbc:hive://localhost:10000/default", "", ""); Statement stmt = con.createStatement(); String tableName = "testHiveDriverTable"; stmt.executeQuery("drop table " + tableName); ResultSet res = stmt.executeQuery("create table " + tableName + " (key int, value string)"); // show tables String sql = "show tables '" + tableName + "'"; System.out.println("Running: " + sql); res = stmt.executeQuery(sql); if (res.next()) { System.out.println(res.getString(1)); } // describe table sql = "describe " + tableName; System.out.println("Running: " + sql); res = stmt.executeQuery(sql); while (res.next()) { System.out.println(res.getString(1) + "\t" + res.getString(2)); } // load data into table // NOTE: filepath has to be local to the hive server // NOTE: /tmp/a.txt is a ctrl-A separated file with two fields per line String filepath = "/tmp/a.txt"; sql = "load data local inpath '" + filepath + "' into table " + tableName; System.out.println("Running: " + sql); res = stmt.executeQuery(sql); // select * query sql = "select * from " + tableName; System.out.println("Running: " + sql); res = stmt.executeQuery(sql); while (res.next()) { System.out.println(String.valueOf(res.getInt(1)) + "\t" + res.getString(2)); } // regular hive query sql = "select count(1) from " + tableName; System.out.println("Running: " + sql); res = stmt.executeQuery(sql); while (res.next()) { System.out.println(res.getString(1)); } }}
Python
#!/usr/bin/env python import sys from hive import ThriftHivefrom hive.ttypes import HiveServerExceptionfrom thrift import Thriftfrom thrift.transport import TSocketfrom thrift.transport import TTransportfrom thrift.protocol import TBinaryProtocol try: transport = TSocket.TSocket('localhost', 10000) transport = TTransport.TBufferedTransport(transport) protocol = TBinaryProtocol.TBinaryProtocol(transport) client = ThriftHive.Client(protocol) transport.open() client.execute("CREATE TABLE r(a STRING, b INT, c DOUBLE)") client.execute("LOAD TABLE LOCAL INPATH '/path' INTO TABLE r") client.execute("SELECT * FROM r") while (1): row = client.fetchOne() if (row == None): break print row client.execute("SELECT * FROM r") print client.fetchAll() transport.close() except Thrift.TException, tx: print '%s' % (tx.message)
PHP
<?php // set THRIFT_ROOT to php directory of the hive distribution$GLOBALS['THRIFT_ROOT'] = '/lib/php/';// load the required files for connecting to Hiverequire_once $GLOBALS['THRIFT_ROOT'] . 'packages/hive_service/ThriftHive.php';require_once $GLOBALS['THRIFT_ROOT'] . 'transport/TSocket.php';require_once $GLOBALS['THRIFT_ROOT'] . 'protocol/TBinaryProtocol.php';// Set up the transport/protocol/client$transport = new TSocket('localhost', 10000);$protocol = new TBinaryProtocol($transport);$client = new ThriftHiveClient($protocol);$transport->open(); // run queries, metadata calls etc$client->execute('SELECT * from src');var_dump($client->fetchAll());$transport->close();
原文地址:ApacheHive一点一点进步(2)–HIVEJDBC, 感谢原作者分享。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









近年、データ ウェアハウスは企業のデータ管理に不可欠な部分となっています。データ分析にデータベースを直接使用すると、単純なクエリのニーズを満たすことができますが、大規模なデータ分析を実行する必要がある場合、単一のデータベースではニーズを満たすことができなくなり、大量のデータを処理するデータ ウェアハウスを使用する必要があります。 。 Hive は、データ ウェアハウス分野で最も人気のあるオープン ソース コンポーネントの 1 つで、Hadoop 分散コンピューティング エンジンと SQL クエリを統合し、大量のデータの並列処理をサポートできます。同時に、Go 言語では次を使用します。

PHP は、ほぼすべての業界で広く使用されているサーバーサイド プログラミング言語です。この記事では、ビッグ データ処理における PHP の特別な役割について説明します。特定の状況下では、PHP は ApacheHive と連携して、リアルタイムのデータ処理と分析を実現できます。まずはHiveについて紹介していきます。 Hive は、Hadoop ベースのデータ ウェアハウス ソリューションです。構造化データを SQL クエリにマッピングし、クエリを MapReduce タスクとして実行できます。

データ処理の重要性が高まるにつれて、ビッグデータ分析がますます一般的になってきています。ただし、多くの企業はビジネス分析プラットフォームに多額の費用を費やしたくないかもしれません。オープンソース ソリューションは、これらの企業に実行可能な選択肢を提供します。この記事では、PHP を使用してオープンソースの Hive ビッグ データ分析プラットフォームを実装する方法について説明します。 Hive は、SQL を介して Hadoop 上の大規模なデータ セットをクエリおよび管理できる Hadoop ベースのデータ ウェアハウス システムです。 SQL に似た HiveQL 言語を使用してクエリを実行します

Microsoftの関係者は、Google Chrome、ChromiumEdge、Discord、およびその他のいくつかのアプリケーションが、Microsoftの組み込みウイルス対策ソフトウェア「WindowsDefender」によって「Behavior:Win32/Hive.ZY」としてフラグ付けされたという広範な報告を確認しました。テクノロジー大手は声明の中で、今後数時間以内に全員に公開される予定の修正に取り組んでいることを認めた。では、「Behavior:Win32/Hive.ZY」とは一体何でしょうか? Microsoft のセキュリティ ポータルに掲載された文書によると、「Behavior:Win32/Hive.ZY」とマークされたファイルはすべて

ソフトウェアを最新の状態に保ち、信頼できるソースからのみファイルをダウンロードすることはサイバーセキュリティの標準的な慣行ですが、最近のマルウェア攻撃の増加を考慮すると、この分野でさらなる教育が必要であることは明らかです。そのために、Varonis フォレンジック チームは、Hive ランサムウェアを使用する攻撃者が最新の一連の攻撃でどのように Microsoft Exchange Server をターゲットにするかに関するガイダンスを提供しました。知らない人のために説明すると、Hive はサービスとしてのランサムウェア モデルに従っています。 Microsoft は既知の脆弱性について 2021 年に E をターゲットにしていますが、

CentOS7 に Hive をインストールして構成する場合は、次の手順を実行できます。 Java がインストールされていることを確認します。 まず、Java が CentOS7 にインストールされていることを確認します。次のコマンドを使用して、Java がインストールされているかどうかを確認できます。 java-version Java がインストールされていない場合は、必要に応じて適切な Java バージョンをインストールしてください。 Hive をダウンロードする: ApacheHive の公式 Web サイト () にアクセスし、Hive の最新の安定バージョンをダウンロードします。 Hive 圧縮パッケージを解凍します。次のコマンドを使用して、Hive 圧縮パッケージを解凍します。 tarxvfzhive-x.x.x.tar.gz これにより、Hive が現在のディレクトリに解凍されます。環境変数を構成します: ターミナルを開き、

多くの Windows 11 および 10 ユーザーは、「動作: Win32/Hive.ZY」という脅威が検出されたことを示す Windows Defender からの警告通知を見て悩んでいます。レポートによると、この Windows Defender の警告またはアラートは、ユーザーが Google Chrome や Chromium Edge、Whatsapp、Discord、Spotify などの一般的に使用されるアプリケーションを開こうとするとトリガーされます。 PC でこの脅威をブロックした場合でも、次にこの影響を受けるアプリケーションを開くと、MicrosoftDefenderAntivi というメッセージがポップアップ表示されます。

Vue2 と比較した Vue3 の進歩: より強力な状態管理 フロントエンド開発テクノロジの継続的な開発により、大規模アプリケーションにおける状態管理の重要性がますます顕著になっています。人気のあるフロントエンド フレームワークとして、Vue は、応答性の高いデータ バインディングとコンポーネント ベースのプログラミング スタイルを通じて、開発者に便利な開発エクスペリエンスを提供します。ただし、Vue2 では状態管理の実装はあまり便利ではなく、Vuex などのサードパーティ ライブラリを利用して管理する必要があります。 Vue3 では、状態管理が大幅に改善および強化され、次の機能が提供されます。
