เรามาใช้ Oracle SQL Develper เรียกข้อมูลจาก Apache Hive ในกระบวนทำ Data Processing กัน

Posted on Posted in Big Data, Hive

             

          การใช้งาน Big Data / Hadoop Technology ด้วย Apache Hive ในการวิเคราะห์ข้อมูล   การเรียกข้อมูล ( Query ) ด้วยคำสั่ง Query เพื่อตรวจสอบข้อมูลบางอย่าง หรือ ทดสอบคำสั่ง Query เพื่อดูผลลัพธ์ว่าถูกต้องตามลอจิกที่กำหนดไว้หรือไม่ก่อนที่จะนำไปอิมพลีเมนท์จริงๆในกระบวนอัตโนมัติของ Data Integration Tool เป็นสิ่งที่จำเป็น

          ความต้องการปฏิบัติงานลักษณะนี้โดยปกติสำหรับการใช้งาน Hadoop Ecosystem แบบ Open Source หรือ Distribution ต่างๆ เราอาจจะใช้งานผ่าน CLI ของ Apache Beeline  สำหรับคนที่ใช้ Open Source Hadoop Ecosystem มาติดตั้งซึ่งยังไม่มีเครื่องมือชั้นดีให้มาใช้งาน หรือ การใช้งานเครื่องมือชั้นดีเช่น HUE ( Hadoop User Experience )   

 

ตัวอย่างการใช้งานแบบ CLI ของ Apache Beeline จะเป็นหน้าจอ Command Line ดำ ตามรูปที่ 1

รูปที่ 1: ผลการ Run Query ผ่าน CLI Beeline

 

หรือ การใช้งาน Query Data จาก Hive Editor ของ HUE จะเป็นหน้าจอ Web Interface ตามรูปที่ 2

รูปที่ 2 HUE Interface การแสดงผลลัพธ์การ Query ข้อมูล

 

แต่สำหรับคนทำงานด้านข้อมูลที่อยู่บนโลก SQL ของ RDBMS  ที่คุ้นเคยกับการใช้งานเครื่องมือ Query ที่เป็น Window Application ที่แสดงผลลัพธ์เป็นตาราง หรือ แสดงรายการ Table ให้เราเลือก View Data ง่ายๆ  หรือ Insert ข้อมูลลงไปได้ง่าย ตามประสบการณ์เดิมเหล่านี้กับการทำ Query Data จาก Hive ด้วยเครื่องข้างต้นอาจจะดูไม่สะดวกหรือยุ่งยากมาก 

 

          บทความนี้เราจะเตรียมเครื่องมือใช้จัดการกับข้อมูลที่อยู่ใน Hive ด้วย Oracle SQLDeveloper กัน  ซึ่งTool ตัวนี้ใช้งานได้ทั้งบน Window และ Linux Environment   เราเริ่มกันอย่างเป็นขั้นเป็นตอนเลยละกัน

*** การดาวน์โหลด และ ติดตั้งแต่ละขั้นตอนเลือก Platform ตามเครื่อง Desktop ที่แต่ละท่านใช้อยู่นะครับ ***

 

การติดตั้ง

  1. ติดตั้ง Java , JDK 1.8 โดย Download ได้จาก URL แล้ว ติดตั้งในเครื่องตนเอง หลังติดตั้งกำหนด ตั้งค่า JAVA_HOME ให้ชี้ Patch ที่ติดตั้งไว้ ( http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html )
  1. ติดตั้ง Oracle SQL Developer โดย Download ได้จาก URL ด้านล่าง แล้ว ติดตั้ง  ( http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html )
  1. ติดตั้ง JDBC สำหรับ Hive โดย Download ได้จาก URL ด้านล่าง เลือกเวอร์ชั่นล่าสุด ( Cloudera ) และ หลังดาวน์แล้ว Unzip แล้ว Copyไปวางไว้ที่  <Root Path>\sqldeveloper\jdbc\lib    ( https://www.cloudera.com/downloads/connectors/hive/jdbc/2-5-15.html )

การใช้งาน

          0. Apache Hive Run อยู่ในแบบ HiveServer2  , สำหรับใครที่ยังไม่ได้ติดตั้ง Apache Hive & Hadoop ทำตามบทความ การติดตั้ง Hive    หรือ เอาแบบด่วนๆ ดาวน์โหลด VM Image Hive&Hadoop ลงไปเล่นกันได้เลยครับ

 

          1. เปิดโปรแกรม SQL Developer

          2. เลือก Tab Hive และ ระบุข้อมูลเกี่ยวกับ Connection & DB Name ที่จะ Connect ตามรูป 3

รูปที่ 3 ส่วนการสร้าง Connection Profile

 

          3. Browse DB เลือก Hive Table ที่ต้องการแล้ว View หรือ Query ข้อมูล , ในรูปตัวอย่างเลือก DB Name :myhivedb , Table Name:go_tracks ส่วนแสดงผลข้อมูลก็แสดงข้อมูลใน Table ทั้งหมดแบบไม่กรองเงื่อนไขใดๆ  ตามรูปที่ 4

รูปที่ 4 แสดง View Data ใน Hive Table ที่เลือก ( go_tracks )

 

          4. ทดลอง Query ข้อมูล ตามรูป 5 แบบ Run SQL Select Statement และ รูป y แบบ View Data  ตามรูปที่ 5

รูปที่ 5 ผลลัพธ์ของการ Select ข้อมูลใน Hive Table

 

มาถึงจุดนี้เราทุกคนน่าจะสามารถ Setup Environment และ มีอีกหนึ่งเครื่องมือที่เป็นทางเลือกในการ Query ข้อมูลเพื่อสำหรับการทดลองใช้งาน Apache Hive กันแล้ว ส่วนใครที่จะยาวไปเป็น Data Scientist ก็หมั่นฝึกฝนทดลองใช้งานกันต่อไปนะครับ

 

สุดท้ายหวังว่าบทความนี้จะเป็นประโยชน์กับทุกคนไม่มากก็น้อยนะครับแล้วติดตามกันในเรื่องราวของ Big Data Technology กันครับ

About Author

อวยชัย ภิรมย์รื่น

ทำงานมาแล้วในทุกตำแหน่งของทีมพัฒนาซอฟต์แวร์ มีประสบการณ์การวิเคราะห์และออกแบบระบบ Accounting&Warehouse , e-Payment , Freight forwarder , Logistic และ เคยดูงานด้านเทคนิคของระบบ Fraud Banking ที่ทำงานกับข้อมูลกว่า 7 ล้านรายการด้วยเข้าใจ Operation ของทุกระบบงานของธนาคารอย่างดี และ ถนัดเรื่องการบริหารจัดการโครงการพัฒนาระบบสารสนเทศ

| ปัจจุบันทำงานด้าน Big Data Solution Engineer โดยเอา Big Data Technology มาเพิ่มประสิทธิภาพการปฏิบัติงานของ Business and IT Operation

[  e-mail: p.auoychai@gmail.com , Tel. 086-813-5354 ]

Our Services

Big Data Engineering

ติดตั้ง Cloudera Enterprise Hadoop , อิมพลีเมนท์การเอาข้อมูลเข้า HDFS , Hive , HBase , Elasticsearch ผ่าน Talend  ETL Tool และ Custom Programming admin

Software&Solution

พัฒนา Smart Software Application ( Web , Mobile ) และ เชื่อมต่อกับอุปกรณ์ IoT  , พัฒนาระบบ Dashboard ทำ Visualize ข้อมูล , การพัฒนา API&Micro-Service , การเชื่อมต่อและประมวลผลข้อมูลบน Big Data Store ด้วยเทคนิค Machine Learning admin

IT Operation

อิมพลีเมนท์ระบบ IT  Monitoring สำหรับการเฝ้าระวังและแจ้งเตือนสภาพการทำงานของ Server , Application Server และ IoT Device ต่างๆ , การบริหารจัดการ Service & Application Log. admin

Leave a Reply

Your email address will not be published. Required fields are marked *