ตัวเชื่อมต่อ Alfresco ในฐานะที่เป็นโซลูชันการจัดการเนื้อหาระดับองค์กรที่จัดการเนื้อหาจากแหล่งต่างๆ ในรูปแบบต่างๆ และในภาษาต่างๆ Alfresco มุ่งหวังที่จะจัดโครงสร้าง ปกป้อง และทำให้ข้อมูลพร้อมใช้งานสำหรับผู้ใช้ปลายทางและแอปพลิเคชันอื่นๆ

การค้นหาและฟังก์ชันที่เกี่ยวข้อง เช่น แง่มุม คำแนะนำ ไฮไลต์เป็นส่วนสำคัญในการบรรลุเป้าหมายเหล่านี้ ทั้งในข้อมูลที่มีโครงสร้าง (ข้อมูลเมตา/คุณสมบัติ) และข้อมูลที่ไม่มีโครงสร้าง (เนื้อหา)

Lucidworks Fusionมีแพลตฟอร์มการค้นหาสำหรับประเภทธุรกิจ เช่น อีคอมเมิร์ซ การสนับสนุนลูกค้า การค้นหาองค์กร มีจุดมุ่งหมายที่จะไม่เพียงแต่แบ่งและแบ่งข้อมูลเท่านั้น แต่ยังเพิ่มคุณค่าด้วยเทคนิค AI ด้วยวิธีที่ยืดหยุ่นและปรับขนาดได้ ผลิตภัณฑ์ทั้งสองสามารถช่วยเหลือซึ่งกันและกันเพื่อประสบการณ์การค้นหาที่ดียิ่งขึ้น

ขั้วต่อฟิวชั่น Lucidworks ที่มีอยู่

Alfresco ได้ผสานรวมกับ Fusion ผ่าน  ตัวเชื่อมต่อ  ที่เป็นไปตามมาตรฐาน CMIS (Content Management Interoperability Services)

ตัวเชื่อมต่อ Lucidworks Fusion นี้เป็นโปรแกรมรวบรวมข้อมูลที่สำรวจแผนผังของเอกสารจาก Alfresco และจัดทำดัชนี การส่งผ่านที่ตามมาจะดูที่วันที่แก้ไขของเอกสารและดำเนินการสำรวจทรีย่อยต่อหากวันที่นี้ใหม่กว่าวันที่ของการรวบรวมข้อมูลครั้งล่าสุด

หน่วยงานที่มีสิทธิ์อ่านอย่างน้อยจะถูกสร้างดัชนีพร้อมกับเอกสาร การเปลี่ยนแปลงสิทธิ์ในฝั่ง Alfresco จะทริกเกอร์การสร้างดัชนีใหม่ของทรีย่อยในรอบการตระเวนรอบถัดไป

ในเวลาสอบถาม ตัวเชื่อมต่อจะส่งการเรียกไปยัง Alfresco ก่อนเพื่อให้กลุ่มที่ผู้ใช้ปัจจุบันเป็นสมาชิกอยู่ หลังจากนั้น ตัวกรองความปลอดภัยจะผนวกการสืบค้นเงื่อนไขเข้ากับแบบสอบถามหลัก:

Lucidworks Fusion Connector

ตัวเชื่อมต่อฟิวชั่น Lucidworks ที่เพิ่มขึ้น

ปัญหาหลักของตัวเชื่อมต่อ Lucidworks Fusion ที่มีอยู่คือลักษณะที่ไม่มีการเพิ่มขึ้น หรือเป็นวิธีการใช้งานส่วนเพิ่ม สำหรับที่เก็บขนาดใหญ่ รอบการรวบรวมข้อมูลอาจใช้เวลานานมากและเกี่ยวข้องกับการดำเนินการ/การตรวจสอบที่ไม่จำเป็นบนโหนดจำนวนมาก ด้วยเหตุนี้ จึงต้องใช้เวลาสักระยะในการเพิ่มข้อมูลใหม่ลงใน Alfresco เพื่อเข้าถึงดัชนี ดังนั้นการเพิ่มสิ่งที่อยู่ใน Solr ของ Alfresco จึงเรียกว่า “ความสม่ำเสมอในที่สุด”

