Rumah pangkalan data tutorial mysql ApacheHive一点一点进步(2)–HIVEJDBC

ApacheHive一点一点进步(2)–HIVEJDBC

Jun 07, 2016 pm 04:29 PM
hive kemajuan

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

1

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));    }  }}

Salin selepas log masuk

Python

1

#!/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)

Salin selepas log masuk

PHP

1

<?php // set THRIFT_ROOT to php directory of the hive distribution$GLOBALS&#91;'THRIFT_ROOT'&#93; = '/lib/php/';// load the required files for connecting to Hiverequire_once $GLOBALS&#91;'THRIFT_ROOT'&#93; . 'packages/hive_service/ThriftHive.php';require_once $GLOBALS&#91;'THRIFT_ROOT'&#93; . 'transport/TSocket.php';require_once $GLOBALS&#91;'THRIFT_ROOT'&#93; . 'protocol/TBinaryProtocol.php';// Set up the transport/protocol/client$transport = new TSocket&#40;'localhost', 10000&#41;;$protocol = new TBinaryProtocol&#40;$transport&#41;;$client = new ThriftHiveClient&#40;$protocol&#41;;$transport->open(); // run queries, metadata calls etc$client->execute('SELECT * from src');var_dump($client->fetchAll());$transport->close();

Salin selepas log masuk
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Muzium Dua Point: Semua Pameran dan Di Mana Mencari Mereka
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Gunakan bahasa Hive in Go untuk melaksanakan gudang data yang cekap Gunakan bahasa Hive in Go untuk melaksanakan gudang data yang cekap Jun 15, 2023 pm 08:52 PM

Dalam beberapa tahun kebelakangan ini, gudang data telah menjadi bahagian penting dalam pengurusan data perusahaan. Menggunakan pangkalan data secara langsung untuk analisis data boleh memenuhi keperluan pertanyaan mudah, tetapi apabila kita perlu melakukan analisis data berskala besar, pangkalan data tunggal tidak lagi dapat memenuhi keperluan Pada masa ini, kita perlu menggunakan gudang data untuk memproses data besar-besaran . Hive ialah salah satu komponen sumber terbuka yang paling popular dalam medan gudang data Ia boleh menyepadukan enjin pengkomputeran yang diedarkan Hadoop dan pertanyaan SQL dan menyokong pemprosesan data besar-besaran. Pada masa yang sama, dalam bahasa Go, gunakan

Bermula dengan PHP: PHP dan Hive Bermula dengan PHP: PHP dan Hive May 20, 2023 am 08:33 AM

PHP ialah bahasa pengaturcaraan bahagian pelayan yang digunakan secara meluas yang digunakan dalam hampir semua industri. Dalam artikel ini, kami akan meneroka peranan khas PHP dalam pemprosesan data besar. Dalam keadaan tertentu, PHP boleh bekerjasama dengan ApacheHive untuk mencapai pemprosesan dan analisis data masa nyata. Mula-mula, mari perkenalkan Hive. Hive ialah penyelesaian gudang data berasaskan Hadoop. Ia boleh memetakan data berstruktur ke dalam pertanyaan SQL dan melaksanakan pertanyaan sebagai tugasan MapReduce.

PHP melaksanakan platform analisis data besar Hive sumber terbuka PHP melaksanakan platform analisis data besar Hive sumber terbuka Jun 18, 2023 pm 02:47 PM

Apabila pemprosesan data menjadi semakin penting, analisis data besar menjadi semakin biasa. Walau bagaimanapun, banyak syarikat mungkin tidak mahu membelanjakan banyak wang pada platform analitik perniagaan. Penyelesaian sumber terbuka menawarkan syarikat ini pilihan yang berdaya maju. Dalam artikel ini, kami akan membincangkan cara melaksanakan platform analisis data besar Hive sumber terbuka menggunakan PHP. Hive ialah sistem gudang data berasaskan Hadoop yang boleh membuat pertanyaan dan mengurus set data berskala besar pada Hadoop melalui SQL. Ia menggunakan bahasa HiveQL seperti SQL untuk membuat pertanyaan

Pelayan Microsoft Exchange diserang oleh perisian tebusan 'windows.exe' Hive Pelayan Microsoft Exchange diserang oleh perisian tebusan 'windows.exe' Hive Apr 16, 2023 pm 01:28 PM

