ข้อแตกต่างระหว่าง SkyDrive และ SkyDrive Pro

ข้อมูลล่าสุด (27/8/2013) – SkyDrive Pro increases storage and ease of sharing

SkyDrive เป็นบริการจัดเก็บไฟล์สำหรับใช้งานส่วนตัวผ่านระบบ Cloud Storage ของ Microsoft เพียงอย่างเดียว โดยสามารถเชื่อมต่อและใช้งานร่วมกับ Office 365 Home Premium และบริการ Office Web Apps ได้ ซึ่งถ้าใช้งานร่วมกับ Office 365 Home Premium จะให้พื้นที่เพิ่มเป็น 20GB เพื่อใช้ในการจัดเก็บไฟล์ ซึ่งจะมากกว่าพื้นที่พื้นฐานที่ให้เพียง 7GB เท่านั้น

โดยใน SkyDrive นั้นจะสามารถซื้อพื้นที่สำหรับจัดเก็บไฟล์เพิ่มเติมได้มากถึง 100GB โดยไม่มีการจำกัดประเภทของไฟล์ (file types) ในการจัดเก็บบน SkyDrive

ข้อจำกัดของ SkyDrive คือ

  • สามารถอัพโหลดไฟล์ได้สูงสุดที่ 2GB ต่อไฟล์
  • สามารถซื้อพื้นที่เพิ่มได้ไม่เกิน 100GB (ไม่รวมพื้นที่อีก 7GB ที่ได้มาในตอนแรก)
  • ไม่มีระบบจัดการการเข้าถึงไฟล์แบบกลุ่ม หรือรองรับการใช้งานกลุ่มธุรกิจ

SkyDrive Pro เป็นบริการจัดเก็บไฟล์สำหรับองค์กรที่มีความสามารถในการแชร์ และประสานงานภายในองค์กร บนบริการ Office 365 สำหรับใช้งานในกลุ่มธุรกิจ โดยให้พื้นที่ 25 GB และสามารถซื้อเพิ่มได้เป็น 50 หรือ 100GB และยังสามารถซื้อเพิ่มเติมอีก เพียง 7GB และไม่สามารถซื้อเพิ่มเติมได้ โดย SkyDrive Pro นั้นเปลี่ยนชื่อมาจาก SharePoint Workspace (ชื่อโฟลเดอร์เก่าชื่อ SharePoint Libraries) ซึ่งใช้งานได้บน Office 365 Small Business, Office 365 Enterprise และ SharePoint แบบที่เชื่อมต่อกับระบบเครือข่ายภายในองค์กร (on-premises SharePoint services) โดยความสามารถเด่นคือสามารถกำหนดการแชร์ระหว่างกลุ่มภายในองค์กรได้ผ่าน Exchange Online และ SharePoint Online

ข้อจำกัดของ SkyDrive Pro คือ

  • ใน SkyDrive Pro library หรือ SharePoint library สามารถอัพโหลดและดาวน์โหลดไฟล์ได้สูงสุดที่ 2GB ต่อไฟล์
  • Sync ไฟล์และโฟลเดอร์ใน SkyDrive Pro library ได้ 20,000 รายการ (นับรวมทั้งไฟล์และโฟลเดอร์)
  • Sync ไฟล์และโฟลเดอร์ใน SharePoint library ได้ 5,000 รายการ (นับรวมทั้งไฟล์และโฟลเดอร์)
  • ให้พื้นที่ 25 GB และสามารถซื้อเพิ่มได้เป็น 50 หรือ 100GB โดยยังสามารถซื้อเพิ่มเติมจากนี้ได้อีกที่ 0.20USD/GB ต่อเดือนอีกด้วย เพียง 7GB และไม่สามารถซื้อเพิ่มเติมได้
  • ไฟล์ที่สามารถใช้งานบน SkyDrive Pro ต้องไม่ใช่ไฟล์ในตาราง “File types blocked by default” บน SharePoint 2013
    (ดูตารางนี้ได้ที่ Manage blocked file types in SharePoint 2013)

อ้างอิง

บันทึกสั้นๆ หลังใช้งาน Windows Azure Storage Table

