Datasette Cloud: แพลตฟอร์มโฮสต์แบบ SaaS สำหรับ Datasette
(datasette.cloud)- Datasette Cloud เป็นบริการโฮสต์ Datasette โอเพนซอร์สในรูปแบบ SaaS สำหรับทีม ช่วยให้แชร์ข้อมูลในพื้นที่ส่วนตัวและเปิดเผยเฉพาะข้อมูลที่จำเป็นออกสู่ภายนอกได้
- โฟกัสช่วงแรกคือ ห้องข่าว เพื่อช่วยให้นักข่าวสามารถเผยแพร่ข้อมูลทั้งภายในทีมและต่อสาธารณะได้โดยไม่ต้องตั้งค่าและดูแลเซิร์ฟเวอร์เอง
- แต่ละทีมสามารถสร้าง space แบบส่วนตัวในรีเจียนที่ใกล้ที่สุด และจะได้รับคอนเทนเนอร์ที่ปลอดภัยบน Fly.io พร้อมซับโดเมน
space-name.datasette.cloud - สามารถนำเข้าข้อมูลจาก CSV, URL, ข้อมูลเปิดภาครัฐที่ใช้ Socrata, ไฟล์ SQLite และ Datasette Write JSON API พร้อมแก้ไขได้ทันทีผ่านเว็บ UI
- ในอนาคตจะเพิ่มการคิวรีที่มี AI ช่วย, การเผยแพร่ตารางและคิวรีที่เลือก, การใส่คำอธิบายประกอบข้อมูล และระบบราคา โดยตอนนี้เริ่มต้นได้ด้วยการจองเดโมผ่าน Zoom หรือขอสิทธิ์เข้าถึงพรีวิว
พื้นที่ทำงานร่วมกันกับข้อมูลแบบส่วนตัวสำหรับทีม
- Datasette Cloud คือ แพลตฟอร์มโฮสต์แบบ SaaS สำหรับโปรเจกต์โอเพนซอร์ส Datasette
- ทีมสามารถสร้าง space แบบส่วนตัวเพื่อจัดการข้อมูล แชร์กันอย่างปลอดภัยภายในทีม แล้วเปิดเผยข้อมูลบางส่วนออกสู่ภายนอกได้
- ผู้ใช้กลุ่มแรกถูกออกแบบมาให้เหมาะกับ ห้องข่าว
- Datasette มีจุดเริ่มต้นจากวงการข้อมูลเชิงข่าว
- เป้าหมายคือช่วยให้นักข่าวแชร์ข้อมูลได้โดยไม่ต้องตั้งค่าและดูแล Datasette เองบนผู้ให้บริการโฮสต์
- บริษัทและองค์กรอื่นนอกเหนือจากนักข่าวก็สามารถใช้ Datasette Cloud ได้
- ผู้ใช้ที่เพิ่งรู้จัก Datasette สามารถดูวิดีโอเดโมและบทแนะนำได้ที่เว็บไซต์ของโปรเจกต์โอเพนซอร์ส
การนำเข้าข้อมูลและรูปแบบการเข้าถึง
- แต่ละ space จะถูกโฮสต์ในรีเจียนที่ใกล้กับผู้ใช้ และทำงานอยู่ในคอนเทนเนอร์แยกที่ปลอดภัยบน Fly.io
- แต่ละ space มีซับโดเมน
space-name.datasette.cloud - ผู้ดูแล space สามารถเชิญสมาชิกเพิ่มเติมได้
- แต่ละ space มีซับโดเมน
- สมาชิกทีมสามารถนำเข้าข้อมูลได้หลายทาง
- อัปโหลดไฟล์ CSV เพื่อสร้างตาราง
- โหลดไฟล์ CSV จาก URL
- นำเข้าจากพอร์ทัลข้อมูลเปิดภาครัฐที่ใช้ Socrata
- อัปโหลดไฟล์ฐานข้อมูล SQLite เพื่อสร้างฐานข้อมูลใหม่
- นำเข้าข้อมูลโดยใช้ Datasette Write JSON API
- ข้อมูลที่นำเข้าแล้วสามารถ แก้ไขแบบอินไลน์ ได้จากเว็บอินเทอร์เฟซของ Datasette Cloud
- ความสามารถในการแก้ไข แทรก และลบแถว สรุปไว้ใน การแนะนำ datasette-write-ui
- การสำรวจข้อมูลและการเข้าถึงผ่าน API ใช้เครื่องมือเดิมของ Datasette
- เว็บอินเทอร์เฟซของ Datasette รองรับการกรอง, การทำแฟเซ็ต, การรัน SQL query และการบุ๊กมาร์กผลลัพธ์
- ดูบทแนะนำและเดโมแบบสดได้ที่ Exploring a database with Datasette
- Learn SQL with Datasette แนะนำวิธีคิวรีข้อมูลด้วย SQL
- เข้าถึงตารางและรัน SQL query ได้ผ่าน JSON API ที่ปกป้องด้วย API token แบบละเอียด
- เข้าถึงข้อมูลแบบตารางได้ผ่าน GraphQL API ที่อิงปลั๊กอิน datasette-graphql
- ข้อมูลทั้งหมดถูกจัดเก็บอย่างปลอดภัยบน Fly volumes และสำรองไปยัง S3 ด้วย Litestream
ฟีเจอร์ที่กำลังจะมาและวิธีเริ่มต้น
- ฟีเจอร์ที่จะเพิ่มในเร็ว ๆ นี้มีดังนี้
- การคิวรีที่มี AI ช่วย: กำลังศึกษาวิธีนำโมเดลภาษาขนาดใหญ่ที่อยู่เบื้องหลัง OpenAI ChatGPT, Anthropic Claude และ Google Bard มาใช้กับการสำรวจข้อมูลของนักข่าวอย่างมีความรับผิดชอบ ดูได้ที่ llm.datasette.io
- ความสามารถในการเปิดเผยตารางและคิวรีที่เลือกออกสู่ภายนอก
- คำอธิบายประกอบข้อมูล ที่ช่วยให้ทีมเพิ่มคอมเมนต์ในคอลัมน์และแถว เพื่อทำงานร่วมกันในการวิเคราะห์ข้อมูลและค้นหาเรื่องราวที่ซ่อนอยู่ในข้อมูล
- ระบบราคาเพื่อให้สามารถชำระค่าใช้จ่ายของผลิตภัณฑ์ได้
- ผู้ใช้สามารถจองเซสชันเดโมผ่าน Zoom เพื่อเป็นหนึ่งในผู้ใช้กลุ่มแรก หรือขอสิทธิ์เข้าถึงพรีวิวได้โดยไม่ต้องดูเดโม
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
ประสบความสำเร็จในการนำ Datasette ไป deploy ภายในองค์กรเพื่อโฮสต์ข้อมูลวิจัยจำนวนมากที่ใหญ่เกินกว่าจะส่งให้หรือแชร์ให้ผู้ใช้ทั่วไปใช้งานได้ (100MB~20GB)
ก่อนหน้านี้ต้องแชร์แค่สรุประดับสูงมากกับ data point ไม่กี่จุด หรือสร้างแอป Django แบบขั้นต่ำ หรือใช้โซลูชันที่หนักกว่ามากอย่าง Metabase
พอเป็นข้อมูลขนาดกลาง ก็ส่งผลลัพธ์ทางอีเมลไม่ได้แล้ว วิธีที่ลูกค้าคุ้นเคยอย่าง network share หรือ SharePoint ก็มีข้อจำกัด และผู้ใช้ทั่วไปมักใช้ได้แค่ Excel พอข้อมูลใหญ่ก็ไปต่อไม่ได้ทันที
ตอนนี้สามารถให้ข้อมูลแทบทั้งหมดที่ผ่านการประมวลผลมาในระดับหนึ่ง พร้อม view ไม่กี่แบบและ tutorial ไม่ถึง 5 นาที (“นี่คือ Super Excel และถ้าต้องการ filter ให้ทำแบบนี้”) แล้วผู้ใช้ก็สำรวจเองได้
หลัง deploy ครั้งแรก พอดู log ก็พบว่าถึงจะเป็นงานวิจัยธรรมดา ๆ ผู้ใช้ก็เข้ามากดใช้งานระบบอย่างหนัก ทำให้นึกว่าที่ผ่านมาอาจมีคำถามละเอียด ๆ มากแค่ไหนที่พวกเขาไม่กล้าถามเพราะไม่อยากรบกวน หลังจากใช้ Datasette คำถามที่เข้ามาซับซ้อนขึ้นมาก เพราะเรื่องพื้นฐานผู้ใช้แก้เองได้แล้ว
ชอบคำว่า “นี่คือ Super Excel และถ้าต้องการ filter ให้ทำแบบนี้” เป็นพิเศษ
เคยได้ยินชื่อ Datasette อยู่หลายครั้ง แต่ไม่เคยไปดูจริงจังว่าใช้ทำอะไร
วิดีโอบน landing page อธิบายได้ดีมาก ซึ่งกรณีแบบนี้พบไม่บ่อย
Simon และทั้งโปรเจกต์สมควรได้รับคำยินดี และหวังว่า cloud service จะไปได้สวย
Datasette เป็นโปรเจกต์ open source ของ Simon Willison ที่ค่อนข้างเป็นที่รู้จักบน HN และครั้งนี้ดูเหมือนเป็นโปรเจกต์ทำเงิน หวังว่าจะไปได้ดี และขอให้ Softbank มาซื้อกิจการเร็ว ๆ นี้ :-)
มันค่อนข้างเหมือนเครื่องมือที่ครอบไฟล์ SQLite เพื่อให้เผยแพร่ได้ง่าย ๆ และอาจให้ความรู้สึกเหมือน Tableau สำหรับ SQLite
Datasette เป็นโปรเจกต์แรกตลอดอาชีพของผมที่รู้สึกว่า ต่อให้ยังทำอยู่ในอีก 15 ปีข้างหน้าก็คงไม่เบื่อ ขอบเขตของแอปพลิเคชันที่น่าสนใจซึ่งสร้างจากไอเดียหลักนี้กว้างมากจริง ๆ
ดังนั้นผมอยากทำงานกับมันไปอีกหลายสิบปี แต่การทำคนเดียวมันเหงา และถึง community จะโตขึ้นและสนุกขึ้น ก็ยังไม่เหมือนกับการมีทีม full-time
ปัญหาที่กำลังพยายามแก้ตอนนี้คือ จะทำให้โปรเจกต์นี้ ยั่งยืนทางการเงิน ในระยะยาวได้อย่างไร ต้องสามารถจ่ายเงินเดือนให้ทีมที่ทำงานด้วยกันได้ ไม่ใช่แค่ตัวผมคนเดียว
มีตัวอย่างมากมายแล้วที่โปรเจกต์ open source อย่าง WordPress หรือ GitLab สร้างโมเดลธุรกิจที่ยั่งยืนด้วย SaaS hosting และนี่ให้ความรู้สึกเหมือนเป็นเส้นทางที่ค่อนข้างปูไว้ดีแล้ว
อีกอย่าง ผมอยากให้คนใช้งานซอฟต์แวร์ของผมได้จริง ตอนนี้ถ้าคนทั่วไปจะใช้ Datasette ต้องติดตั้งด้วย
pipหรือbrewหรือใช้แอป macOS Electron https://datasette.io/desktop แต่ผมอยากให้ newsroom ใช้เพื่อทำงานร่วมกันกับข้อมูลได้ newsroom ส่วนใหญ่ไม่คุ้นกับการตั้งค่าเซิร์ฟเวอร์ Linuxเวอร์ชัน SaaS แบบโฮสต์จะช่วยให้ผู้ใช้ที่ผมให้ความสำคัญได้รับคุณค่าจริง ๆ และยังเป็นเส้นทางที่เป็นรูปธรรมไปสู่ความยั่งยืนทางการเงินของทั้งโปรเจกต์ด้วย
แน่นอนว่าผมก็อยากทำเงินจากสิ่งนี้ให้ได้มาก ๆ เหมือนกัน
ตอนนี้ UX และการตั้งค่า ให้ความรู้สึกว่าเหมาะกับ data hacker ที่สนใจงานข่าวมากกว่า และยังดูไม่ค่อยเป็นเครื่องมือมาตรฐานสำหรับ data reporting หรือ data journalism
ถ้าผู้ใช้ที่ตั้งใจไว้คือผู้สื่อข่าวที่อาจไม่มีทักษะด้าน data hacking ก็ควรลดกำแพงในการเริ่มต้นลงอีก
Datasette ไม่ใช่เครื่องมือ BI และไม่ใช่เครื่องมือ OSINT ตอนนี้มันอยู่ใน niche ที่แคบมากระหว่างคนรักข้อมูลกับผู้สื่อข่าวสายสืบสวน ทำให้ศักยภาพถูกจำกัดอย่างมาก
Simon ควรพิจารณาเรื่องการทำเงิน โดยเฉพาะการจ้างคนมาช่วยทำให้ Datasette Cloud เข้าถึงง่ายขึ้น การทำแอป GUI ถือเป็นก้าวหนึ่งในทิศทางที่ถูกต้อง
ไม่ได้ตั้งใจจะขัดบรรยากาศนะ แต่ดูวิดีโอแนะนำ Datasette จบทั้งหมดแล้วก็ยังรู้สึกเหมือนว่าผมพลาดอะไรไป
นี่มันโดยพื้นฐานแล้วคือ SQL GUI ไม่ใช่เหรอ? ดูแทบเหมือนแผงจัดการ SQL อื่น ๆ และเหมือนแค่ไม่มีฟังก์ชันเขียนข้อมูล
อยากรู้ว่าจุดต่างคืออะไร หรืออยู่ที่ความสามารถในการขยาย
มี business process สำคัญจำนวนนับไม่ถ้วนที่ถูกเอา Excel กับ Access มาผูกกันแบบฝืน ๆ และ Datasette อาจเป็นตัวเลือกที่ดีกว่ามากสำหรับงานแบบนั้น เป็นเครื่องมือที่ทั้งนักพัฒนาและคนฝั่งธุรกิจใช้งานได้
ปัญหาที่ Datasette แก้ได้ดีที่สุดคือการ เผยแพร่ข้อมูลที่มีโครงสร้างขึ้นออนไลน์
เช่น ถ้าต้องการแชร์รายชื่อโรงไฟฟ้าทั่วโลก หรือประวัติทั้งหมดของสภาคองเกรสสหรัฐฯ ออนไลน์ ก็อาจอัปโหลด CSV ขึ้นเว็บไซต์/GitHub/S3, ทำแอปคัสตอมด้วย Django/Rails หรือใช้ Google Sheet ก็ได้ วิธีที่ Guardian เคยแก้ด้วย Google Sheet อยู่ที่ https://simonwillison.net/2018/Aug/19/instantly-publish-data...
เดิมที Datasette ถูกสร้างมาเพื่อแก้ปัญหานี้ และผมเห็นว่า SQLite เหมาะกับงานนี้อย่างสมบูรณ์แบบ ทั้งเร็วและทนทาน และถ้าเผยแพร่ข้อมูลแบบอ่านอย่างเดียว ก็สามารถ deploy ไปที่ไหนก็ได้ที่โฮสต์เว็บแอปแบบไดนามิกได้ โดยไม่ต้องกังวลเรื่อง backup หรือ replication
ตัวอย่างโรงไฟฟ้าทั่วโลกอยู่ที่ https://global-power-plants.datasettes.com/global-power-plan... และข้อมูลสมาชิกสภาคองเกรสสหรัฐฯ อยู่ที่ https://congress-legislators.datasettes.com/legislators อันหลังยังใช้ใน tutorial ของ Datasette ด้วย: https://datasette.io/tutorials/explore
ถ้าคุ้นกับ command line แล้ว คงหาวิธีที่เร็วกว่าใช้
sqlite-utilsใส่ CSV ลง SQLite แล้วจัดระเบียบ จากนั้นเผยแพร่ด้วยdatasette publish vercelและปลั๊กอินdatasette-cluster-mapได้ยากนี่เป็นตัวอย่างที่ใช้ปลั๊กอิน
datasette-publish-vercelแต่ Datasette ยังเผยแพร่ไปยัง Fly, Google Cloud Run, Heroku ฯลฯ ได้ด้วยปลั๊กอินเพิ่มเติม: https://docs.datasette.io/en/stable/publish.htmlส่วนการจัดระเบียบข้อมูลด้วย
sqlite-utilsมีรายละเอียดเพิ่มเติมที่ https://datasette.io/tutorials/clean-dataตลอด 5 ปีที่ผ่านมา Datasette ขยายจากการเป็นเครื่องมือเผยแพร่ ไปเป็นเครื่องมือที่ผมใช้ทุกครั้งที่อยากเปิดดูและสำรวจข้อมูล จากมุมมองของ data journalism นี่คือการ “ค้นหาเรื่องเล่าจากข้อมูล”
ในการใช้งานเชิงพาณิชย์ก็มีสัญชาตญาณแรงมากว่า ถ้าเราช่วยนักข่าวหาเรื่องเล่าจากข้อมูลได้ ก็ย่อมช่วยคนอื่น ๆ ทุกคนหาเรื่องเล่าจากข้อมูลของตัวเองได้เช่นกัน
แกนสำคัญอีกอย่างคือ ปลั๊กอิน เช่นเดียวกับที่ WordPress เป็น CMS ที่ดี และในขณะเดียวกันก็มีปลั๊กอินมากกว่า 10,000 ตัวจนจัดการปัญหาการเผยแพร่คอนเทนต์ได้แทบทุกแบบ และครองสัดส่วนสองหลักของเว็บทั้งหมด วิสัยทัศน์ที่ทะเยอทะยานที่สุดของ Datasette ก็คล้ายกัน
ผมอยากสร้างเครื่องมือโอเพนซอร์สสำหรับ exploratory data analysis (EDA) และการเผยแพร่ และอยากให้ปลั๊กอินหลายพันตัวช่วยแก้ปัญหาการสำรวจ วิเคราะห์ แสดงภาพ และเผยแพร่ข้อมูลได้
ตอนนี้มีปลั๊กอิน 127 ตัว ยังต้องไปอีกไกล แต่ก็เป็นจุดเริ่มต้นที่ดี: https://datasette.io/plugins
ถ้าสรุปเป็นประโยคเดียวก็อาจพูดได้ว่า “Datasette คือวิธีที่เร็วที่สุดในการเผยแพร่ข้อมูลขึ้นออนไลน์ในรูปแบบฐานข้อมูลที่โต้ตอบได้และค้นหาได้” หรือ “WordPress สำหรับข้อมูล: แพลตฟอร์มโอเพนซอร์สที่ขยายได้สำหรับการสำรวจ วิเคราะห์ แสดงภาพ และเผยแพร่ข้อมูล”
Simon ดูดีมากจริง ๆ และหวังว่าจะไปได้สวย
หลายปีที่ผ่านมาได้ลองทำอะไรเจ๋ง ๆ ด้วย Datasette มาเยอะ และขอแนะนำอย่างยิ่ง datasette.cloud ก็คิดว่าจะลองใช้แน่นอน
Datasette ยอดเยี่ยมมาก
ที่งานก่อน ผมเคยทำวิธี deploy Datasette แบบฝืน ๆ ลง Azure cloud ภายในบริษัท เพื่อแชร์ผลลัพธ์ของ SQL query ที่ซับซ้อนได้อย่างรวดเร็ว พอเห็น Simon ออก
.cloudเองก็รู้สึกดีใจหลังจากได้รู้จัก Simon จากพอดแคสต์ Latent Space ผมก็ตามอ่านบล็อกของเขาและดูวิดีโอ YouTube หลายรายการมาหลายสัปดาห์แล้ว
ในฐานะอดีตนักข่าว ผมอยากลองเรียนรู้ data journalism และถ้าสิ่งนี้เปิดให้ใช้แล้วก็อาจลองดู
Simon มาออกรายการพอดแคสต์ของเราสามครั้ง: https://latent.space/p/llama2, https://latent.space/p/code-interpreter, https://latent.space/p/no-moat
ดีมากที่เขาแค่ต่อสายเข้ามาจากบ้านหรือสวนสาธารณะได้เลย โดยไม่ต้องนัดตารางสตูดิโอ
Simon เพิ่งลง tutorial ความยาว 2 ชั่วโมง: https://www.youtube.com/watch?v=5TdIxxBPUSI
เห็นแล้วน่าสนใจที่ data journalism พัฒนามาถึงรูปแบบการอัปโหลด CSV ขึ้นคลาวด์แล้ว
สมัยก่อนในงานประชุม I.R.E. ประเด็นที่ร้อนแรงที่สุดคือการเรียนรู้วิธีดึงและถอดรหัสข้อมูลจาก เทป 9 แทร็ก
ในยุคแรก ๆ ของ FOIA รัฐบาลมักจะเทข้อมูลมหาศาลลงในรีลข้อมูล 9 แทร็กขนาดใหญ่ แล้วอ้างว่า “ได้ปฏิบัติตามคำขอแล้ว” เพื่อขัดขวางการรายงานข่าว
แทบไม่มี newsroom ไหนที่มีอุปกรณ์หรือความสามารถทางเทคนิคแบบนั้น จึงต้องหาทางแก้เองหรือหาองค์กร/บริษัทที่ช่วยได้
I.R.E.: https://www.ire.org/
data journalism ไม่ใช่เรื่องใหม่
Simon เป็นช่างเทคนิคที่ยอดเยี่ยม
ผมได้เรียนรู้ค่อนข้างมากจากวิดีโอและบทความของเขา และหวังว่างานนี้จะไปได้ดี
นึกว่าหมายถึง C2N Datasette tape drive ของ C64 ซะอีก เลยแอบผิดหวังที่ไม่ใช่
https://en.m.wikipedia.org/wiki/Commodore_Datasette
น่าจะตอนอายุประมาณ 7 ขวบ และจริง ๆ ก็ไม่ได้ทำอะไรได้มากนัก แต่ชื่อนี้ชัดเจนว่าเป็นการคารวะถึงสิ่งนั้น
1: https://youtu.be/1hc52_PWeU8
ยังมี 1531 อยู่ในห้องใต้หลังคา วางอยู่ข้าง ๆ C16