ปัญหาที่สองคือการสร้างดัชนีของสิทธิ์ร่วมกับเอกสาร โดยที่จริงแล้ว พวกมันถูกจำลองเป็น 2 ลำดับชั้นที่แยกจากกันใน Alfresco รายละเอียดเพิ่มเติมเกี่ยวกับเรื่องนี้อยู่ในส่วนต่อไปนี้

นอกจากนี้ ใน Alfresco ยังสามารถปฏิเสธสิทธิ์การเข้าถึงเอกสารเฉพาะได้ ในขณะที่กรณีการใช้งานนี้ไม่ครอบคลุมในตัวเชื่อมต่อที่มีอยู่

เพื่อแก้ไขปัญหาเหล่านี้ ตัวเชื่อมต่อใหม่จึงถูกสร้างขึ้น โดยทำงานในลักษณะเดียวกันกับตัวติดตาม Solr ของ Alfresco ภาพรวมสั้นๆ เกี่ยวกับวิธีที่ Solr ติดตาม Alfresco สามารถอ่านได้ในบทความ  Search Indexing Alfresco ของเรา

ตัวเชื่อมต่อมีอยู่ใน GitHub ของ Xenit ในขณะนี้ในฐานะโครงการส่วนตัว:  

ในทางปฏิบัติ มีตัวเชื่อมต่อ 2 ตัวที่ทำงานพร้อมกัน: ตัวหนึ่งสำหรับข้อมูลเมตาและเนื้อหา และตัวเชื่อมต่อที่สองสำหรับการอนุญาต พวกเขาเพิ่มข้อมูลใน 2 คอลเลกชันแยกกันใน Fusion

ติดตามข้อมูลเมตาและเนื้อหา

แม้ว่าโพสต์นี้ไม่ได้มีวัตถุประสงค์เพื่อลงรายละเอียดทั้งหมดเกี่ยวกับการใช้งานตัวเชื่อมต่อ แต่เพื่อให้เข้าใจได้ดีขึ้น จำเป็นต้องร่างอัลกอริธึมระดับสูง ในสถานการณ์แบบเธรดเดียว รอบการดึงข้อมูลหนึ่งรอบมีลักษณะดังนี้:

  • วนรอบธุรกรรมBatchesToFetch ครั้ง
    • ถาม Alfresco สำหรับธุรกรรมล่าสุดจากฐานข้อมูล
    • ขอให้ Alfresco ทำธุรกรรมกลุ่มหนึ่งเพื่อประมวลผลและแยกออกเป็นรายการอัปเดตและลบธุรกรรม
      • ธุรกรรมแรกและสุดท้ายในชุดงานคำนวณตามผลลัพธ์ของการสืบค้นก่อนหน้า พารามิเตอร์อินพุตที่เกี่ยวข้อง และ/หรือรอบการดึงข้อมูลก่อนหน้า
    • สำหรับการอัพเดทธุรกรรม:
      • เรียกรายการโหนดที่เกี่ยวข้องจาก Alfresco
      • สำหรับแต่ละชุดของโหนด (nodeBatchSize)
        • ดึงข้อมูลเมตาและ (อาจ) เนื้อหาจาก Alfresco
        • ดัชนีโหนด
      • สำหรับการลบธุรกรรม:
        • เรียกรายการโหนดที่เกี่ยวข้องจาก Alfresco 
        • สำหรับแต่ละชุดของโหนด (nodeBatchSize)
          • ลบโหนดออกจากดัชนี

อัลกอริธึมนี้ใช้ได้กับทั้งสถานการณ์ตามทันและการติดตามแบบสด ผ่านตัวจัดกำหนดการที่จัดเตรียมโดย Fusion