ตอนนี้ใช้ Windows Azure Storage Table อยู่กับบางบางตัว ซึ่งหลังจากที่ใช้งานมา 3-4 วันที่ผ่านมา เอาสิ่งที่ได้มาแบ่งบันกันเล็กน้อย

  • มันเป็น NoSQL database เรื่อง schema โยนทิ้งไปเลย คิดใหม่ทำใหม่หมด คล้ายๆ Excel มากกว่าด้วยซ้ำ
  • มี Data type ไม่เยอะ ทำงานง่ายพอสมควร
  • รองรับข้อมูลที่ใส่ลงไปไม่เกิน 100 TB ต่อฐานข้อมูล
  • สื่อสารกันผ่าน HTTP / HTTPS มี SDK API ให้หลายๆ ภาษาทั้ง .NET Framework, Java, PHP, Node.js, Python ฯลฯ หรือจะติดต่อผ่าน CURL อะไรพวกนี้ก็ได้ แล้วแต่ความถึกแต่ละคน (แต่ผ่าน SDK มันจะง่ายกว่าเยอะมาก)
  • ใน 1 Table สามารถกำหนด entity (row/record ใน RDBMS) ให้มี properties (field/column ใน RDBMS) หลากหลายได้ ไม่จำเป็นต้องเป็น entity ที่มี properties เหมือนๆ กัน
  • entity แต่ละตัวที่ใส่ลงไปได้มีข้อมูลไม่มากเกินกว่า 1MB ต่อ entity
  • properties ตั้งได้ไม่เกิน 252 ตัวต่อ 1 entity
  • properties ที่จำเป็นต้องส่งเข้าไปหรือใช้งานมี 3 ตัวคือ partition key, row key และ timestamp ซึ่ง partition key, row key เราต้องกำหนดเอง ส่วน timestamp ไม่ส่งเข้าไปก็ได้ระบบจะใช้เวลาของระบบแทน
  • ค่า partition key และ row key จำเป็นอย่างมากในการ update/delete ต้องออกแบบดีๆ ค่า partition key เปรียบเสมือนกลุ่มข้อมูล (คล้าย Class) ซ้ำได้ ส่วน row key จำซ้่ำไม่ได้ในแต่ละ partition key เปรียบเสมือน primary key ใน RDBMS ต้องใส่ข้อมูลทั้งสองลงไปเสมอ
  • การส่งข้อมูลออกมาจากการ Query นั้นจะส่งมาไม่เกิน 1,000 entities เท่านั้น ถ้าต้องการมากกว่านั้นต้อง request อีกรอบด้วยการใช้ NextPartitionKey และ NextRowKey ร่วมด้วยในการ Query ครั้งต่อไปจึงจะได้ข้อมูลช่วงถัดมาอีก 1,000 entities
  • ไม่สามารถ Sorting หรือแบ่ง Pagination ได้ ถ้าอยากทำต้อง query มาทั้งหมดแล้ว Sorting ในระบบเอาเอง หรือใช้ร่วมกับ RDBMS ตัวอื่นๆ แทน แล้วเก็บเฉพาะ partition key และ row key เพื่ออ้างอิงพ่วงกับข้อมูลที่ต้องการ Sorting จะช่วยได้มาก
  • สามารถค้นหาจาก properties ที่ไม่ใช่ partition key, row key และ timestamp ได้ จะ full table query ก็ทำได้ จากที่ลอง 1 แสน entity ก็ทำงานได้ดี (ข้อมูลประมาณ 50MB) ค้นหาด้วย properties ที่ไม่ใช่ตัวหลักของระบบ และเป็น full table query ไม่เกิน execute time
  • การ import ข้อมูลทำได้หลายแบบ ที่สะดวกที่สุดคือ csv ที่ export จาก Excel หรือฐานข้อมูลตัวอื่นๆ แค่กำหนด first line ให้เป็นชื่อ properties ที่กำลังใส่ลงไปมันจะไป map ตัว properties ในตารางให้เอง แต่  Data type มันจะเป็น String
  • ระยะเวลาในการ execute time มากสุดที่ 5 วินาที
  • ระยะเวลาในการให้ client request ไม่เกิน 30 วินาที

อันนี้คือเท่าที่ลองๆ ใช้มา

Cloud Services ไม่ถูก ใช้ให้ถูกจุดประสงค์

หลายคนไม่รู้ได้ mind set มาจากไหนว่าใช้ Cloud Services มันถูกกว่าใช้ Shared Hosting คือมันไม่ได้ถูกกว่าหรอกนะ ถ้าใช้ในงาน scale เล็กๆ แถมแพงกว่าด้วย เช่นเอา blog ที่ใช้ wordpress ไปใส่ใน Azure แบบที่ผมใช้อยู่นี่ คิดๆ แล้วจ่ายแพงกว่าด้วยนะครับ ถ้าผมไปเช่า Shared Hosting ผมจ่ายปีละ 1,000 – 2,000 บาท (พื้นที่ไม่เกิน 1GB และ b/w เดือนละ 50-100GB) แต่ที่ใช้บน Azure จ่ายตกเดือนละ 400 บาท แพงกว่าเท่าตัวเลย

