Database

MemSQL พัฒนาโดยอดีตนักพัฒนาของเฟซบุ๊กสองคน Eric Frenkiel และ Nikita Shamgunov มีหลักการคล้ายกับ HipHop for PHP ของเฟซบุ๊ก โดยมีการแปลงคำสั่ง SQL ที่เข้ามาไปเป็น C++ และคอมไพล์เป็น native code ทำให้ไม่จำเป็นต้องใช้ตัวแปลภาษา SQL ที่เป็น interpreter ซึ่งทำงานได้ช้ากว่า เมื่อเจอคำสั่งรูปแบบเดิมก็จะใช้โค้ดเดิมที่คอมไพล์ไว้แล้ว และมีการทำงานกับข้อมูลบนเมมโมรี่ซึ่งเร็วกว่าการอ่านเขียนจากดิสก์

มีวีดีโอโชว์ประสิทธิภาพเทียบกับ MySQL โดย MemSQL สามารถทำงานได้ถึงกว่า 80,000 คำสั่งต่อวินาที ส่วน MySQL ทำได้ประมาณ 2-3 พันคำสั่งต่อวินาที

ที่มา: I Programmer

MemSQL Product Overview from MemSQL on Vimeo.

Hiring! บริษัทที่น่าสนใจ

Carmen Software company cover
Carmen Software
Hotel Financial Solutions
Next Innovation (Thailand) Co., Ltd. company cover
Next Innovation (Thailand) Co., Ltd.
We are web design with consulting & engineering services driven the future stronger and flexibility.
KKP Dime company cover
KKP Dime
KKP Dime บริษัทในเครือเกียรตินาคินภัทร
Kiatnakin Phatra Financial Group company cover
Kiatnakin Phatra Financial Group
Financial Service
Fastwork Technologies company cover
Fastwork Technologies
Fastwork.co เว็บไซต์ที่รวบรวม ฟรีแลนซ์ มืออาชีพจากหลากหลายสายงานไว้ในที่เดียวกัน
Thoughtworks Thailand company cover
Thoughtworks Thailand
Thoughtworks เป็นบริษัทที่ปรึกษาด้านเทคโนโยลีระดับโลกที่คว้า Great Place to Work 3 ปีซ้อน
Iron Software company cover
Iron Software
Iron Software is an American company providing a suite of .NET libraries by engineer for engineers.
CLEVERSE company cover
CLEVERSE
Cleverse is a Venture Builder. Our team builds several tech companies.
Nipa Cloud company cover
Nipa Cloud
#1 OpenStack cloud provider in Thailand with our own data center and software platform.
Bangmod Enterprise company cover
Bangmod Enterprise
The leader in Cloud Server and Hosting in Thailand.
CIMB THAI Bank company cover
CIMB THAI Bank
MOVING FORWARD WITH YOU - CIMB is the leading ASEAN Bank
Bangkok Bank company cover
Bangkok Bank
Bangkok Bank is one of Southeast Asia's largest regional banks, a market leader in business banking
MuvMi (Urban Mobility Tech Co.,Ltd.) company cover
MuvMi (Urban Mobility Tech Co.,Ltd.)
Shape the future of urban mobility towards affordable, clean, and safe solutions
T.N. Digital Solution Co., Ltd. company cover
T.N. Digital Solution Co., Ltd.
TNDS has been involving in every first move of banking’s major digital transformation.
KBTG - KASIKORN Business-Technology Group company cover
KBTG - KASIKORN Business-Technology Group
KBTG - "The Technology Company for Digital Business Innovation"
Siam Commercial Bank Public Company Limited company cover
Siam Commercial Bank Public Company Limited
"Let's start a brighter career future together"
Icon Framework co.,Ltd. company cover
Icon Framework co.,Ltd.
Global Standard Platform for Real Estate แพลตฟอร์มสำหรับธุรกิจอสังหาริมทรัพย์ครบวงจร มาตรฐานระดับโลก
REFINITIV company cover
REFINITIV
The Financial and Risk business of Thomson Reuters is now Refinitiv
H LAB company cover
H LAB
Re-engineering healthcare systems through intelligent platforms and system design.
The Gang Technology Co., Ltd. company cover
The Gang Technology Co., Ltd.
We're a Digital Agency that helps our customers transform their business into digital with ease.
LTMH company cover
LTMH
LTMH มุ่งเน้นการพัฒนาผลิตภัณฑ์ที่สามารถช่วยพันธมิตรของเราให้บรรลุเป้าหมาย
Seven Peaks company cover
Seven Peaks
We Drive Digital Transformation
Wisesight (Thailand) Co., Ltd. company cover
Wisesight (Thailand) Co., Ltd.
The Best Choice For Handling Social Media · High Expertise in Social Data · Most Advanced and Secure
MOLOG Tech company cover
MOLOG Tech
We are Modern Logistic Platform, Specialize in WMS, OMS and TMS.
Data Wow Co.,Ltd company cover
Data Wow Co.,Ltd
We enable our clients to realize increased productivity by solving their most complex issues by Data
LINE Company Thailand company cover
LINE Company Thailand
LINE, the world's hottest mobile messaging platform, offers free text and voice messaging + Call
LINE MAN Wongnai company cover
LINE MAN Wongnai
Join our journey to becoming No.1 food platform in Thailand

ปกติอ่าน S-Q-L กันแหละครับ

มีเฉพาะ MS SQL Server ที่ MS บอกเองเลยว่าอ่านว่าซีควล ให้เหตุผลว่าเป็นชื่อเฉพาะจึงออกเสียงแบบนี้

ส่วน MemSQL เอาตามผู้ผลิตครับ เค้าออกเสียงยังไงก็คืออย่างนั้น

เคยเรียนวิชา Database System กับอาจารย์ท่านหนึ่งที่เคารพรัก

ท่านได้เล่าให้ฟังเกี่ยวกับประวัติของชื่อภาษาดังกล่าวไว้ว่า เราเรียกได้ทั้งสองแบบครับ เนื่องจากเมื่อก่อนคนที่คิด Relational Database ที่เราใช้กันอยู่ทุกวันนี้คือ อ.Codd ซึ่งท่านทำงานอยู่ที่ Research Lab ของ IBM และตอนเผยแพร่นั้น ท่านได้เรียกภาษาที่ใช้กับ RDB ว่า SEQUEL

จากนั้น Oracle ก็ได้พัฒนา RDB มาเหมือนกัน และเรียกภาษานั้นว่า SEQUEL เช่นเดียวกับ IBM ซึ่งก็สร้างความไม่พอใจให้กับ IBM พอควร IBM จึงเปลี่ยนชื่อภาษาที่ใช้จาก SEQUEL(ซีโควว) ไปเป็น SQL(เอสคิวแอล) ครับ

หากผิดพลาดประการใด หรือมีข้อมูลเสริมเติม รบกวนด้วยนะครับ ขอบคุณครับ

มันคือตัวย่อทั้ง 2 ชื่อแหละครับ

ผมอยากจะขอ Jam แก้ไขความคลาดเคลื่อนหน่อยนะครับ คือเรื่องที่ IBM เปลี่ยนชื่อ SEQUEL ไปเป็น SQL นั้น ไม่เกี่ยวกับ Oracle ครับ และอีกเรื่อง Codd อยู่กับ RS Inc ครับ ไม่ได้อยู่กับ IBM

เมื่อก่อนชื่อเต็มคือ Structured English Query Language จึงย่อเป็น SEQUEL โดย IBM

หลังจากนั้นไม่นาน IBM ก็มีปัญหาที่ชื่อย่อว่า SEQUEL ดันถูกจดทะเบียนเครื่องหมายการค้าไปก่อนแล้วโดยบริษัทผลิตเครื่องบินรบบริษัทหนึ่ง (ไปค้นกันเอาเองนะครับ ผมจำไม่ได้ละเอียด) ก็เลยเป็นอันได้ปรับชื่อใหม่เป็น Structured Query Language จึงย่อเป็น SQL

ในช่วงเวลาเดียวกันนั้นมี QUEL เกิดขึ้นอีกตัว ซึ่งผมจำรายละเอียดไม่ได้นักเพราะไม่ได้ลองเล่นจริงๆ จังๆ

หลังจากนั้นไม่นาน RS Inc (ปัจจุบันคือ Oracle) ก็ออก RDBMS ของตัวเองออกมา โดย Codd, Chamberlin และ Boyonce (มั๊ง - สะกดคลาดเคลื่อนไปบ้างก็อย่าถือสานะครับ)

ส่วนตัวผม ติดเรียกว่า S Q L มาแต่ไหนแต่ไรเพราะในหัวมีชื่อเต็มของมันอยู่ครับ ความรู้สึกผมมันคล้ายๆ กับที่เราคนไทยไม่เคยอ่านคำย่อ "ผจก" ว่า ผะ-จก เลยนั่นเอง

หรือต่อไป เราจะเรียก สตง (สำนักงานการตรวจเงินแผ่นดิน) ว่า สะ-ตง กันดี?

ขอแก้ไขนิดนึงนะครับ

จากประวัติของ Oracle Corporation ใน Wikipedia ย่อหน้าชื่อ History กล่าวไว้ว่า "Ellison took inspiration from the 1970 paper written by Edgar F. Codd on relational database management systems (RDBMS) " จะเห็นได้ว่า อ. Codd นั้นมิได้เป็นผู้มีส่วนร่วมใน Oracle แต่อย่างใด เพราะตา Ellison ไปได้รับแรงบันดาลใจ(แค่ชำเลืองมองแล้วเกิดแรงบันดาลใจเฉยๆ จิงจิ๊งงงง) แล้วเลยมาตั้งบริษัทเองคือ Oracle นี่แล

ส่วนคนที่เป็น Founder ของ Oracle นั้นคือ Larry Ellison, Bob Miner, Ed Oates ครับ อยู่ด้านขวาของลิงค์ใน Wikipedia เลยครับ

ส่วน อ.Codd อยู่ IBM นั้นก็จาก Wikipedia อีกเช่นกัน ในหัวข้อ Biography ที่กล่าวว่า "he(ในที่นี้คือ อ.Codd) moved to New York to work for IBM as a mathematical programmer." และ "Two years later he moved to San Jose, California, to work at IBM's San Jose Research Laboratory, where he continued to work until the 1980s. During the 1990s, his health deteriorated and he ceased work."

เรื่องสุดท้ายคือการเปลี่ยนชื่อ ผมคิดว่า Oracle น่าจะมีผลต่อการเปลี่ยนชื่อ เนื่องจากประโยคนี้ครับ " Even so, SEQUEL was so superior to pre-relational systems that it was copied, in 1979, based on pre-launch papers presented at conferences, by Larry Ellison, of Relational software Inc, in his Oracle Database, which actually reached market before SQL/DS — due to the then-already proprietary status of the original name, SEQUEL had been renamed SQL."

หากผิดพลาดประการใดโปรดชี้แนะครับ จะได้เป็นการแชร์ข้อมูลและปรับความเข้าใจ ความถูกต้องให้ตรงกันครับ :)

ยอมรับครับ สำหรับเรื่องสถานภาพของ Codd นั้น ความทรงจำผมจะ Error ได้มาก

แต่ที่จำได้แน่ๆ คือ RS Inc มาเริ่มทำ RDBMS หลัง SEQUEL ออกมาแล้วหลายปี (ราว 3-4 ปี) ซึ่ง... SEQUEL ได้ถูกเปลี่ยนชื่อเป็น SQL ไปแล้วครับ เพราะที่มีปัญหาไปทับเครื่องหมายการค้านั่น อันนั้นผมจำได้ชัดเจนเพราะ SEQUEL เป็น RDBMS Concept แรกของโลก การจำเป็นต้องเปลี่ยนชื่อนั้นเป็นเรื่องที่เด่นดังในวงการไม่ใช่น้อยครับ

ว่าแล้ว... เห็นยก Wikipedia มา เลยต้องไปหามาบ้าง

http://en.wikipedia.org/wiki/SQL

ก็เอาจากที่เดียวกับคุณเลยแล้วกัน ย่อหน้าแรกของ History ก็มีระบุสาเหตุที่เปลี่ยนชื่อแล้วครับ แล้วทำให้ผมได้รำลึกขึ้นมาได้ว่าคือ Hawker Siddeley นี่เองที่เป็นเจ้าของชื่อ SEQUEL อยู่แล้ว

ข้อความที่คุณยกมานั้น สำหรับผม เมื่อทำความเข้าใจกับความทรงจำแล้วคือ RS Inc (Oracle ปัจจุบัน) ยึดตาม SEQUEL Concept และใช้ตามชื่อนั้นจน 1979 (จากความทรงจำผม ก็เพราะว่า RDBMS ของ RS Inc เริ่ม Launch ปีนั้นนั่นแหละครับ) ซึ่งเมื่อออกมาแล้วก็จะเป็นต้องเปลี่ยนชื่อไปตามสถานะชื่อปัจจุบัน (ที่ถูกเปลี่ยนไปแล้วเพราะมีเรื่องกับ Hawker)

