निम्नलिखित के साथ एक हाइव मेज पर एक विभाजन बनाने के लिए प्रयास कर रहा है:SemanticException जोड़ने partiton हाइव तालिका
> alter table stock_ticker add if not exists
> partition(stock_symbol='ASP')
> location 'data/stock_ticker_sample/stock_symbol=ASP/'
निम्नलिखित में से कौन उत्पादन का उत्पादन
FAILED : SemanticException table is not partitioned but partition spec exists: {stock_symbol=ASP}
इस तालिका पर कोई विभाजन इस से पहले कर रहे हैं अतिरिक्त प्रयास
> show partitions stock_ticker;
जिसके परिणामस्वरूप
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask.
Table stock_ticker_sample is not a partitioned table
कि STOCK_SYMBOL स्तंभ मौजूद है और प्रकार स्ट्रिंग की है सवाल ही पैदा नहीं होता है।
प्रश्न यह है कि इस विभाजन को जोड़ने के लिए क्या कदम उठाने की आवश्यकता है?
ऐसा प्रतीत होता है कि विभाजन बाहरी तालिकाओं पर किया जाना चाहिए। – eddyoc
नहीं, मुझे लगता है कि आप इस विभाजन के लिए मौजूदा स्थान निर्दिष्ट करना चाहते हैं ताकि इसे प्रबंधित करने योग्य तालिका ड्रॉप के मामले में स्रोत डेटा को खतरे में डाल सके। – www
मेरा मतलब यह है कि जब मेरी आंतरिक तालिका के स्थान पर इंगित बाहरी तालिका पर प्रदर्शन किया जाता है तो विभाजन ऑपरेशन सफल होता है। ऐसा नहीं है कि आंतरिक तालिकाओं पर विभाजन संभव नहीं है। – eddyoc