2013-03-24_153919

แต่ที่ยอมเพราะผมจ่ายเอามาศึกษา เอามาลองใช้ และจะได้ตอบคนอื่นๆ ได้ว่ามันดียังไง ใช้ยังไง ทำอะไรได้บ้าง มันคุ้มค่ากว่าตัวอื่นๆ ยังไง ในจุดประสงค์งานแบบไหนด้วย

ถ้าต้องการลองทำระบบแบบเสมือนจริง เช่นอยากทดสอบเรื่อง web app ที่รองรับโหลดเยอะๆ แต่ไม่แน่ใจการออกแบบที่กำลังทำ และ web app เราใช้ load balance ทำ HA มาทำงาน โดยมี database ทำงานด้านหลังหลายๆ ตัว แต่อยากออกแบบก่อนซื้อ h/w จริงๆ ก็ใช้ cloud service พวกนี้เป็นทางเลือกในทำ simulate ระบบก่อนซื้อ h/w ครับ จะได้ไม่พลาดในการซื้อ h/w มาใช้งานร่วมกับ web app ที่กำลังออกแบบ

2013-03-24_154040

เมื่อ Linux OS Virtual Machinces บน Windows Azure ไม่มี SWAP Partition แก้ไขยังไง?

โดยปรกติแล้ว ถ้าเราลง Linux โดยทั่วไปจะมีการตั้ง SWAP Partition ไว้เป็นปรกติอยู่แล้ว อย่างเช่นตัวอย่างที่ผมเอามาโพสก็คือ Ubuntu Server 12.04.2 LTS มีการติดตั้ง SWAP ไว้อยู่

การตรวจสอบทำได้ด้วยการใช้คำสั่ง shell ด้านล่าง ซึ่งจะได้รายการ SWAP ออกมาว่ามีอยู่หรือไม่ 

ford@ns1:~$ swapon –s

2013-03-02_190758

แต่ถ้าเป็นบน Cloud นั้น ตัว Image ของ Linux OS จะถูกปรับแต่งบางส่วนเพื่อไม่ให้สร้าง SWAP พวกนี้ ด้วยเหตุผลด้านพื้นที่ที่ต้องจองไว้และความไม่จำเป็นโดยทั่วไปของ Cloud อยู่แล้ว (ปรกติใช้ Cloud สำหรับ Compute ข้อมูลที่อาจจะไม่ได้ใช้หน่วยความจำเยอะ) เพราะไม่ใช่ทุกคนที่ลง OS ต้องได้ใช้ SWAP เสมอไป แต่ถ้าอยากลงก็มีทางให้อยู่

แน่นอนว่า Cloud ที่ผมใช้อยู่นั้น อยู่บน Windows Azure สำหรับใครที่ใช้ Amazon EC2 ก็คงต้องหาวิธี ซึ่งก็มีวิธีเช่นกัน (How to add swap to Amazon EC2 instance Ununtu 12.04 LTS?)

ตอนนี้ผมลองทำบน Virtual Machines ผมปัจจุบัน 1 ตัว ซึ่งเป็น Ubuntu Server 12.04.2 LTS โดยใช้คำสั่งข้างต้น ก็จะไม่เจอ SWAP แต่อย่างใด

2013-03-02_190129

อยากสร้างเรามีวิธี โดยจากคู่มือ Creating and Uploading a Virtual Hard Disk that Contains the Linux Operating System นั้นได้อ้างอิงตัว Windows Azure Linux Agent User Guide อีกทีครับ

สรุปง่ายๆ คือ เข้าไปแก้ไข Windows Azure Linux Agent Configuration ซึ่งอยู่ที่ /etc/waagent.conf (sudo ตัวเองเป็น root ก่อนแก้ไข)

เมื่อเปิดไฟล์ขึ้นมาจะตัวตั้งค่าอยู่พอสมควร ให้หาส่วนที่ขึ้นต้นด้วย ResourceDisk ซึ่งจะมีอยู่ทั้งหมด 5 ตัวครับ

ResourceDisk.Format=y
ResourceDisk.Filesystem=ext4
ResourceDisk.MountPoint=/mnt/resource
ResourceDisk.EnableSwap=n
ResourceDisk.SwapSizeMB=0

ผมจะปรับให้ใช้ SWAP ขนาด 2GB โดยปรับค่า 2 ตัวดังนี้

#เปิดการใช้ SWAP
ResourceDisk.EnableSwap=y