ที่ผมตีความได้แบบนั้นเพราะอาศัยความทรงจำด้วยครับ RS Inc จะเริ่มเอา Concept ไปทำตั้งแต่เมื่อไหร่นั้น ต้องก่อน 1979 แน่นอน ซึ่ง First concept paper ของ Codd ย่อมใช้ชื่อ SEQUEL แน่นอน (ซึ่งออกมาตั้งแต่ปี 1974) แต่กว่า RS Inc จะปล่อย RDBMS ตัวจริงออกมาได้ ก็พบว่า Current name (ณ 1979) เป็น SQL ไปแล้ว จึงต้องเปลี่ยนตาม

ดังนั้น RS Inc จึงไม่มีผลใดๆ ต่อการเปลี่ยนชื่อแม้แต่น้อย (บริษัทเพิ่งตั้งด้วยซ้ำ) แต่เป็นเพราะ Hawker ครับ เลยต้องเปลี่ยน

SQL มันเป็นภาษาอังกฤษ จะเทียบกับ ผกจ หรือ สตง คงไม่ดี ต้องเทียบกับคำอังกฤษสิครับ

IBM อ่านว่า ไอบีเอ็ม UN อ่านว่า ยูเอ็น แต่ EUFA ดันอ่านว่า ยูฟ่า AIDS ดันอ่านว่า เอดส์

สรุป อ่านยังไงก็อ่านไปเถ๊อะ

ครับ ใช่แล้ว... จะอ่านยังไงก็อ่านกันไปเถอะ

ที่มา Reply อันนี้เพราะพยายามจะอธิบายให้ชัดเจนว่า...

ที่ผมได้กล่าวไปคือ "ส่วนตัวผม" น่ะครับ ว่าทำไม "ความรู้สึกส่วนตัว" จึงอ่าน S-Q-L ผมมิได้หมายความถึงทุกคนหรือใครๆ ควร จะอ่านอย่างไรน่ะครับ...

ความรู้สึกส่วนตัว ที่ทำให้ตัวผมออกเสียงว่า S-Q-L เพราะส่วนตัวรู้สึกทะแม่งเหมือนพยายามออกเสียงคำย่อในภาษาไทย การยกคำว่า สตง มาเพื่อให้เข้าใจความรู้สึกทะแม่งส่วนตัวของผมได้ง่าย โดยเพียงคุณนึกในใจว่า สะ-ตง แทนที่จะเป็น สอ-ตอ-งอ ครับ

ขออภัย ถ้า Reply ที่แล้วผมสื่อไม่ชัด ว่าคือการอธิบายเหตุผลส่วนตัวครับ

ไม่ลืมครับ ถ้าผม Jam ไว้แล้วมันขึ้นใน My recent posts แบบนี้หาง่ายและมันเป็น Reminder ได้ดี (Credit เจ้าของ Blog) แต่อันยาวๆ ต้องไว้ต่อตอนมีเวลาว่างพิมพ์ยาวๆ

ผมค้างเรื่องยาวไว้ 2 เรื่องครับ

  • ข้อจำกัดในการ Optimize ผล Native code ของภาษาสูง (กะว่าจะเผยแพร่อีกสัก 2 กรณี)
  • อธิบายเหตุผลของการครอบครองสินค้าบางประเภท

ถ้าสั้นๆ ก็พอจะก๊อกแก๊กออกมาได้ก่อนน่ะครับ

จริงๆ แล้วส่วนที่ช้าของ MySQL ก็คือ Query parser อยู่แล้วไม่ใช่เหรอครับ? อย่างถ้า query ผ่าน HandlerSocket plugin ที่ไม่ต้องทำ query parser เค้าก็ว่าก็เร็วขึ้นเยอะเหมือนกันนะ

ในส่วนของการ storage ก็มีผลมาก ๆ ครับ สามารถทดสอบได้โดยใช้คำสั่งที่ได้จำนวน record มาก ๆ มันก็ยังช้ากว่าพวก NoSQL มากอยู่ดี

ขอบคุณครับ ... เพิ่งรู้ว่า No SQL กับ NoSQL มันคนละตัว

แบบนี้ shared host รู้ไปก็เท่านั้นครับ ลงเองไม่ได้ คงต้องลองกับ server บริษัท ก๊าก