Google Cloud Search को इस तरह सेट अप किया जा सकता है कि वह Google Workspace के कॉन्टेंट के साथ-साथ, आपके संगठन के Microsoft Windows शेयर से भी नतीजे दिखाए. Cloud Search File Systems कनेक्टर का इस्तेमाल किया जाता है. साथ ही, इसे Windows के चुने गए शेयर को ऐक्सेस करने के लिए कॉन्फ़िगर किया जाता है. एक कनेक्टर इंस्टेंस, Microsoft Windows के कई शेयर किए गए फ़ोल्डर के साथ काम कर सकता है.
विचार करने वाली ज़रूरी बातें
फ़ाइल सिस्टम कनेक्टर को डिप्लॉय करने से पहले, इन बातों का ध्यान रखें.
अपने-आप अपडेट होता रहता है
कनेक्टर शुरू होने पर, यह डिफ़ॉल्ट रूप से स्टार्ट पाथ (कॉन्फ़िगरेशन फ़ाइल में fs.src से मिली वैल्यू) की लगातार निगरानी करता है. जब फ़ाइल सिस्टम, कॉन्टेंट या ऐक्सेस कंट्रोल में हुए बदलावों की जानकारी देता है, तब कनेक्टर फ़ाइल सिस्टम को फिर से क्रॉल करता है. फिर से क्रॉल करने में ज़्यादा संसाधन लग सकते हैं. मॉनिटरिंग की सुविधा बंद करने के लिए, fs.monitorForUpdates को false पर सेट करें. इससे संसाधनों का इस्तेमाल कम होता है. हालांकि, कनेक्टर में बदलाव दिखने में समय लगता है. ज़्यादा जानें
डीएफ़एस ऐक्सेस कंट्रोल
डीएफ़एस सिस्टम, अपने लिंक पर ऐक्सेस कंट्रोल लागू करता है. आम तौर पर, हर डीएफ़एस लिंक का अपना एसीएल होता है. DFS, ऐक्सेस के आधार पर गिनती करने की सुविधा (एबीई) का इस्तेमाल करता है, ताकि किसी उपयोगकर्ता को दिखाए जाने वाले लिंक को सीमित किया जा सके. जब ABE होम डायरेक्ट्री को अलग करता है, तो उपयोगकर्ताओं को DFS लिंक का सिर्फ़ सबसेट या सिर्फ़ एक लिंक दिख सकता है. डीएफ़एस सिस्टम को ट्रैवर्स करते समय, कनेक्टर डीएफ़एस लिंक के लिए एसीएल और टारगेट के लिए शेयर एसीएल का पालन करता है. शेयर एसीएल, डीएफ़एस एसीएल से इनहेरिट होता है.
सीमाएं
इस सेक्शन में, फ़ाइल सिस्टम कनेक्टर की ज्ञात सीमाओं के बारे में बताया गया है.
- फ़ाइल सिस्टम: कनेक्टर, मैप की गई या लोकल ड्राइव के साथ काम नहीं करता.
- डिस्ट्रिब्यूटेड फ़ाइल सिस्टम: यूएनसी डीएफ़एस से मैप किया गया ड्राइव ठीक से काम नहीं करता. साथ ही, कुछ एसीएल को ठीक से नहीं पढ़ा जा सकता.
- यह कनेक्टर, DFS नेमस्पेस और लिंक के साथ काम करता है. हालांकि, यह DFS नेमस्पेस में मौजूद सामान्य फ़ोल्डर के साथ काम नहीं करता.
cloudsearch.google.comमें मौजूद फ़ाइल लिंक या Query API से मिले लिंक पर, ज़्यादातर ब्राउज़र में क्लिक नहीं किया जा सकता.
सिस्टम की ज़रूरतें
फ़ाइल सिस्टम कनेक्टर को डिप्लॉय करने से पहले, पक्का करें कि होस्ट मशीन इन ज़रूरी शर्तों को पूरा करती हो:
| सिस्टम की ज़रूरतें | |
|---|---|
| ऑपरेटिंग सिस्टम |
|
| सॉफ़्टवेयर |
|
| फ़ाइल सिस्टम प्रोटोकॉल |
इनके साथ काम नहीं करता: लोकल Windows फ़ाइल सिस्टम, NFS 2.0, NFS 3.0 या लोकल Linux फ़ाइल सिस्टम. |
कनेक्टर डिप्लॉय करना
फ़ाइल सिस्टम कनेक्टर को डिप्लॉय करने के लिए, यह तरीका अपनाएं.
ज़रूरी शर्तें
कनेक्टर को डिप्लॉय करने से पहले, पक्का करें कि आपके एनवायरमेंट में ये कॉम्पोनेंट मौजूद हों:
कनेक्शन बनाने के लिए, Google Workspace की यह जानकारी:
- Google Workspace की निजी कुंजी. इसमें सेवा खाते का आईडी होता है. Cloud Search API का ऐक्सेस कॉन्फ़िगर करना लेख पढ़ें.
- Google Workspace डेटा सोर्स का आईडी. खोज के लिए डेटा सोर्स जोड़ना लेख पढ़ें.
- यह एक पहचान स्रोत आईडी है. पहचान का सोर्स बनाना लेख पढ़ें. अगर Active Directory के साथ सिंक किया जाता है, तो GCDS का इस्तेमाल करें.
आपका Google Workspace एडमिन, आम तौर पर ये क्रेडेंशियल दे सकता है.
पक्का करें कि Windows खाते के पास ज़रूरी अनुमतियां हों.
Microsoft Windows खाते की ज़रूरी अनुमतियां
कनेक्टर चलाने वाले Windows खाते के पास ये अनुमतियां होनी चाहिए:
- फ़ोल्डर में मौजूद कॉन्टेंट की सूची बनाएं.
- दस्तावेज़ का कॉन्टेंट पढ़ने की अनुमति.
- फ़ाइल और फ़ोल्डर के एट्रिब्यूट पढ़ें.
- फ़ाइलों और फ़ोल्डर के लिए, पढ़ने की अनुमतियां (एसीएल).
- बेसिक एट्रिब्यूट लिखें.
इनमें से किसी एक ग्रुप की सदस्यता से आम तौर पर ज़रूरी अनुमतियां मिल जाती हैं: एडमिन, पावर यूज़र, प्रिंट ऑपरेटर या सर्वर ऑपरेटर.
NetShareGetinfo फ़ंक्शन के बारे में जानने के लिए, Microsoft का दस्तावेज़ देखें.पहला चरण. कनेक्टर इंस्टॉल करना
GitHub से कनेक्टर रिपॉज़िटरी को डाउनलोड या क्लोन करें. इसके बाद, कनेक्टर पैकेज बनाएं.
GitHub से कनेक्टर रिपॉज़िटरी पाएं और उसे बनाएं.
Windows सर्वर पर git का इस्तेमाल करने के लिए:
> git clone https://github.com/google-cloudsearch/windows-filesystems-connector.git > cd windows-filesystems-connector > git checkout tags/v1-0.0.3
सीधे तौर पर डाउनलोड करने के लिए:
- windows-filesystems-connector पर जाएं.
- क्लोन बनाएं या डाउनलोड करें > ज़िप फ़ाइल डाउनलोड करें पर क्लिक करें.
- पैकेज को अनज़िप करें और डायरेक्ट्री में ले जाएं.
Apache Maven का इस्तेमाल करके कनेक्टर बनाएं:
टेस्ट को छोड़ने के लिए,> mvn package
mvn package -DskipTestsका इस्तेमाल करें.कनेक्टर की zip फ़ाइल को इंस्टॉलेशन डायरेक्ट्री में एक्स्ट्रैक्ट करें:
> cp target/google-cloudsearch-windows-filesystems-connector-v1-0.0.3.zip installation-dir > cd installation-dir > unzip google-cloudsearch-windows-filesystems-connector-v1-0.0.3.zip > cd google-cloudsearch-windows-filesystems-connector-v1-0.0.3
दूसरा चरण. कॉन्फ़िगरेशन फ़ाइल बनाना
कनेक्टर इंस्टॉल करने के बाद, एक कॉन्फ़िगरेशन फ़ाइल बनाएं. इसमें कनेक्टर की सेटिंग शामिल होती हैं.
- कनेक्टर डायरेक्ट्री में,
connector-config.propertiesनाम की फ़ाइल बनाएं. पैरामीटर को की-वैल्यू पेयर के तौर पर जोड़ें. उदाहरण के लिए:
# Required parameters api.serviceAccountPrivateKeyFile=/path/to/file.json api.sourceId=0123456789abcde api.identitySourceId=a1b1c1234567 # File system access fs.src=\\\\host\\share;\\\\dfshost\\dfsnamespace # Optional parameters traverse.abortAfterExceptions=500 fs.monitorForUpdates = true fs.preserveLastAccessTime = IF_ALLOWEDफ़ाइल सिस्टम के हिसाब से तय किए गए पैरामीटर के लिए, कॉन्फ़िगरेशन पैरामीटर का रेफ़रंस देखें. Cloud Search के सभी कनेक्टर इस्तेमाल किए जाने वाले सामान्य पैरामीटर की सूची के लिए, Google की ओर से उपलब्ध कराए गए कनेक्टर पैरामीटर देखें.
तीसरा चरण. प्रवेश करना सक्षम करें
लॉग के लिए एक डायरेक्ट्री बनाएं और लॉगिंग कॉन्फ़िगरेशन फ़ाइल बनाएं.
- कनेक्टर डायरेक्ट्री में
logsनाम का फ़ोल्डर बनाएं. logging.propertiesनाम की फ़ाइल बनाएं और उसमें यह कॉन्टेंट जोड़ें:handlers = java.util.logging.ConsoleHandler,java.util.logging.FileHandler # Default log level .level = WARNING com.google.enterprise.cloudsearch.level = INFO com.google.enterprise.cloudsearch.fs.level = INFO # uncomment line below to increase logging level to enable API trace #com.google.api.client.http.level = FINE java.util.logging.ConsoleHandler.level = INFO java.util.logging.FileHandler.pattern=logs/connector-fs.%g.log java.util.logging.FileHandler.limit=10485760 java.util.logging.FileHandler.count=10 java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
चरण 4. (ज़रूरी नहीं) मीडिया टाइप कॉन्फ़िगर करना
कनेक्टर, फ़ाइल के मीडिया टाइप का पता लगाने के लिए अपने डिफ़ॉल्ट तरीके का इस्तेमाल करता है. Windows पर, यह तरीका रजिस्ट्री एंट्री पर निर्भर करता है. अगर किसी फ़ाइल एक्सटेंशन के लिए रजिस्ट्री एंट्री मौजूद नहीं है, तो कनेक्टर मीडिया टाइप का सही तरीके से पता नहीं लगा पाएगा. अगर मीडिया टाइप का पता सही तरीके से नहीं लगाया गया है या आपको किसी एक्सटेंशन के लिए डिफ़ॉल्ट टाइप को बदलना है, तो यह तरीका अपनाएं:
- कनेक्टर डायरेक्ट्री में
mime-type.propertiesनाम की फ़ाइल बनाएं. - एक्सटेंशन और टाइप को
extension=media/typeके तौर पर डालें:properties xlsx=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet one=application/msonenote txt=text/plain pdf=application/pdf
चरण 5. फ़ाइल सिस्टम कनेक्टर को चलाएं
होस्ट मशीन से कनेक्टर लॉन्च करें:
> java -jar google-cloudsearch-windows-filesystems-connector-v1-0.0.3.jar -Djava.util.logging.config.file=logging.properties[ -Dconfig=my.config]डिफ़ॉल्ट रूप से, कनेक्टर उस डायरेक्ट्री में connector-config.properties नाम की कॉन्फ़िगरेशन फ़ाइल ढूंढता है जहां कनेक्टर चलाया जाता है.
अगर आपकी कॉन्फ़िगरेशन फ़ाइल का नाम अलग है या वह किसी दूसरी डायरेक्ट्री में है, तो उसका पाथ तय करने के लिए -Dconfig पैरामीटर का इस्तेमाल करें.
कॉन्फ़िगरेशन पैरामीटर का रेफ़रंस
यहां दी गई टेबल में, फ़ाइल सिस्टम कनेक्टर को कॉन्फ़िगर करने के लिए इस्तेमाल किए गए पैरामीटर की जानकारी दी गई है. साथ ही, उनके बारे में बताया गया है.
डेटा स्रोत की ऐक्सेस
| सेटिंग | पैरामीटर |
| डेटा सोर्स का आईडी | api.sourceId=1234567890abcdef
ज़रूरी है. Cloud Search का सोर्स आईडी. |
| सेवा खाता | api.serviceAccountPrivateKeyFile=./PrivateKey.json
ज़रूरी है. सेवा खाते की कुंजी वाली फ़ाइल का पाथ. |
| पहचान स्रोत आईडी | api.identitySourceId=x0987654321
ज़रूरी है. यह Cloud Search के आइडेंटिटी सोर्स का आईडी है. इसे Google Workspace एडमिन ने GCDS का इस्तेमाल करके, ऐक्टिव डायरेक्ट्री की पहचानों को सिंक करने के लिए सेट अप किया है. |
फ़ाइल सिस्टम का ऐक्सेस
क्रॉल करने के लिए फ़ाइल सिस्टम के सोर्स तय करने के लिए, इन पैरामीटर का इस्तेमाल करें.
| सेटिंग | पैरामीटर |
| सोर्स फ़ाइल सिस्टम | fs.src=path1[,path2, ...]
ज़रूरी है. सोर्स फ़ाइल सिस्टम को एक या उससे ज़्यादा यूएनसी सोर्स के तौर पर तय करें. इन्हें |
पाथ सेपरेटर वर्ण
| सेटिंग | पैरामीटर |
| पाथ सेपरेटर वर्ण | fs.src.separator=separator-character
डिफ़ॉल्ट सेपरेटर ";" होता है. अगर आपके सोर्स पाथ में सेमीकोलन शामिल हैं, तो आपके पास कोई दूसरा डीलिमिटर सेट करने का विकल्प होता है. जैसे, कॉमा (","). यह ऐसा डीलिमिटर होना चाहिए जो आपके पाथ में मौजूद वर्णों से मेल न खाता हो और जिसे प्रॉपर्टी फ़ाइल के सिंटैक्स के लिए रिज़र्व न किया गया हो. अगर |
कनेक्टर का व्यवहार
इन पैरामीटर का इस्तेमाल करके, यह तय करें कि कनेक्टर फ़ाइल सिस्टम को कैसे क्रॉल करे.
| सेटिंग | पैरामीटर |
| Windows डोमेन | fs.supportedDomain=domain
GCDS का इस्तेमाल करने वाले उपयोगकर्ताओं को Cloud Search के ज़रिए दस्तावेज़ ऐक्सेस करने की अनुमति देने के लिए ज़रूरी है. इसे Active Directory के एक NetBIOS डोमेन नाम के तौर पर तय करें. |
| एसीएल में खाते शामिल करना | fs.supportedAccounts=account-1[, account-2,...]
कॉमा लगाकर अलग किए गए खातों की सूची. इन्हें एसीएल में शामिल किया जाएगा. इससे कोई फ़र्क़ नहीं पड़ता कि ये खाते पहले से मौजूद हैं या नहीं. डिफ़ॉल्ट वैल्यू |
| एसीएल से बिल्ट-इन खातों को बाहर रखना | fs.builtinGroupPrefix=prefix
बिल्ट-इन खातों का प्रीफ़िक्स तय करें. इस प्रीफ़िक्स से शुरू होने वाले खाते को बिल्ट-इन खाता माना जाता है. इसे एएलसी से बाहर रखा जाएगा. डिफ़ॉल्ट वैल्यू |
| छिपी हुई फ़ाइलों और फ़ोल्डर को इंडेक्स करने की अनुमति दें | fs.crawlHiddenFiles=boolean
छिपी हुई फ़ाइलों को क्रॉल करने के लिए, इसे |
| क्रॉल किए गए फ़ोल्डर की लिस्टिंग और DFS नेमस्पेस की गिनती को इंडेक्स करने की अनुमति दें | fs.indexFolders=boolean
|
| फ़ाइल सिस्टम में हुए बदलावों को मॉनिटर करने की सुविधा चालू करना | fs.monitorForUpdates=boolean
|
| डायरेक्ट्री की कैश मेमोरी का ज़्यादा से ज़्यादा साइज़ सेट करना | fs.directoryCacheSize=number-of-entries
डायरेक्ट्री कैश का ज़्यादा से ज़्यादा साइज़. कनेक्टर, छिपे हुए फ़ोल्डर की पहचान करने के लिए कैश मेमोरी का इस्तेमाल करता है, ताकि छिपे हुए फ़ोल्डर में मौजूद फ़ाइलों और फ़ोल्डर को इंडेक्स न किया जा सके. डिफ़ॉल्ट रूप से, 50,000 एंट्री होती हैं. आम तौर पर, इनमें 10 से 15 मेगाबाइट रैम का इस्तेमाल होता है. |
टाइमस्टैंप को बनाए रखना
इन पैरामीटर का इस्तेमाल करके, यह तय करें कि कनेक्टर टाइमस्टैंप को कैसे सेव करता है.
| सेटिंग | पैरामीटर |
| ऐक्सेस करने का समय बनाए रखें | fs.preserveLastAccessTime=value
फ़ाइलों और फ़ोल्डरों को क्रॉल करते समय, कनेक्टर उनके आखिरी ऐक्सेस के टाइमस्टैंप को क्रॉल के समय में बदल सकता है. अगर आखिरी बार ऐक्सेस करने का समय सेव नहीं किया जाता है, तो बैकअप और संग्रह करने वाले सिस्टम, सही फ़ाइलों और फ़ोल्डर को सेकंडरी स्टोरेज में ट्रांसफ़र नहीं कर सकते. इसकी वजह यह है कि कनेक्टर ने उन्हें ऐक्सेस किया था. डिफ़ॉल्ट रूप से, ये वैल्यू हो सकती हैं:
|
| सिर्फ़ उन फ़ाइलों को क्रॉल करें जिन्हें किसी तारीख के बाद ऐक्सेस किया गया है | fs.lastAccessedDate=YYYY-MM-DD
कॉन्टेंट को सिर्फ़ तब क्रॉल करें, जब उसे आखिरी बार ऐक्सेस करने का समय, तय की गई तारीख (YYYY-MM-DD, ISO8601 फ़ॉर्मैट) के बाद का हो.
डिफ़ॉल्ट वैल्यू |
| सिर्फ़ उन फ़ाइलों को क्रॉल करें जिन्हें पिछले कुछ दिनों में ऐक्सेस किया गया है | fs.lastAccessedDays=number-of-days
कॉन्टेंट को सिर्फ़ तब क्रॉल करें, जब पिछली बार ऐक्सेस करने का समय, मौजूदा समय से तय किए गए दिनों के अंदर हो. डिफ़ॉल्ट वैल्यू |
| सिर्फ़ उन फ़ाइलों को क्रॉल करें जिनमें किसी तारीख के बाद बदलाव किया गया है | fs.lastModifiedDate=YYYY-MM-DD
कॉन्टेंट को सिर्फ़ तब क्रॉल करें, जब उसमें आखिरी बार बदलाव करने का समय, बताई गई तारीख (YYYY-MM-DD, ISO8601 फ़ॉर्मैट) के बाद का हो.
डिफ़ॉल्ट वैल्यू |
| सिर्फ़ उन फ़ाइलों को क्रॉल करें जिनमें पिछले कुछ दिनों में बदलाव किया गया है | fs.lastModifiedDays=number-of-days
कॉन्टेंट को सिर्फ़ तब क्रॉल करें, जब उसमें आखिरी बार बदलाव किए जाने का समय, मौजूदा समय से तय किए गए दिनों की संख्या के अंदर हो. डिफ़ॉल्ट वैल्यू |
फ़ाइल शेयर करने की अनुमतियों की सूची छोड़ें
अगर कनेक्टर के पास शेयर किए गए एसीएल को पढ़ने की अनुमतियां नहीं हैं, तो उसे शेयर किए गए एसीएल को अनदेखा करने के लिए सेट किया जा सकता है. इसके बाद, कॉन्टेंट को शेयर करने की अनुमति देने वाली एसीएल के साथ वापस भेज दिया जाता है.
| सेटिंग | पैरामीटर |
| शेयर करने के लिए एसीएल (ACL) की अनुमति छोड़ें | fs.skipShareAccessControl=boolean
शेयर करने की अनुमतियों की सूची को अनदेखा करने के लिए, इसे |