# 2GB หน่วยเป็น MB
ResourceDisk.SwapSizeMB=2048

เมื่อปรับแต่งตัวตั้งค่าทั้ง 2 ตัวแล้ว ก็ Save ตัวไฟล์แล้วออกจากตัว editor เสร็จแล้วสั่ง Deprovision ด้วยคำสั่งด้านล่าง

azureuser@fordantitrust:~$ waagent –force –deprovision
azureuser
@fordantitrust:~$ export HISTSIZE=0

เมื่อสั่งรันคำสั่งจบก็ exit ออกมา

แล้วไปที่ Windows Azure Portal สั่ง Restart ตัว Virtual Machines รอสัก 3-4 นาทีโดยประมาณ ระบบจะบูทกลับมาใหม่ แล้วพิมพ์คำสั่ง swapon –s อีกรอบ จะเจอไฟล์ SWAP ของระบบอยู่ที่ /mnt/resource/swapfile

2013-03-02_192724

เพียงเท่านี้ก็จบกระบวนการ การสร้าง SWAP บน Cloud แล้วครับ

ถ้าอยากใช้ Windows Azure Virtual Machines เค้าคิดราคากันยังไง…

จาก จ่ายเท่าที่ใช้งานกับ Cloud Virtual Machines ซึ่งเป็นแนวคิดเรื่อง deploy ตัวงานขึ้น Windows Azure Virtual Machines นั้น มีหลายคนอยากรู้ว่าราคามันเท่าไหร่เมื่อคิดราคาต่อเดือน ดูตามด้านล่างได้เลยครับ

ผมเสนอแผนและราคาไปคือ Windows Azure Virtual Machines (WAVM) และ GoDaddy.com Secure Sockets Layer (SSL) เพราะเป็นงานด้านเว็บธุรกิจ มีการสื่อสารข้อมูลสำคัญเยอะ เลยมี SSL ด้วย

Windows Azure Virtual Machines (WAVM)

  • Operating System: Linux Virtual Machines (Ubuntu Server 12.04 LTS)
  • Compute: 1 x Extra small VM (Shared 1GHz CPU x 1 core, 768MB RAM)
  • Storage (Geo Redundant): 100GB (IDC Southeast Asia in Singapore and IDC East Asia in Hong Kong/China)
  • Bandwidth: 45GB/mo

GoDaddy.com Secure Sockets Layer (SSL)

  • Standard SSL
  • 1 certificate protects www.domain.com AND domain.com
  • 24/7 live support
  • SSL Installation Tool
  • Site seal options

ราคาที่คิดไว้คือ (Pricing)

  • Compute: $9.36/mo ($0.013/hr)
  • Storage: $9.50/mo
  • Bandwidth: $4.80/mo
  • Standard SSL: $69.99/yr (ถ้ามีคูปองราคาก็ถูกลงไปอีก)

รวมทั้งหมด (Total)

  • WAVM: $23.66/mo (~750Baht/mo)
  • Standard SSL: $69.99/yr (~2,100Baht/yr)

หรือตกปีละประมาณ 11,100 บาท โดยประมาณ (แต่ถ้าเพิ่ม Compute ในบางช่วง หรือัตราแลกเปลี่ยนสูงขึ้น ราคาก็แตกต่างกันไปอีก)

อ้างอิงราคาจาก (Pricing Ref.)

จะเห็นว่าราคาอาจดูสูง แต่ดู Storage (Geo Redundant) ขนาด 100GB และ Bandwidth ขนาด 45GB ต่อเดือน ก็ถือว่าเยอะเมื่อเทียบกับ Hosting โดยทั่วไป ซึ่งถ้าใช้ Storage และ Bandwidth น้อยกว่านี้ราคาก็ถูกลงไปอีก ไม่ได้จ่ายเผื่อแบบจองไว้แบบ Hosting ที่เราๆ ใช้ๆ กันแต่อย่างใด (อย่างที่บอก ใช้เท่าไหร่ จ่ายเท่านั้น) แถมถ้าเป็นช่วงแรกๆ ทดสอบระบบ Bandwidth ใช้ไม่ถึง 5GB ก็ฟรีอีก ไม่ต้องจ่ายเงินแต่อย่างใด ก็ประหยัดไปอีกครับ ลองเอาไปคำนวณเล่นๆ กันดู เผื่อคันไม้คันมืออยากลอง ตอนนี้ Azure มี Trial Account ด้วยนะ ใช้ฟรี 3 เดือน (อยู่ในข้อกำหนดที่พอเอาไปทดลองใช้งานได้สบายๆ เลย)