একটি ডাটাবেস সংযোগকারী স্থাপন করুন

ক্লাউড সার্চ ডাটাবেস সংযোগকারী ব্যবহার করে আপনার প্রতিষ্ঠানের ডাটাবেস থেকে ডেটা আবিষ্কার এবং সূচী করার জন্য আপনি Google ক্লাউড সার্চ সেট আপ করতে পারেন।

গুরুত্বপূর্ণ বিবেচ্য বিষয়

আপনি জাভা অ্যাপস চালানোর জন্য প্রায় যেকোনো পরিবেশে ক্লাউড সার্চ ডাটাবেস সংযোগকারী ইনস্টল এবং চালাতে পারেন, যতক্ষণ না সংযোগকারীর ইন্টারনেট এবং ডাটাবেস উভয়েরই অ্যাক্সেস থাকে।

সিস্টেমের জন্য আবশ্যক

সিস্টেমের জন্য আবশ্যক
অপারেটিং সিস্টেম উইন্ডোজ অথবা লিনাক্স
এসকিউএল ডাটাবেস JDBC 4.0 বা পরবর্তী সংস্করণের সাথে সামঞ্জস্যপূর্ণ ড্রাইভার সহ যেকোনো SQL ডাটাবেস, যার মধ্যে রয়েছে:
  • এমএস এসকিউএল সার্ভার (২০০৮, ২০১২, ২০১৪, ২০১৬)
  • ওরাকল (১১ গ্রাম, ১২ সি)
  • গুগল ক্লাউড এসকিউএল
  • মাইএসকিউএল
সফটওয়্যার JDBC ড্রাইভার (আলাদাভাবে ডাউনলোড এবং ইনস্টল করা)

সংযোগকারী স্থাপন করুন

এই ধাপগুলি বর্ণনা করে কিভাবে সংযোগকারীটি ইনস্টল করতে হয় এবং আপনার ডাটাবেসগুলিকে সূচীবদ্ধ করার জন্য এটি কনফিগার করতে হয় এবং ক্লাউড অনুসন্ধান ব্যবহারকারীদের কাছে ফলাফল ফেরত পাঠাতে হয়।

পূর্বশর্ত

সংযোগকারী স্থাপনের আগে, এই তথ্য সংগ্রহ করুন:

ধাপ ১. ডাটাবেস সংযোগকারী সফ্টওয়্যারটি ডাউনলোড এবং তৈরি করুন।

  1. GitHub থেকে সংযোগকারী সংগ্রহস্থলটি ক্লোন করুন।

    $ git clone https://github.com/google-cloudsearch/database-connector.git
    $ cd database-connector

  2. আপনার নির্বাচিত সংস্করণটি দেখুন:

    $ git checkout tags/v1-0.0.3

  3. সংযোগকারী তৈরি করুন:

    $ mvn package
    পরীক্ষা এড়িয়ে যেতে, mvn package -DskipTests ব্যবহার করুন।

  4. আপনার ইনস্টলেশন ডিরেক্টরিতে সংযোগকারী জিপ ফাইলটি বের করুন:

    $ cp target/google-cloudsearch-database-connector-v1-0.0.3.zip installation-dir
    $ cd installation-dir
    $ unzip google-cloudsearch-database-connector-v1-0.0.3.zip
    $ cd google-cloudsearch-database-connector-v1-0.0.3

ধাপ ২. ডাটাবেস সংযোগকারী কনফিগার করুন

  1. connector-config.properties (ডিফল্ট) নামে একটি টেক্সট ফাইল তৈরি করুন। Google .properties অথবা .config এক্সটেনশনটি সুপারিশ করে। এটিকে সংযোগকারীর মতো একই ডিরেক্টরিতে রাখুন।

  2. কী-মান জোড়া হিসেবে প্যারামিটার যোগ করুন। ফাইলটিতে ডেটা সোর্স অ্যাক্সেস, ডাটাবেস অ্যাক্সেস, একটি সম্পূর্ণ ট্র্যাভার্সাল SQL স্টেটমেন্ট, একটি কন্টেন্ট ফিল্ড শিরোনাম এবং কলামের সংজ্ঞা উল্লেখ করতে হবে।

    # Data source access
    api.sourceId=1234567890abcdef
    api.identitySourceId=0987654321lmnopq
    api.serviceAccountPrivateKeyFile=./PrivateKey.json
    
    # Database access
    db.url=jdbc:mysql://localhost:3306/mysql_test
    db.user=root
    db.password=passw0rd
    
    # Full traversal SQL statement
    db.allRecordsSql=select customer_id, first_name, last_name, phone from address_book
    
    # Column definitions and URL format
    db.allColumns=customer_id, first_name, last_name, phone
    db.uniqueKeyColumns=customer_id
    url.columns=customer_id
    
    # Content field
    contentTemplate.db.title=customer_id
    
    # Optional: ACLs
    defaultAcl.mode=fallback
    defaultAcl.public=true
    
    # Optional: traversal schedule
    schedule.traversalIntervalSecs=36000
    schedule.performTraversalOnStart=true
    

    ডাটাবেস-নির্দিষ্ট প্যারামিটারের জন্য, কনফিগারেশন প্যারামিটারের রেফারেন্স দেখুন। সাধারণ প্যারামিটারের জন্য, Google-সরবরাহকৃত সংযোগকারী প্যারামিটার দেখুন।