ไคลเอนต์นี้ได้รับการพัฒนาโดยเฉพาะเพื่อรวมไว้ในแอปพลิเคชันสปริงและทำให้เกิดมลพิษของบันทึกเมื่อใช้ใน Fusion ในการอัปเดตในอนาคต ไคลเอ็นต์นี้จะได้รับการอัปเดตเป็นไคลเอ็นต์ HTTP ที่ง่ายกว่า

Parallelization

เพื่อเพิ่มความเร็วในกระบวนการติดตาม โปรแกรมดึงข้อมูลสามารถทำงานบนหลายเธรด ฟังก์ชันนี้รวมอยู่ใน SDK ตัวเชื่อมต่อที่ Fusion จัดเตรียมไว้ให้ งานของตัวเชื่อมต่อคือการกำหนดผู้สมัครที่จะดำเนินการแบบขนาน

มีการใช้กลยุทธ์ดัชนี 3 แบบ (ดูแผนภาพ)

  1. ข้อมูลเมตาดัชนีเท่านั้น
  2. จัดทำดัชนีข้อมูลเมตาและเนื้อหาใน 1 ขั้นตอน (MC_1S)
  3. ดัชนีข้อมูลเมตาและเนื้อหาใน 2 ขั้นตอน (MC_2S)
กลยุทธ์ดัชนี

ในกลยุทธ์ที่ 2 ข้อมูลเมตาและเนื้อหาจะได้รับการจัดทำดัชนีแบบซิงโครนัสในขั้นตอนเดียว ผลการค้นหาใช้เวลานานกว่า แต่หากจำเป็นต้องค้นหาข้อความแบบเต็ม ควรใช้วิธีนี้ มันมีข้อดีของความเรียบง่ายและความจริงที่ว่าเอกสารถูกจัดทำดัชนีเพียงครั้งเดียว

ในกลยุทธ์ที่ 3 ข้อมูลเมตาจะถูกสร้างดัชนีก่อน จากนั้นจึงสร้างเนื้อหาแบบอะซิงโครนัส ในสถานการณ์สมมตินี้ เมื่อมีการจัดการเอกสาร เอกสารนั้นจะถูกจัดทำดัชนีและเก็บไว้เป็นตัวเลือกชั่วคราวสำหรับการประมวลผลต่อไป เมื่อผู้สมัครได้รับการปรับปรุงเนื้อหา เอกสารใหม่จะถูกส่งออกไปสำหรับการทำดัชนี โดยเขียนทับเอกสารก่อนหน้า วิธีการนี้มีข้อได้เปรียบที่ผลการค้นหาจะพร้อมใช้งานเร็วกว่าในอินเทอร์เฟซการค้นหา อันดับแรกคือข้อมูลเมตาเท่านั้น

ผู้สมัครที่จะเลือกโดยหัวข้อ fetcher คือ:

  • ช่วงธุรกรรม: ชุดของธุรกรรม
  • โหนด: โหนดที่มีข้อมูลเมตา เพื่อเสริมด้วยเนื้อหาในสถานการณ์จำลอง MC_2S

ผู้สมัครทั้งสองประเภทเป็นแบบชั่วคราว กล่าวคือ เมื่อจัดการแล้ว ผู้สมัครจะถูกลบออกจากฐานข้อมูลท้องถิ่นพร้อมกับผู้สมัคร

สิทธิ์ในการติดตาม

รายการควบคุมการเข้าถึง (acls) คือรายการของคู่ (สิทธิ์ การอนุญาต) ที่ระบุว่าใครมีสิทธิ์เข้าถึงเอกสารและประเภทของการเข้าถึงนั้นคืออะไร สำหรับ Solr – อย่างน้อยการใช้งานในปัจจุบันจาก Alfresco – เฉพาะสิทธิ์ในการอ่านเท่านั้นที่น่าสนใจ เจ้าหน้าที่ที่อนุญาตให้อ่านเอกสารเรียกว่าผู้อ่าน เจ้าหน้าที่ที่ถูกห้ามอย่างชัดแจ้งในการอ่านเอกสารเรียกว่าปฏิเสธ ทุกครั้งที่มีการเปลี่ยนแปลงการอนุญาต จำนวน acls จะเกี่ยวข้องกับชุดการแก้ไข (= ธุรกรรม acl)

