โลโก้ Neo4j
ฐานข้อมูลGPLv3 (Community Edition)

Neo4j คืออะไร และวิธีติดตั้งบน Cloud Server

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

หมวดหมู่
ฐานข้อมูล
ติดตั้งบนเซิร์ฟเวอร์เองได้
ได้
สเปกเริ่มต้นที่แนะนำ
2 vCPU · RAM 4 GB
ไลเซนส์
GPLv3 (Community Edition)
เว็บทางการ
เปิดเว็บไซต์
สร้าง Cloud Server เดี๋ยวนี้
  • ISO/IEC 27001
  • ISO 22301
  • ISO 20000-1
  • CSA-STAR

Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย

Neo4j คืออะไร

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

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

Neo4j ใช้ภาษาคิวรีชื่อ Cypher ที่เขียนรูปแบบความสัมพันธ์ออกมาได้ตรงไปตรงมา ทีมที่คุ้นกับ SQL ใช้เวลาปรับตัวไม่นาน แต่การออกแบบโครงสร้างกราฟให้ดีต้องอาศัยความเข้าใจโจทย์พอสมควร

แผนผังการวางระบบ Neo4j บน Cloud Server หนึ่งเครื่องที่ Data Center ในประเทศไทย ผู้ใช้เข้าถึงผ่านไฟร์วอลล์ที่เปิดเฉพาะพอร์ต 7687, 7474 ตัว Neo4j และข้อมูลอยู่บนเครื่องเดียวกัน เริ่มต้นที่ 2 vCPU แรม 4 GB และมีสำเนาสำรองเขียนออกไปเก็บอีกไซต์หนึ่ง
Neo4j ทำงานบน Cloud Server เครื่องเดียวได้ครบ เปิดเฉพาะพอร์ตที่จำเป็น ข้อมูลและสำเนาสำรองอยู่ใน Data Center ในประเทศไทย

ความสามารถเด่นของ Neo4j

เก็บความสัมพันธ์โดยตรง

ไล่ความเชื่อมโยงหลายชั้นได้เร็วโดยไม่ต้อง Join ซ้อนกันหลายชั้น

ภาษา Cypher ที่อ่านง่าย

เขียนรูปแบบความสัมพันธ์ที่ต้องการค้นหาได้ตรงตามที่คิด

หน้าจอสำรวจข้อมูลแบบกราฟ

เห็นความเชื่อมโยงเป็นภาพ ช่วยให้ทีมวิเคราะห์เข้าใจข้อมูลได้เร็ว

ไลบรารีอัลกอริทึมกราฟ

มีอัลกอริทึมสำเร็จรูปสำหรับหาเส้นทางสั้นที่สุด กลุ่มก้อน และความสำคัญของโหนด

รองรับ ACID

รับประกันความถูกต้องของข้อมูลแม้มีการเขียนพร้อมกัน

ใช้ Neo4j ทำอะไรได้บ้าง

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

สเปก Cloud Server ที่แนะนำ

แผนภาพเทียบสเปก Cloud Server สำหรับ Neo4j 3 ระดับ เริ่มจาก 2 vCPU แรม 4 GB ดิสก์ NVMe 40 GB ไปจนถึง 8 vCPU ขึ้นไป แรม 32 GB ขึ้นไป ดิสก์ NVMe 500 GB ขึ้นไป โดยเทียบขนาดแยกตามแต่ละคอลัมน์
เริ่มจากระดับที่ตรงกับการใช้งานตอนนี้ แล้วเพิ่ม CPU และ RAM ทีหลังได้บนเครื่องเดิม
ระดับการใช้งานvCPURAMDisk
เริ่มต้นทดลองใช้และกราฟขนาดเล็ก2 vCPU4 GBNVMe 40 GB
แนะนำกราฟงานจริง ยิ่ง RAM มากยิ่งเร็วเพราะเก็บกราฟไว้ในหน่วยความจำ4 vCPU16 GBNVMe 200 GB
กราฟใหญ่ข้อมูลหลายสิบล้านโหนดและความสัมพันธ์จำนวนมาก8 vCPU ขึ้นไป32 GB ขึ้นไปNVMe 500 GB ขึ้นไป

ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ

วิธีติดตั้ง Neo4j บน Cloud Server ของ THAI DATA CLOUD

ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server

สิ่งที่ต้องเตรียม

  • Java Runtime ตามที่ Neo4j รุ่นนั้นกำหนด
  • Ubuntu Server 24.04 LTS หรือ Rocky Linux 9
  • RAM มากพอให้กราฟส่วนที่ใช้บ่อยอยู่ในหน่วยความจำ

ทดสอบบน Ubuntu Server 24.04 LTS

  1. 1

    เพิ่มที่เก็บแพ็กเกจและติดตั้ง

    curl -fsSL https://debian.neo4j.com/neotechnology.gpg.key | \
      sudo gpg --dearmor -o /usr/share/keyrings/neo4j.gpg
    echo "deb [signed-by=/usr/share/keyrings/neo4j.gpg] https://debian.neo4j.com stable latest" | \
      sudo tee /etc/apt/sources.list.d/neo4j.list
    sudo apt update && sudo apt -y install neo4j
  2. 2

    ตั้งค่าหน่วยความจำใน /etc/neo4j/neo4j.conf

    แบ่งหน่วยความจำให้ส่วนเก็บกราฟและส่วนประมวลผลคิวรีอย่างเหมาะสมตาม RAM ที่มี

    server.memory.heap.initial_size=4g
    server.memory.heap.max_size=4g
    server.memory.pagecache.size=8g
    server.default_listen_address=10.10.0.30
  3. 3

    เปิดบริการและตั้งรหัสผ่านครั้งแรก

    sudo systemctl enable --now neo4j
    cypher-shell -u neo4j -p neo4j
  4. 4

    สร้างข้อมูลตัวอย่างและทดลองคิวรี

    CREATE (a:Person {name:'สมชาย'})-[:WORKS_WITH]->(b:Person {name:'สมหญิง'});
    MATCH (p:Person)-[:WORKS_WITH*1..3]-(other) RETURN p.name, other.name;
  5. 5

    จำกัดการเข้าถึงและสำรองข้อมูล

    เปิดพอร์ตเฉพาะวงภายใน และตั้งงานสำรองฐานข้อมูลตามรอบ

    sudo ufw allow from 10.10.0.0/24 to any port 7687 proto tcp
    sudo neo4j-admin database dump neo4j --to-path=/var/backups/neo4j

ประสิทธิภาพของฐานข้อมูลกราฟขึ้นกับ RAM มากที่สุด ถ้ากราฟส่วนที่ใช้บ่อยใหญ่กว่าหน่วยความจำที่จัดไว้ คิวรีจะช้าลงทันที

พอร์ตที่ต้องเปิดบน Firewall

พอร์ตโปรโตคอลใช้ทำอะไร
7687TCPโปรโตคอล Bolt สำหรับแอป (เปิดเฉพาะวงภายใน)
7474TCPหน้าเว็บสำรวจข้อมูล (ควรจำกัดไอพี)

สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ

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

ทำไมควรรัน Neo4j บน Cloud Server ของ THAI DATA CLOUD

Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง

เพิ่ม RAM ได้ทันทีเมื่อกราฟโตขึ้น ซึ่งเป็นตัวแปรสำคัญที่สุดของฐานข้อมูลชนิดนี้

ต่อกับแอปที่รันบน Cloud Server เครื่องอื่นในวง Private Network ในไทยได้อย่างปลอดภัย

ข้อมูลความสัมพันธ์ของลูกค้าอยู่ในประเทศ สอดคล้องกับ PDPA

คำถามที่พบบ่อยเกี่ยวกับ Neo4j

เมื่อไรควรใช้ฐานข้อมูลกราฟแทนตาราง

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

ใช้ร่วมกับฐานข้อมูลเดิมได้ไหม

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

รุ่นชุมชนใช้งานจริงได้ไหม

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

ให้เราติดตั้ง Neo4j ให้ฟรี บน Cloud Server ในไทย

แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด