ในโพสต์บล็อกล่าสุดของผม Unified Data Platform และ Data Virtualization ผ่าน PolyBase: Part Two ผมได้สาธิต Data Virtualization ผ่าน PolyBase
ขณะตั้งค่า SQL PolyBase Demo เพื่อดึงข้อมูลจากแหล่งข้อมูลภายนอก ผมเผชิญปัญหาสองสามอย่าง แม้ผมจะแก้ไขปัญหาได้เร็ว แต่ผมคิดว่าการรวมและนำเสนอไว้ที่เดียวจะดี เพื่อให้ใครก็ตามที่มีปัญหาเดียวกันได้รับประโยชน์ มาเริ่มกันเลย
ปัญหาแรก (First Issue)
ERROR: You can install PolyBase on only one SQL Server instance per machine.
รูปที่ 1 - ปัญหาแรก ข้อผิดพลาด
สาเหตุ (Cause)
ข้อผิดพลาดนี้อธิบายตัวเองได้ Instances ไม่สามารถแชร์ PolyBase ได้ และ Instance มากกว่าหนึ่งบนเครื่องเดียวไม่สามารถมี PolyBase พร้อมกันได้ ในกรณีของผม ผมติดตั้ง SQL Polybase บน Instance อื่นแล้ว จึงเกิดข้อผิดพลาด
วิธีแก้ (Resolution)
ผมต้องลบ Polybase ออกจาก Instance ที่ติดตั้งไว้ก่อนหน้านี้ หลังจากนั้น รัน SQL Setup อีกครั้งและเลือกติดตั้งฟีเจอร์ PolyBase สำหรับ Instance ใหม่ และมันทำงานได้ดี
รูปที่ 2 - ปัญหาแรก แก้ไขแล้ว
ปัญหาที่สอง (Second Issue)
ERROR : Support for external data source of type HADOOP is not enabled. To enable, set 'hadoop connectivity' to desired value.
ข้อผิดพลาดเกิดขึ้นเมื่อผมสร้าง External Data Source แบบ TYPE = HADOOP
รูปที่ 3 - ปัญหาที่สอง ข้อผิดพลาด
สาเหตุ (Cause)
ระบบโยนข้อผิดพลาดนี้ในสองกรณี:
- คุณไม่ได้ตั้งค่าพารามิเตอร์ SQL Server Hadoop_connectivity เป็นค่าที่ต้องการ
- คุณตั้งค่าพารามิเตอร์ถูกต้อง แต่คุณไม่ได้ Restart SQL Service หลังจากตั้งค่าพารามิเตอร์ ขั้นตอนนี้จำเป็นแม้เอกสารจะไม่ได้กล่าวถึง
คุณสามารถใช้ Query ต่อไปนี้เพื่อตั้งค่าพารามิเตอร์:
EXEC sp_configure @configname = 'hadoop connectivity', @configvalue = 7;
Go
Reconfigure
วิธีแก้ (Resolution)
ผมตรวจสอบค่าพารามิเตอร์บน Instance ของผม และตั้งค่าถูกต้องแล้ว ตามภาพต่อไปนี้:
รูปที่ 4
แม้การ Restart SQL Services จะไม่ได้ระบุในเอกสาร แต่ Restart แล้วปัญหาแก้ไขได้สำหรับผม ผมรัน Query Create External Data Source ในขั้นตอนที่ 3 ของโพสต์ PolyBase Demo อีกครั้ง และมันทำงานได้ดี
รูปที่ 5 - ปัญหาที่สอง แก้ไขแล้ว
ปัญหาที่สาม (Third Issue)
ERROR: Incorrect syntax near EXTERNAL
ข้อผิดพลาดเกิดขึ้นเมื่อผมรัน Query ต่อไปนี้เพื่อสร้าง External File Format:
CREATE EXTERNAL FILE FORMAT TextFileFormat WITH (
FORMAT_TYPE = DELIMITEDTEXT,
FORMAT_OPTIONS (FIELD_TERMINATOR =',',USE_TYPE_DEFAULT = TRUE))
สาเหตุ (Cause)
ข้อผิดพลาดนี้หลอกลวง เพราะดูเหมือน Syntax Error แต่เกิดขึ้นเมื่อคุณไม่ได้ Enable ฟีเจอร์ PolyBase อย่างถูกต้อง
วิธีแก้ (Resolution)
ผมรัน Query ต่อไปนี้เพื่อแก้ไขปัญหา:
EXEC sp_configure 'polybase enabled', 1;
Go
Reconfigure
การรัน Query Reconfigure เป็นสิ่งสำคัญมาก เมื่อคุณใช้ sp_configure เพื่อเปลี่ยน System Configuration คุณต้องรัน Reconfigure เพื่อ Finalize การเปลี่ยนแปลง
สรุป
นี่คือข้อผิดพลาดที่ผมเจอใน PolyBase Demo และวิธีแก้ไข ขอบคุณที่อ่าน!
เรียนรู้เพิ่มเติมเกี่ยวกับบริการข้อมูลของเรา
ใช้แท็บ Feedback เพื่อแสดงความคิดเห็นหรือถามคำถาม คุณยังสามารถเริ่มการสนทนากับเราได้