Walaupun memastikan perisian sentiasa dikemas kini dan hanya memuat turun fail daripada sumber yang dipercayai adalah amalan keselamatan siber standard, memandangkan peningkatan baru-baru ini dalam serangan perisian hasad, jelas bahawa lebih banyak pendidikan diperlukan dalam bidang ini. Untuk itu, pasukan forensik Varonis telah menyediakan beberapa panduan tentang cara penyerang menggunakan perisian tebusan Hive menyasarkan Pelayan Microsoft Exchange dalam siri serangan terbaru mereka. Bagi mereka yang tidak tahu, Hive mengikuti model ransomware-as-a-service. Walaupun Microsoft menyasarkan E pada 2021 untuk kelemahan yang diketahui,

Kemajuan Vue3 berbanding Vue2: pengurusan negeri yang lebih berkuasa Kemajuan Vue3 berbanding Vue2: pengurusan negeri yang lebih berkuasa Jul 07, 2023 pm 07:45 PM

Kemajuan Vue3 berbanding Vue2: Pengurusan negeri yang lebih berkuasa Dengan pembangunan berterusan teknologi pembangunan bahagian hadapan, kepentingan pengurusan negeri dalam aplikasi besar telah menjadi semakin menonjol. Sebagai rangka kerja hadapan yang popular, Vue menyediakan pembangun pengalaman pembangunan yang mudah melalui pengikatan data responsif dan gaya pengaturcaraan berasaskan komponen. Walau bagaimanapun, dalam Vue2, pelaksanaan pengurusan negeri tidak begitu mudah, dan ia perlu diuruskan dengan bantuan perpustakaan pihak ketiga seperti Vuex. Dalam Vue3, pengurusan negeri telah dipertingkatkan dan dipertingkatkan, memberikan kami

Tutorial Hive pemasangan dan konfigurasi Centos7. Tutorial Hive pemasangan dan konfigurasi Centos7. Feb 19, 2024 pm 02:21 PM

Apabila memasang dan mengkonfigurasi Hive pada CentOS7, anda boleh mengikuti langkah berikut: Pastikan Java dipasang: Pertama, pastikan Java dipasang pada CentOS7. Anda boleh menyemak sama ada Java dipasang menggunakan arahan berikut: java-version Jika Java tidak dipasang, sila pasang versi Java yang sesuai mengikut keperluan anda. Muat turun Hive: Lawati tapak web rasmi ApacheHive () dan muat turun versi stabil terkini Hive. Nyahmampat pakej termampat Hive: Gunakan arahan berikut untuk menyahmampat pakej termampat Hive: tarxvfzhive-x.x.x.tar.gz Ini akan menyahmampat Hive ke direktori semasa. Konfigurasikan pembolehubah persekitaran: buka terminal,

Microsoft mengeluarkan pembetulan untuk Ralat Behavior:Win32/Hive.ZY dalam Windows Defender Microsoft mengeluarkan pembetulan untuk Ralat Behavior:Win32/Hive.ZY dalam Windows Defender Apr 28, 2023 pm 04:01 PM

Seorang pegawai Microsoft mengesahkan laporan meluas bahawa Google Chrome, ChromiumEdge, Discord dan beberapa aplikasi lain telah dibenderakan sebagai "Behavior:Win32/Hive.ZY" oleh perisian antivirus terbina dalam Microsoft "WindowsDefender". Gergasi teknologi itu mengesahkan dalam satu kenyataan bahawa ia sedang mengusahakan pembetulan yang akan dilancarkan kepada semua orang dalam beberapa jam akan datang. Jadi apakah sebenarnya "Behavior:Win32/Hive.ZY"? Menurut dokumen yang disiarkan pada portal keselamatan Microsoft, mana-mana fail bertanda "Behavior:Win32/Hive.ZY" ialah

Cara membetulkan tingkah laku Windows Defender: Makluman Win32/Hive.ZY Cara membetulkan tingkah laku Windows Defender: Makluman Win32/Hive.ZY May 06, 2023 am 08:04 AM

Ramai pengguna Windows 11 dan 10 bermasalah dengan melihat pemberitahuan amaran daripada Windows Defender yang menyatakan bahawa ancaman "Behavior: Win32/Hive.ZY" telah dikesan. Menurut laporan, amaran atau amaran Windows Defender ini dicetuskan apabila pengguna cuba membuka beberapa aplikasi yang biasa digunakan seperti Google Chrome atau Chromium Edge, Whatsapp, Discord dan Spotify. Walaupun anda telah menyekat ancaman ini pada PC anda, ia akan muncul dengan mesej MicrosoftDefenderAntivi pada kali seterusnya anda membuka aplikasi yang terjejas ini

See all articles