CKAN เป็น open source data portal platform ตัวหนึ่งที่ดูจะเป็นตัวที่มีชื่อเสียงที่สุดในด้านระบบที่เน้นเรื่อง open data ถ้าบอกว่า WordPress นั้นเป็น content management system (CMS) สำหรับ CKAN คงเป็น data management system (DMS) ก็คงจะไม่ผิดอะไร
ดูการติดตั้ง CKAN ได้ที่ Installing CKAN ลองทำแล้วติดตั้งได้ไม่ยากจนเกินไป ส่วนถ้าใครอยากใช้ Docker ลองดูที่ Docker Hub ได้ครับ ดูๆ แล้วยังมีการพัฒนาอยู่เรื่อยๆ ถือว่า active ในระดับหนึ่ง แปลกดีที่ว่า docs ส่วนติดตั้ง CKAN โดยใช้ Docker ไม่มีแล้วในเวอร์ชั่นล่าสุด แต่ยังหาได้ที่เวอร์ชั่น 2.4.7
จดไว้คร่าวๆ คือมี 4 ส่วนหลักๆ ตามนี้
1. Datasets
แน่นอนว่าเป็นส่วนที่สำคัญที่สุด เราสามารถดูรายการ datasets ที่เราเพิ่มเข้าไปได้
เวลาเพิ่ม dataset ก็ทำได้ง่ายๆ ส่วนแรกก็จะประมาณว่ากรอกข้อมูลที่เกี่ยวข้องกับข้อมูล (metadata) นั้นๆ ตรงจุดนี้สังเกตว่าเราต้องสร้าง Organization ก่อนด้วย แปลว่า dataset จะต้องอยู่ใน Organization ด้วยนะ
ส่วนต่อไปก็เราจะใส่ URL ที่ลิ้งค์ไปยังไฟล์ข้อมูลของเรา
ในส่วนนี้ผมไปเห็นว่าจริงๆ แล้วเราสามารถปรับระบบ CKAN ให้ลิ้งค์ไปยัง API endpoint หรือว่าอัพโหลดไฟล์เข้าไปในระบบเลยก็ได้
พอสร้าง dataset เสร็จแล้ว เราก็สามารถเข้าไปดูได้
ส่วน UI นี่ผมคิดว่าเราสามารถปรับได้นะ ลองดูตัวอย่างของ DataSF: Police Department Incidents ดู เค้าก็ใช้ CKAN เหมือนกัน แต่ customize ไปเยอะพอสมควรเลย
2. Organizations
ก็ไม่มีอะไรมาก แค่สร้างขึ้นมาเพื่อเอา dataset มาผูกด้วย
3. Groups
ส่วน Groups ก็จะคล้ายๆ กับส่วน Organizations ครับ เป็นการจัดกลุ่ม dataset ต่างๆ เข้าไว้ด้วยกัน ความแตกต่างก็น่าจะเป็นการเข้าถึงข้อมูล เราสามารถปรับ authorization ใน level ของ group ได้ด้วยว่า ผู้ใช้ใน group หนึ่ง จะไม่สามารถเข้าถึง dataset ในอีก group หนึ่งได้เป็นต้น
การเพิ่ม dataset เข้าไปใน group เราต้องไปแก้ไขใน dataset ตัวนั้นๆ นะครับ
4. Search
CKAN ใช้ Apache Solr เป็น search platform ทำให้เราสามารถค้นหาข้อมูลภายในระบบได้อย่างมีประสิทธิภาพมากขึ้น เนื่องจากเป็น relevant search ไม่ใช่ exact search
สรุปส่วนตัว
CKAN เป็นระบบที่น่าใช้ระบบหนึ่งถ้าใครอยากจะจัดการข้อมูล หรือทำ open data ให้กับองค์กร เป็นระบบที่ใช้งานง่ายแต่ customize น่าจะดูยากอยู่เพื่อให้ใช้งานตามความต้องการของแต่ละองค์กร รวมไปถึงการ maintain ระบบ ซึ่งดูแล้วค่อนข้างลำบากอยู่พอสมควร (รวมไปถึงการที่ตัวโปรเจคดูยังไม่ค่อยเน้นเรื่อง Docker เท่าไหร่)
ข้อดีอีกอย่างหนึ่งคือถึงแม้ว่า CKAN อาจจะไม่ถูกจริตกับองค์กรเท่าไหร่ แต่เราก็สามารถนำข้อดีต่างๆ ใช้เป็น baseline ในการพัฒนา data management system หรือ data portal ขึ้นมาใช้เป็น internal system ได้