ধাপ ৩. ডাটাবেস সংযোগকারী চালান

কমান্ড লাইন থেকে সংযোগকারীটি চালান:

java
   -cp "google-cloudsearch-database-connector-v1-0.0.3.jar:mysql-connector-java-5.1.41-bin.jar"
   com.google.enterprise.cloudsearch.database.DatabaseFullTraversalConnector
   [-Dconfig=mysql.config]

সংযোগকারী কনফিগারেশন এবং প্রারম্ভিককরণ ত্রুটিগুলি রিপোর্ট করে। অন্যান্য ত্রুটি, যেমন অবৈধ SQL সিনট্যাক্স, যখন সংযোগকারী প্রথমবার ডাটাবেস অ্যাক্সেস করার চেষ্টা করে তখন দেখা দেয়।

কনফিগারেশন প্যারামিটার রেফারেন্স

এই বিভাগে ডাটাবেস সংযোগকারী কনফিগারেশন ফাইলে ব্যবহৃত প্যারামিটারগুলি তালিকাভুক্ত করা হয়েছে।

ডেটা সোর্স অ্যাক্সেস প্যারামিটার

বিন্যাস প্যারামিটার
ডেটা সোর্স আইডি api.sourceId = source-ID

প্রয়োজনীয়। ক্লাউড সার্চ সোর্স আইডি।

পরিষেবা অ্যাকাউন্ট api.serviceAccountPrivateKeyFile = path

প্রয়োজনীয়। পরিষেবা অ্যাকাউন্ট কী ফাইলের পথ।

ডাটাবেস অ্যাক্সেস প্যারামিটার

বিন্যাস প্যারামিটার
ডাটাবেস ইউআরএল db.url = database-URL

প্রয়োজনীয়। সম্পূর্ণ পাথ, যেমন, jdbc:mysql://127.0.0.1/dbname

পরিচয়পত্র db.user = username
db.password = password

প্রয়োজনীয়। প্রাসঙ্গিক রেকর্ডের জন্য পড়ার অনুমতি প্রয়োজন।

ট্র্যাভার্সাল SQL কোয়েরি প্যারামিটার

সংযোগকারীটি রেকর্ড অতিক্রম করার জন্য SQL SELECT কোয়েরি ব্যবহার করে।

  • সম্পূর্ণ ট্রাভার্সাল : প্রতিটি কনফিগার করা রেকর্ড পড়ে। প্রাথমিক সূচীকরণ এবং পর্যায়ক্রমিক পুনঃসূচীকরণের জন্য প্রয়োজনীয়।
  • ইনক্রিমেন্টাল ট্র্যাভার্সাল : শুধুমাত্র নতুন পরিবর্তিত রেকর্ড পড়ে। ডাটাবেসে টাইমস্ট্যাম্প ফিল্ডের প্রয়োজন।
বিন্যাস প্যারামিটার
সম্পূর্ণ ট্রাভার্সাল কোয়েরি db.allRecordsSql = SELECT columns FROM table

আবশ্যক। কন্টেন্ট, আইডি এবং ACL-এর জন্য ব্যবহৃত সমস্ত কলাম অন্তর্ভুক্ত করুন।

ক্রমবর্ধমান ট্রাভার্সাল কোয়েরি db.incrementalUpdateSql = SELECT columns FROM table WHERE update_time > ?

ক্রমবর্ধমান সময়সূচীর জন্য প্রয়োজনীয়। "?" হল একটি বাধ্যতামূলক টাইমস্ট্যাম্প প্লেসহোল্ডার।

কলাম সংজ্ঞা পরামিতি

বিন্যাস প্যারামিটার
সকল কলাম db.allColumns = column-1 , column-2 , ...

প্রয়োজনীয়। SQL কোয়েরিতে উল্লেখিত সকল কলাম তালিকাভুক্ত করে।

অনন্য কী কলাম db.uniqueKeyColumns = column-1

প্রয়োজনীয়। প্রতিটি রেকর্ডের জন্য অনন্য আইডি নির্ধারণ করে।

URL লিঙ্ক কলাম url.columns = column-1

প্রয়োজনীয়। ক্লিকযোগ্য অনুসন্ধান ফলাফলের জন্য ব্যবহৃত কলামটি নির্দিষ্ট করে।

কন্টেন্ট ক্ষেত্র

বিন্যাস প্যারামিটার
শিরোনাম কলাম contentTemplate.db.title = column-name

প্রয়োজনীয়। অনুসন্ধান সূচীকরণের জন্য সর্বোচ্চ অগ্রাধিকার।

অগ্রাধিকার নির্ধারণ contentTemplate.db.quality.high = column-1

কলামগুলিকে উচ্চ, মাঝারি বা নিম্ন মানের হিসেবে চিহ্নিত করুন।