????C???????????
????????????????????????????cache???????????????????д????????????????????????????棬?????????????Linux????????free???????? free/used/buffers/cached???????????buffers??cached?????40%????????????????????????????SCSI??ú???????Intel SSD?????????????????д?????????
??????????????????????????????????????Linux??Ext3/4????????????????????????????????????????????????????????/etc/fstab??????????????????noatime????????????????У????????????dealloc?????????????????????д?????????????????飬????????д?????????????????????????data=journal??data=ordered??data=writeback?????????data=ordered??????????????????
???????????????Щ?????ext4???????????????????????
??????????????Linux?μ??I/O??????——iotop???????????????????????д??????????
?????????????Щ????NFS??XFS??????????????google?????Щ??????????????????????????????????????????????——??Linux?????????????????????
????4.5????????
???????????????????????????????????????????Щ?ɡ???????????Щ?????????????????????????????????????????????????????????????????????????????????Щ?????????????????????????????
????A??????????????
???????????????治?????????м????????????????????????
??????????????????????????????????????????£???????????????????????????????????????????????д???????????????????д????????????????????????????????????????????????????????????????????????Ч??????????NoSQL??????????????????????????????????????????????????
??????????洢????????????????????????????????洢??????????????????????洢????????????????????????????????Oracle????????????????Σ???????????????????????????I/O????????磺MySQL?????show engines;???????????洢??????????????洢?????в?????????????????????????????????в?????????
????????????????????????????????????????????????????????????????????????????????????????????????????????????????
????B??SQL??????
????????SQL???????????????????ù???????磺MySQL SQL Query Analyzer??Oracle SQL Performance Analyzer?????????SQL Query Analyzer????????????????е?RMDB??????????????????????????????е?SQL?????????? ?????????explain??????SQL?????Execution Plan???????????
????????????????????????????????????????棬????????????????????????????Щ???????SQL??????????????檔
?????????????????????????SQL??????????????????????SQL??
???????????????磺select * from user where lastname = “xxxx”????????SQL?????????????????????????O(n)???????????????????磺100???????????50ms???????????????5???????????????????????????????????????????????????????????????????????????????????????lastname??????????????????key-value????????????key??where???????Σ?value???????к????????????????????????????O(log(n)) ——??B-Tree??????????磺100???????????50ms???????????????100ms????
????????????????????Σ??ò??????????????????????????????????ж????????????????Щ???????????????????????????????????????????Where????Order by????У??????Where??Order by????е???κò?????м?????????????????NOT????????????????????
??????????????????????????????????????????????????????EXISTS??IN??JOIN?????????join??????ο????SQL??Join?????????????????????????????SQL??????????????JOIN??IN/EXISTS????????Щ????????????????????????????EXISTS???????????IN??IN???????????JOIN???????????????????????????schema??SQL????????????????????????????????????????????ù?????????????????SQL????????????ü???????SQL????????????????????N????SQL???????????????????????????????Exists?????????????In??In????????Join?????????????????С??????????У?Exists?????In????С????????????????????????????????????ɡ????????????SQL Server?????′??????????IN vs JOIN vs EXISTS??
????JOIN?????????????Join?????????????????Join??????????????????join??????????????????????????????????????Join?????????????????????????鰱????Hash???Join????MySQL?????????
??????1?????????????????????????????????????????????????????????????????????????B-Tree??????O(log(n))????????????????????????????O(log(n)) * O(log(m))???????
??????2??Hash???Join????????????????O(log(n))?????????????????hash????????
??????3??????鰱???????????????????????????????????????????????????????????
??????????仰??????????????????????????SQL???????????????????????
?????????????????????MySQL???Limit??????Oracle???rownum??SQL Server???Top?????????????????????????????????????????????????????????????????top n??????????????????order by???????????????????order by????ν??????????????????????order by???????????select???????????????????????????????????????????????????????????????????Mysql?????OFFSET??SQL Server?????FETCH NEXT??????Fetch??????????????????????????????????????????order by??ε?????????????????????where???????????>=???????select???????????seek????????fetch??seek???????fetch?????
????????????????????????????????????????????з???????Σ????????????????????????????磺???????????
??????????????????Like???????????????????????????????????????????Sphinx??
??????????
??????1?????select *??????????????????Σ?????ж??????????????????????????????????????
??????2???????Having???????????????е??????????ò?????
??????3????????????UNION ALL ???UNION??
??????4??????????insert??delete?????????update???update?????????????????????????update???????????????????????
??????д??????????????????