อัลกอริธึมระดับสูงสำหรับรอบการดึงข้อมูล acl หนึ่งรอบมีดังนี้:

  • ขอชุดการเปลี่ยนแปลงจาก Alfresco เพื่อดำเนินการ
    • ชุดการแก้ไขชุดแรกในชุดงานหรือเวลาคอมมิตแรกของชุดการแก้ไขจะคำนวณตามพารามิเตอร์อินพุตที่เกี่ยวข้องและ/หรือรอบการดึงข้อมูลก่อนหน้า
    • สำหรับชุดการเปลี่ยนแปลง
      • ขอรายชื่อ acls ที่เกี่ยวข้องจาก Alfresco
    • สำหรับ acls
      • ขอรายชื่อผู้อ่านและปฏิเสธจาก Alfresco
      • จัดทำดัชนีแต่ละ acl + ผู้อ่าน + หน่วยงานที่ถูกปฏิเสธ

อัลกอริธึมนี้ใช้งานได้ทั้งสำหรับการติดตามผลและสถานการณ์การติดตามสด การทำดัชนี acls นั้นเร็วกว่าการทำดัชนีเอกสาร เนื่องจากลำดับชั้นของ acls มีขนาดเล็กกว่า acls จึงไม่มีเนื้อหาและมีฟิลด์ข้อมูลเมตาเพียงไม่กี่ฟิลด์

รายละเอียดเพิ่มเติมเกี่ยวกับพารามิเตอร์ที่ใช้ใน README ของส่วนประกอบ:  https://github.com/xenit-eu/alfresco-fusion-connector/tree/master/alfresco-acls

ข้อดีของการติดตาม ACLS แยกจากเอกสาร

การแยกการติดตามเอกสารจากการติดตามการอนุญาตมีข้อดีหลายประการ:

  • โดยทั่วไปแล้ว จำนวนการอนุญาตมีน้อยเมื่อเทียบกับจำนวนเอกสาร เหมาะสมที่จะขยายขนาดโดยการแบ่งกลุ่มเอกสารและมีสำเนาของคอลเลกชัน acls ในแต่ละส่วนแบ่งข้อมูล
  • การเปลี่ยนแปลงการอนุญาตแบบเรียงซ้อนไปยังทรีย่อยที่รูทถูกเปลี่ยนไม่ได้ทำให้เกิดการจัดทำดัชนีเอกสารใหม่ เฉพาะการเปลี่ยนแปลงลำดับชั้นของ acl
  • การใช้งานสอดคล้องกับการใช้งานตัวเชื่อมต่อ Fusion อื่นๆ (เช่น ตัวเชื่อมต่อ Sharepoint)
  • การใช้งานนั้นสอดคล้องกับวิธีการสร้างแบบจำลองการอนุญาตในฐานข้อมูลของ Alfresco

การสอบถาม: การกรองสิทธิ์

ข้อมูลจากตัวเชื่อมต่อ 2 ตัวเชื่อมโยงผ่าน AlfrescoSecurityFilterComponent บทบาทขององค์ประกอบนี้คือเก็บเฉพาะเอกสารที่ผู้ใช้ปัจจุบันสามารถอ่านได้ ตัวเชื่อมต่อ Alfresco

ในตัวเชื่อมต่อ Fusion อื่นๆ ตัวกรองความปลอดภัยจะเรียกใช้งานแบบสอบถามแบบกราฟ+การรวมเพื่อทำให้คอลเลกชัน acl เรียบขึ้น จากนั้นจึงรวมเข้ากับคอลเลกชันหลัก ในกรณีของตัวเชื่อมต่อ Alfresco แบบเพิ่มหน่วย ไม่จำเป็นต้องใช้คิวรีแบบกราฟ เนื่องจากรายการของผู้อ่านและการปฏิเสธถูกทำให้เรียบแล้วในคอลเล็กชัน acl ซึ่งมีให้โดยปลายทางของ Alfresco ที่เกี่ยวข้องกับ Solr

