परिचय
पेंटाहो डेटा इंटीग्रेशन (डीआई) टूल (केटल के रूप में भी जाना जाता है) में डेटा फ़िल्टरिंग और ट्रांसफ़ॉर्मेशन टूल का एक शक्तिशाली वर्गीकरण होता है जिसका उपयोग एक्सट्रैक्ट, ट्रांसफ़ॉर्म और लोड प्रक्रियाओं को करने के लिए किया जा सकता है। पेंटाहो डीआई सामुदायिक संस्करण डेटाबेस ड्राइवरों के संग्रह के साथ आता है जो कई अलग-अलग डेटाबेस सिस्टम को डेटा स्रोत (इनपुट) या लक्ष्य (आउटपुट) के रूप में एक्सेस कर सकते हैं। हालाँकि, समुदाय संस्करण Oracle डेटाबेस के लिए ड्राइवरों के साथ शिप नहीं हो सकता है। निम्नलिखित नोट मानते हैं कि पेंटाहो डीआई (केटल) इन पेंटाहो डीआई इंस्टॉलेशन नोट्स के अनुसार स्थापित किया गया है।
Oracle JDBC ड्राइवर स्थापित करना
पेंटाहो डीआई के साथ Oracle डेटा स्रोतों का उपयोग करने के लिए, आपको पहले सुनिश्चित करना होगा कि Oracle JDBC ड्राइवर स्थापित हैं। यदि नहीं, तो उन्हें Oracle से प्राप्त करें और उन्हें Pentaho DI के लिए lib फ़ोल्डर में स्थापित करें।
Oracle JDBC ड्राइवर प्रत्येक Oracle सर्वर इंस्टॉलेशन के साथ शिप किए जाते हैं और \jdbc में पाए जा सकते हैं Oracle होम का फोल्डर। यदि आपके पास Oracle सर्वर तक पहुंच नहीं है, तो आप Oracle की JDBC वेब साइट से नवीनतम ड्राइवर डाउनलोड कर सकते हैं। JDBC ड्राइवर डाउनलोड करना सुनिश्चित करें जो आपके द्वारा चलाए जा रहे जावा रनटाइम एनवायरनमेंट (JRE) के संस्करण से मेल खाता हो।
Oracle JDBC ड्राइवर्स को Pentaho\data-integration\lib फ़ोल्डर में कॉपी करें। Java7 के साथ Pentaho DI चलाते समय, JDBC ड्राइवरों के Java 7 संस्करणों का उपयोग करें जैसा कि नीचे दिए गए चित्र में दिखाया गया है:
Oracle वॉलेट के लिए समर्थन जोड़ना
यदि आप एक सुरक्षित Oracle डेटाबेस से कनेक्ट करने का इरादा रखते हैं जैसे कि Oracle क्लाउड में एक स्वायत्त डेटाबेस (जैसे इस उदाहरण में), तो JDBC समर्थन फ़ाइलों को डाउनलोड और कॉपी करना भी सुनिश्चित करें (JDK संस्करण 8 के लिए):
ojdbc8.jar oraclepki.jar osdt_cert.jar osdt_core.jar
महत्वपूर्ण:नया जार कॉपी करने के बाद पेंटाहो डेटा एकीकरण को फिर से शुरू करना सुनिश्चित करें lib . को फ़ाइलें फ़ोल्डर।
PDI से Oracle के लिए एक नया कनेक्शन स्थापित करने के निर्देश अगले पृष्ठ पर दिए गए हैं।
पेंटाहो डीआई चलाना और टेबल आउटपुट ट्रांसफॉर्मेशन बनाना
चम्मच चलाएँ और तालिका आउटपुट के लिए एक नया रूपांतरण बनाएँ
तालिका आउटपुट के गुण प्राप्त करें जैसा कि नीचे दिखाया गया है:
कनेक्शन के लिए, नया कनेक्शन बनाने के लिए नया… बटन पर क्लिक करें।
अपने नए डेटाबेस कनेक्शन को एक नाम दें और फिर Oracle को कनेक्शन प्रकार के रूप में चुनें। एक्सेस प्रकार के रूप में JDBC (मूल) चुनें।
वर्तमान में Oracle चला रहे सर्वर का होस्ट नाम या IP पता भरें। यदि आप अपने स्थानीय कंप्यूटर पर Oracle चला रहे हैं, तो लोकलहोस्ट IP एड्रेस 127.0.0.1 का उपयोग करें। उस पोर्ट नंबर को सेट करें जहां Oracle डेटाबेस श्रोता चल रहा है। डिफ़ॉल्ट रूप से यह पोर्ट 1521 है।
अपने Oracle सेवा नाम या SID के अनुसार डेटाबेस नाम भरें। यदि आपका Oracle 12c डेटाबेस प्लग करने योग्य डेटाबेस के साथ कॉन्फ़िगर किया गया है, तो प्लग करने योग्य डेटाबेस के नाम के बाद फ़ॉरवर्ड स्लैश का उपयोग करें (नीचे दिए गए उदाहरण में pdb1)।
कनेक्शन के लिए Oracle खाता उपयोगकर्ता नाम और पासवर्ड की आपूर्ति करें। यदि डेटा के लिए टेबलस्पेस और इंडेक्स फ़ील्ड के लिए टेबलस्पेस खाली छोड़ दिया जाता है, तो स्कीमा के लिए डिफ़ॉल्ट टेबलस्पेस का उपयोग किया जाएगा। यदि आप इन्हें बदलना चाहते हैं, तो संकेतों के अनुसार टेबल स्पेस के नाम टाइप करें।
हो जाने पर, कनेक्शन का परीक्षण करने के लिए परीक्षण बटन पर क्लिक करें।
सामान्य त्रुटि संदेश
यदि परीक्षण विफल रहता है, तो त्रुटि संदेशों की जाँच करें। उदाहरण के लिए:
Error connecting to database [Oracle12cDatabase] : org.pentaho.di.core.exception.KettleDatabaseException: Error occurred while trying to connect to the database Error connecting to database: (using class oracle.jdbc.driver.OracleDriver) ORA-01017: invalid username/password; logon denied
उपयोगकर्ता नाम और पासवर्ड जांचें
Error connecting to database [Oracle12cDatabase] : org.pentaho.di.core.exception.KettleDatabaseException: Error occurred while trying to connect to the database Error connecting to database: (using class oracle.jdbc.driver.OracleDriver) Listener refused the connection with the following error: ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
डेटाबेस नाम (Oracle सेवा नाम, SID या प्लग करने योग्य डेटाबेस नाम) की जाँच करें
Error connecting to database [Oracle12cDatabase] : org.pentaho.di.core.exception.KettleDatabaseException: Error occurred while trying to connect to the database Error connecting to database: (using class oracle.jdbc.driver.OracleDriver) IO Error: The Network Adapter could not establish the connection
होस्टनाम और/या पोर्ट नंबर की जाँच करें।
ORA-28000, Account Locked
सुनिश्चित करें कि Oracle खाता अनलॉक है और पासवर्ड चालू है। कुछ मामलों में, यदि पासवर्ड "अनुग्रह अवधि" में है, तो पेंटाहो अभी भी इसे "खाता बंद" के रूप में व्याख्या कर सकता है। आपके डेटाबेस व्यवस्थापक को या तो आपके खाते को मैन्युअल रूप से अनलॉक करना पड़ सकता है (ALTER USER xyz ACCOUNT UNLOCK; ) या अपना पासवर्ड रीसेट करें।
परीक्षण सफल होने के बाद, OK बटन पर क्लिक करें और डेटाबेस कनेक्शन तालिका आउटपुट परिवर्तन में सहेजा जाएगा। सुनिश्चित करें कि लक्ष्य स्कीमा डेटा आउटपुट (या इनपुट) संचालन के लिए उपयोगकर्ता नाम और/या इच्छित स्कीमा से मेल खाती है।