ขั้นตอนในตัวกรองความปลอดภัย:

  • รับทุกกลุ่มที่ผู้ใช้ปัจจุบันเป็นของ <group1> …<groupn>
  • สร้างแบบสอบถามตัวกรองถึง
    • รับเอกสารที่มี ROLE_OWNER และเป็นเจ้าของโดย <crt_user>
    • รับเอกสารที่มี acls ที่ผู้อ่านมีผู้ใช้เองหรือหนึ่งใน <group1> …<groupn>
    • กรองเอกสารที่มี acls ที่ปฏิเสธการเข้าถึงของผู้ใช้เองหรือ<group1> …<groupn>
Lucidworks Fusion Connector

บทสรุป

ตัวเชื่อมต่อ Fusion แบบเพิ่มหน่วยใช้กลไกการติดตามแบบเดียวกับ Solr ที่ Alfresco ใช้ ทำไมทุกคนถึงใช้ตัวเชื่อมต่อนี้แทนเซิร์ฟเวอร์การจัดทำดัชนีจาก Alfresco มีเหตุผลสองสามประการ:

  • เวอร์ชัน Solr ที่ใหม่กว่าใน Fusion (และการอัปเกรดที่เร็วขึ้น) 
  • อิสระในการใช้คุณสมบัติขั้นสูงของ Solr: เข้าร่วมการสืบค้น พารามิเตอร์ท้องถิ่น
  • อิสระในการเพิ่มฟิลด์ใหม่ให้กับดัชนี 
  • ขยายขนาดออกจากกล่องด้วยผู้ดูแลสวนสัตว์
  • Fusion ถูกรวมเข้ากับ App Studio Enterprise อย่างดี ทำให้สร้างแอปพลิเคชันการค้นหาได้อย่างรวดเร็ว
  • เปิดโอกาสสำหรับการค้นหาองค์กรจากหลายแหล่ง
  • เปิดโอกาสสำหรับการสำรวจและเติมเต็มข้อมูลด้วยการเรียนรู้ของเครื่อง

การผสมผสานระหว่าง Alfresco และ Fusion สามารถมอบประสบการณ์การค้นหาที่ทรงพลังโดยใช้ความพยายามเพียงเล็กน้อย ตัวเชื่อมต่อ Lucidworks Fusions ที่เพิ่มขึ้นใหม่ช่วยแก้ไขปัญหาที่ไม่ (ง่าย) แก้ไขได้ด้วยตัวเชื่อมต่อที่ใช้ CMIS ที่มีอยู่

สนใจรับคำปรึกษาด้านวางระบบจัดการเอกสารอิเล็กทรอนิกส์  EDMS บริการตรวจข้อสอบ นับคะแนน โดยทีมงานผู้เชี่ยวชาญจาก K&O ที่มีประสบการณ์มากว่า 15 ปี 

รวมถึงซอฟต์แวร์ระดับโลก ติดต่อ 0 2 – 8 6 0 – 6 6 5 9 หรือ E m a i l : c s @ k o . i n . t h 

สามารถติดต่อสอบถามได้โดยตรง เรามีแอดมินคอยคอบคำถาม 24 ชั้วโมงที่ Line OA

สอบถามได้สบายใจทั้ง เรื่องค่าบริการ ราคา และ งบประมาณ เพราะเป็นราคาที่สุด คุ้มที่สุด

ส า ม า ร ถ รั บ ช ม วี ดี โ อ ส า ธิ ต วิ ธี ก า ร ใช้ ง า น จ ริ ง ไ ด้ ที่ นี่

หากท่านมีความสนใจ บทความ หรือ Technology สามารถติดต่อได้ตามเบอร์ที่ให้ไว้ด้านล่างนี้
Tel.086-594-5494
Tel.095-919-6699

Leave a Reply

Your email address will not be published. Required fields are marked *