RDBćØNoSQLć«ćæćDBčæē¾ä»£å² ćć¼ćæćć¼ć¹ć«ē “å£ēć¤ććć¼ć·ć§ć³ćÆäŗåŗ¦čµ·ćććļ¼
ćć¼ćæćć¼ć¹ć®ć¹ćæć³ćć¼ććØćŖć£ć¦ććććŖć¬ć¼ć·ć§ćć«ćć¼ćæćć¼ć¹ććć©ć®ćććŖčęÆććē»å “ććē¾åØć®å°ä½ć確ē«ććć®ććććć¦ć©ć®ćććŖčŖ²é”ć»éēć«ē“é¢ćć¦ććć®ććććć«NoSQLć®ć¢ććć¼ćć«ć¤ćć¦ććéäŗŗć«å¦ć¶ SQLå¾¹åŗęåęøććŖć©ć®čęøćććDBćØć³ćøćć¢ć®ćććÆććć解説ćć¾ćć
ēććććć«ć”ćÆćDBćØć³ćøćć¢ć®ćććÆļ¼@copinemickmackļ¼ćØććć¾ććę®ę®µćÆäø»ć«ććć¼ćæćć¼ć¹ć®ććć©ć¼ćć³ć¹čØčØććć„ć¼ćć³ć°ćŖć©ć®ä»äŗćč”ć£ć¦ćć¾ćć
ę¬ēØæćÆććć¼ćæćć¼ć¹ć«é¢ććäŗć¤ć®ćć¼ććę±ć£ćčØäŗć§ććäøć¤ē®ć®ćć¼ććÆććŖć¬ć¼ć·ć§ćć«ćć¼ćæćć¼ć¹ļ¼RDBćRelational Databaseļ¼ć®čŖēććęé·ć®ę“å²ćęÆćčæććē¾åØäø»ęµćØćŖć£ććć®ęč”ćć©ć®ćććŖčęÆććē»å “ćććŖććć¼ćæćć¼ć¹ć®ć¹ćæć³ćć¼ćć®å°ä½ć確ē«ććć®ććØććēē±ćęććć«ććććØć§ććåå„ć®č£½åć®ēŗå±å²ćØććććććRDBćØććē·ä½ćØćć¦ć®ęč”ć®ę“å²ćåćäøććććØć§ććć®åé”ćåęćć¦ćæćććØęćć¾ćć
äŗć¤ē®ć®ćć¼ććÆćę代ć®ē§»ćå¤ćććØćØćć«ēććę°ććŖčŖ²é”ć«åƾćć¦ćRDBćć©ć®ćććŖéēć«ēŖćå½ćć£ć¦ććććććć¦ćNoSQLć«ä»£č”Øćććę°ęč”ćć©ć®ćććŖć¢ććć¼ćć試ćæć¦ćććććØććē¾åØććå°ę„ć«ććć¦ć®å±ęćčćć¦ćæćććØć§ćć
- ćŖć¬ć¼ć·ć§ćć«ćć¼ćæćć¼ć¹ć®ę“å²
- ē “å£ēć¤ććć¼ć·ć§ć³ćÆē¹°ćčæćć
- NoSQLć®ēØ®é”ćØč§£ę±ŗē
- ć¾ćØć
RDBććć³NoSQLć®ę¦č¦ć«ć¤ćć¦ćÆę¬ēØæć®äøć§čŖ¬ęćććććåęē„čćÆē¹ć«åæ č¦ćØćć¾ććććRDBććć³NoSQLć®č£½åćććć¤ć使ēØććēµéØććććØćå ·ä½ēćŖć¤ć”ć¼ćøććć£ć¦čŖćććØćć§ććć§ćććć
ććć§ćÆć¾ćć第äøć®ćć¼ćććč¦ć¦ćććććØęćć¾ćć
ćŖć¬ć¼ć·ć§ćć«ćć¼ćæćć¼ć¹ć®ę“å²
ē¾åØććŖć¬ć¼ć·ć§ćć«ćć¼ćæćć¼ć¹ćććć³ćć®ęä½čØčŖć§ććSQLćÆćēØéćåććć»ć¼ćć¹ć¦ć®ć·ć¹ćć ć«ććć¦ä½ććć®å½¢ć§ä½æććć¦ćććØčØć£ć¦éčØć§ćÆććć¾ćććB to CćC to Cć®ćććŖWebćµć¼ćć¹ćä¼ę„ćå®å ¬åŗć®åŗå¹¹ē³»ć·ć¹ćć ćBI/DWHćØå¼ć°ććć¢ććŖćć£ć¹ćÆē³»ć®ć·ć¹ćć ćŖć©ćććććć·ć¹ćć ć§RDBćÆå©ēØććć¦ćć¾ćććć®ę±ēØę§ć®é«ććRDBć®å¤§ććŖē¹å¾“ć§ćē§ćć”ćØć³ćøćć¢ć«ćØć£ć¦ćÆćä»ć空ę°ćę°“ć®ććć«å½ććåć®ć¤ć³ćć©ć«ćŖć£ć¦ćććØčØćć¾ćć
空ę°ć®ćććŖååØć«ć¤ćć¦ććććććŖćć£ććę代ćę³åććććØćÆćē°”åćŖććØć§ćÆććć¾ććććććććć®čęÆćēč§£ććććØććē¾åØć®ćć¼ćæćć¼ć¹ć®ē½®ććć¦ććē¶ę³ćęę”ććććć§å¤§ććŖéµć«ćŖćć¾ććę¬ēØæć®ēµč«ćå åććć¦čØććŖćć°ćRDBć®ē»å “ććē “å£ēć¤ććć¼ć·ć§ć³ććØććććć¼ćæćć¼ć¹ć®äøēć®ćć©ćć¤ć ćäøę°ćć大å¤é©ć§ćć£ćć®ć«åƾććNoSQLćÆāāå°ćŖććØćē¾åØć®ćØććāāRDBćē½®ćęćć第äŗć®ē “å£ēć¤ććć¼ć·ć§ć³ćØćÆå¼ć¹ććRDBćØč£å®ēé¢äæć«ććććØćåććććć§ćć
RDB仄å
ćŖć¬ć¼ć·ć§ćć«ćć¼ćæćć¼ć¹ćē»å “ćć仄åć®ćć¼ćæćć¼ć¹åøå “ć§ćÆćé層åćØå¼ć°ććć¢ćć«ć«åŗć„ćć製åćäø»ęµć§ćććååć®ćØććććć¼ćæć®éć«ććé¢äæćé層é¢äæćØćć¦č”Øćććć¼ćæć®ä½ē½®ćććć°ć©ć ć§ē¹å®ćć¦ćć¼ćæćåå¾ćććØććć¢ćć«ć§ććä¼ē¤¾ćå¦ę ”ćŖć©ć®ēµē¹ćę©ę¢°ćę§ęććéØåćŖć©ćäøć®äøć®ććć¼ćæććÆä½ććć®é層é¢äæćęć£ć¦ććććØćå¤ćććććć®é¢äæć軸ć«ćć¼ćæć蔨ē¾ćććććØććę“åÆć«åŗć„ćććć¼ćæćć¼ć¹ć§ćć
代蔨ēćŖč£½åćÆIBMć®IMSļ¼Information Management Systemļ¼ć§ćéåøøć«é«ćäæ”é ¼ę§ćę§č½ćå ¼ćåćć製åć§ććććØćććęæåŗćéčę©é¢ććÆćććØććéč¦ćŖē¤¾ä¼ć¤ć³ćć©ćę ć大č¦ęØ”ć·ć¹ćć ć«å©ēØććć¦ćć¾ćććIMSć使ćććęćęåćŖć·ć¹ćć ćć1961幓ććå§ć¾ć£ćNASAć®ć¢ććčØē»ć§ććęēµč£½åćę§ęććéØåć®é層é¢äæć蔨ćććŖć¹ććBOMļ¼Bill of Materialsļ¼ćØå¼ć³ć製é ę„ć§ćÆć©ć®ćććŖč£½åćä½ćććåććććć®BOMćčØčØå³ćØäø¦ć¶éč¦ćŖę å ±ć§ćļ¼BOMćÆę„ę¬čŖć§ćÆćéØå蔨ććØå¼ć³ć¾ćļ¼ćIMSćÆćć±ććć®čØå¤§ćŖéØå群ćē®”ēćććØććé£č§£ćŖčŖ²é”ć«åŖććč§£ćäøćććć¼ćæćć¼ć¹ć§ććććć§ććććØéå»å½¢ć§å¼ć¶ć®ćÆäøę£ē¢ŗć§ćIMSćÆćē¾åØć«ććć¦ććŖćē¾å½¹ć§ćäøēäøć§å©ēØććć¦ćć¾ćć
éććŖå§å
é層åDBćććć”ćÆćć¹ćæć³ćć¼ćć«ćŖć£ć¦ćććć¼ćæćć¼ć¹ēć«ē°å¤ćčµ·ććć®ćÆć1968幓ć®ććØć§ććęåćććÆćčŖ°ććć®å¾ć®å¤§å¤åćäŗę³ć§ććŖććććŖććććććŖå½¢ć§ććććć¾ććććć£ćććÆćIBM ć®ē¤¾å å ±ć«ę²č¼ćććäøę¬ć®č«ęć§ććE.F.ć³ćććØćć40代åć°ć®ćØć³ćøćć¢ćęøććć大容éćć¼ćæćć³ćÆć®ććć®é¢äæć¢ćć«ććØććē“ ć£ę°ē”ććæć¤ćć«ć®č«ęćÆćē¹ć«ē¤¾å ć§ę³Øē®ćéććććØćÆććć¾ććć§ćććēæ1969幓ćå½¼ćÆć社å¤ć®å¦č”éčŖć«å°ćęøćęććēćę稿ćć¾ćććć®č«ęć«čå³ćęć£ćå¤éØć®ćØć³ćøćć¢ćć”ć«ćć£ć¦ććŖć¬ć¼ć·ć§ćć«ćć¼ćæćć¼ć¹ć®ćé©å½ććÆå§ć¾ćććØć«ćŖćć¾ćć
ć¾ćåęć®ååæćØćć¦ć1973幓ćć«ćŖćć©ć«ćć¢å¤§å¦ć®ćć¤ć±ć«ć»ć¹ćć¼ć³ćć¬ć¼ć«ć¼ććIngresć®éēŗć«ēęćć¾ććć¹ćć¼ć³ćć¬ć¼ć«ć¼ćÆćē¾åØć§ćÆPostgreSQLć®åčŗ«ćØćŖć£ćPostgresć®éēŗč ćØćć¦ē„ććć¦ćć¾ćććPostgresćÆćPostļ¼å¾ć®ļ¼ćļ¼ćIngresćććä»ććććåē§°ć§ćć
åććććććÆćć³ććć®č«ęć«č§¦ēŗćććć©ćŖć¼ć»ćØćŖć½ć³ććOracleć®éēŗć«ēęćć1979幓ć«ęåć®ćŖćŖć¼ć¹ćäøć«éćåŗćć¾ććć¾ććIngresć®éēŗć«åå ćć¦ććććć¼ćć»ćØćć¹ćæć¤ć³ććć1984幓ć«SybasećčØē«ćå社ćÆIngresćć¼ć ćIBMćØäŗŗēäŗ¤ęµćč”ćććØć§ćRDBć®ęč”ēēŗå±ć«č²¢ē®ćć¾ććć¾ććSybasećÆ1988幓ćć1993幓ć¾ć§ćć¤ćÆćć½ćć社ćØęč”ęęŗćč”ććå社ć®SQL Serverć®éēŗć«ćåÆäøćć¾ććććć®å¾ćć®ć”ć«IBM社ć«č²·åćććInformixćDWHåććć¼ćæćć¼ć¹ć®ä»£č”Øē製åćØćć¦ä»ćē„ćććTeradataćŖć©ć80幓代ć«ē»å “ćć90幓代ć«ćÆRDBćÆē¾č±ē¹ä¹±ć®ę“»ę³ćåććććØć«ćŖćć¾ćć
ćŖć¬ć¼ć·ć§ćć«ćć¼ćæćć¼ć¹ć®ę代
ććććRDBć®ēŗå±ć®ę“å²ćęÆćčæććØćē¾åØć®RDBåøå “ć«ćććäø»č¦ćć¬ć¤ć¤ć¼ćć”ćÆćć»ć¼1970幓代ćć80幓代ć«ē»å “ćć¦ććććØćåććć¾ććRDBć®éēŗćÆćć®å¾ćę“»ēŗć«ē¶ććććē¾åØć§ćꬔć ć«ę°ćć製åćē»å “ćć¦ćć¦ćć¾ćććåŗę¬ēćŖć³ć³ć»ćććÆćē¾åØć«ćććć¾ć§å¤ę“ććć¦ćć¾ćććåÆäøć®ä¾å¤ćÆ90幓代ć«ęåć®ćŖćŖć¼ć¹ćč”ćććMySQLć§ćććć«å製åćēęéć§åøå “ćē²å¾ććććåććć¾ćć
| DB | äø»č¦ćŖéēŗå | ęåć®ćŖćŖć¼ć¹ |
|---|---|---|
| Ingres | ć«ćŖćć©ć«ćć¢å¤§å¦ | 1974幓 |
| Oracle Database | Oracle | 1979幓 |
| DB2*1 | IBM | 1983幓 |
| Sybase SQL Server | Sybase | 1987幓 |
| MS SQL Server | Microsoft | 1989幓 |
| PostgreSQL | ć«ćŖćć©ć«ćć¢å¤§å¦ | 1989幓 |
| MySQL | MySQL AB*2 | 1995幓 |
ćć¦ć¼ć¶ć¼ē®ē·ćć®ć·ć¹ćć ćē®ęćć¦
RDBćå¾ę„ć®é層åDBć«ęÆć¹ć¦åŖćć¦ććē¹ćÆććć¤ćęććććØćć§ćć¾ćććć·ć§ć¢ćä¼øć°ćććć§ęć大ććŖå½±éæćÆćć¦ć¼ć¶ć¼ć使ćććććć¼ćæę§é ćØć¤ć³ćæćć§ć¼ć¹ć«ćć ćć£ćććØć§ććććŖćć”ćććć¼ćć«ććØćSQLćć®ēŗęć§ćć
RDBć§ćÆććć¹ć¦ć®ćć¼ćæćććć¼ćć«ććØćććć äøć¤ć®ćć¼ćæå½¢å¼ć«ćć£ć¦č”Øē¾ćć¾ćććć¼ćć«ćÆćč¦ćē®ććäŗę¬”å 蔨ćć«ä¼¼ć¦ćććć*3ćMicrosoft ExcelćGoogle ććć„ć”ć³ććŖć©ć®ć¹ćć¬ććć·ć¼ćć使ćę £ććäŗŗćč¦ććØććć¼ćæćę ¼ē“ććę¹ę³ćē“観ēć«ć¤ć”ć¼ćøćććććØććå©ē¹ćććć¾ććå®éćććććäŗę¬”å 蔨ć«ćććć¼ćæē®”ēćÆćExcelćŖć©ć®ć½ććć¦ć§ć¢ćē»å “ććåććäøč¬ēćŖę¹ę³ć ć£ććććRDBćē»å “ććå½ęć®äŗŗć ć«ćØć£ć¦ćåćå „ćććććć®ć§ććć
ćć¼ćć«ćē»ęēć ć£ćē¹ćÆćććäøć¤ććć¾ććå®ćÆćć”ćć®ę¹ćéč¦ćŖć®ć§ććććććÆćć¼ćć«ć«ććććć¼ćæć®č”Øē¾ć«ććć¦ćććć¼ćæć®ä½ē½®ććØććę¦åæµćäøåęé¤ććććØć§ćććć®ććććć¼ćć«ć«ććć¦ćÆććććć¼ćæćä½č”ē®ć§ćććØćä½åē®ć§ćććØććććØćÆäøåęå³ćęć”ć¾ććććććRDB仄åć®ćć¼ćæćć¼ć¹ćć¹ćć¬ććć·ć¼ććØćÆå¤§ććē°ćŖćē¹ć§ććććć«ćć£ć¦ćć¢ćć¬ć¹ććć¤ć³ćæćØćć£ćę±ćć®é£ććä½ē½®č”Øē¾ć使ććŖćć¦ććć¼ćæćęä½ć§ććććć«ćŖć£ćć®ć§ćć
č”ćØåć®äŗę¬”å ć§ćć¼ćæć蔨ē¾ćććććļ½č”ē®ćććļ½åē®ććØććä½ē½®č”Øē¾ćÆęććŖć
SQLćÆćRDBć«ććć¦ćć¼ćæćęä½ććå°ēØć®čØčŖć§ćććć¦ć¼ć¶ć¼ć®å©ä¾æę§ćē¹ć«éč¦ćć¦ä½ććć¾ćććSQLćÆč±čŖć«ä¼¼ććę§ęćęć£ć¦ćććććē¹ć«č±čŖćęÆå½čŖćØććäŗŗć ć«ćØć£ć¦ćÆćę„åøøčØčŖć§ćć¼ćæćęä½ć§ćććććŖęč¦ćęć”ć¾ćć
SELECT 社å”å FROM ē¤¾å” WHERE 幓齢 < 30;
幓齢ć30ę³ęŖęŗć®ē¤¾å”ćéøęććSQLęććå č¤ććććØćå·„č¤ććććéøęćććć
ććØććØććć°ć©ćć³ć°čØčŖćÆćč±čŖåć§ēŗå±ćć¦ććććØćććććć®ććć£ćć©ćŖćÆč±čŖē±ę„ć®ćć®ćå¤ćććć¾ććåå²ć蔨ććifćććć«ć¼ćć蔨ććforćććwhileććØćć£ććć¼ćÆć¼ććÆćć»ć¼ćć¹ć¦ć®ććć°ć©ćć³ć°čØčŖćå ±éć§ęć£ć¦ćć¾ćć
ćććć³ćććÆćććć§ćć¾ć ć¦ć¼ć¶ć¼ć使ćć«ćÆč² ę ć大ćććØčćć¾ćććććć°ć©ćć³ć°čØčŖć使ć£ć¦ćć¼ćæćęä½ć§ććć®ćÆćå°éć®ęč²ćåććććć°ć©ćć ćć§ććØć³ćć¦ć¼ć¶ć¼ć«ćÆé£ććććććØććć®ćå½¼ć®ę“åÆć§ćććē¹ć«å½¼ćSQLć®ååćØćŖćčØčŖćčćććØćć«č åæććć®ććć«ć¼ćććŖććććØć§ćććć³ćććÆRDBčę”ć®åēø¾ć«ćć£ć¦1981幓ć«ćć„ć¼ćŖć³ć°č³ćåč³ććć®ć§ććććć®čØåæµč¬ę¼ć§ćÆć£ćććć«ć¼ćććŖććć®ćRDBćčććäø»ē®ēć ć£ćććØčØć£ć¦ćć¾ć*4ć
āRelational processing entails treating whole relations as operands. Its primary purpose is loop-avoidance, an absolute requirement for end users to be productive at all, and a clear productivity booster for application programmers.ā
ā»å¼·čŖæćÆå¼ēØč
āćŖć¬ć¼ć·ć§ćć«ćŖå¦ēćÆé¢äæå Øä½ćęä½åÆ¾č±”ćØććććć®äø»č¦ćŖē®ēćÆćć«ć¼ćć ćŖććććØć§ććććććÆćØć³ćć¦ć¼ć¶ć¼ć®ēē£ę§ćé«ććććć«ćÆåæ é ć®č¦ä»¶ć§ćć£ćć ććć¦ććććć¢ććŖć±ć¼ć·ć§ć³ććć°ć©ćć®ēē£ę§åäøć«ćåÆäøććććØćÆęććć§ćććā
ā»ēč 訳
äŗå®ćććć°ć©ćć³ć°ć®ēµéØćććäŗŗćÆćåē„ć ćØęćć¾ććććć¼ćæć®ć¢ćć¬ć¹ććć¤ć³ćæćé åć®ę·»ćåć§ęä½ććććć«ć¼ćå¦ēćčØčæ°ććććØćÆććć°ćå¼ćčµ·ććććććć¤ć³ćć§ććåč ćÆäøę£ćŖć¢ćć¬ć¹åē §ć«ććä¾å¤ććć³ćć³å¼ćčµ·ććć¾ćććå¾č ćÆćć«ć¼ćć®ēµäŗę”ä»¶ćééććććØć§ē”éć«ć¼ććēŗēćććććć«ć¼ćć®å „ćåćäøēØęć«ę·±ććć¦ćć¾ćććØć§ćå Øä½ć®č¦éććęŖććŖććØćć£ćå¼å®³ćććć°ćć°čµ·ććć¾ććććććåé”ćÆćč·ę„ććć°ć©ćć®éć§ćå¾ć ć«čŖčćććććć«ćŖćććććććŖć³ć¼ććęøćććć®ę¹ę³č«ććēŗéććććć«ćŖćć¾ćććRDBćÆäøč¶³é£ć³ć«ććććććć®ćććŖåé”ćåēēć«ēŗēććŖćć·ć¹ćć ććä½ćććØćē®ęććć®ć§ććććć¦ććć®č©¦ćæć大ććŖęåćåććććØćÆć2017幓ć®ē¾åØććć¼ćæćć¼ć¹ćØććć°ćććÆęé»ć®ćć”ć«RDBćęććØććć»ć©ć«ę®åććććØćććęććć§ćć
ē “å£ēć¤ććć¼ć·ć§ć³ćØćć¦ć®RDB
äøčØć®ćććŖRDBć®ēŗå±å²ćęÆćčæććØćććććć©ćć¤ć ć·ććć®äøć¤ć®é”åāāē “å£ēć¤ććć¼ć·ć§ć³ć§ććććØćåććć¾ćć
ē “å£ēć¤ććć¼ć·ć§ć³ććć³ćććå¼ćčµ·ććē “å£ēęč”ćÆććć¼ćć¼ćć»ććøćć¹ć»ć¹ćÆć¼ć«ć®ęęćÆć¬ć¤ćć³ć»ćÆćŖć¹ćć³ć»ć³ć®čęøćć¤ććć¼ć·ć§ć³ć®ćøć¬ć³ććć§ęåć«ćŖć£ćēµå¶å¦ć®ę¦åæµć§*5ćęč”ē製åć®åøå “ć«ććććć©ćć¤ć ć·ćććå¼ćčµ·ććč¦å ćčŖ¬ęććććć«ä½æććć¾ććē “å£ēęč”ćØćÆćå¾ę„ć®åøå “ć«ćććč©ä¾”åŗęŗļ¼å¤ććÆäæ”é ¼ę§ćę§č½ļ¼ć§ćÆå£ć£ćč©ä¾”ćäøćććććć®ć®ćå„ć®č©ä¾”åŗęŗć§ćÆę¢å製åććåŖćć¦ćććØććļ¼ä½æćåęć便å©ććŖć©ļ¼ććććććå é²ēć¦ć¼ć¶ć¼ļ¼ć¢ć¼ćŖć¼ć»ć¢ćććæļ¼ć«ć¢ćć¼ć«ććććØć§å°č¦ęØ”ć®åøå “ćē²å¾ćććććŖē¹å¾“ćęć£ćęč”ć»č£½åć®ććØć§ććå ·ä½ä¾ćØćć¦ćÆćå°åHDDćććøćæć«ć«ć”ć©ćć¹ćć¼ććć©ć³ćŖć©ćē„ććć¦ćć¾ćć
å½åćÆćććć”ććććå®ćććęŖćććććØććä½č©ä¾”ć«ēććć¦ććę°ęč”ćå¾ć ć«åč³Ŗę¹čÆćććććØć§ćę¢åć®äø»ęµč£½åćå¾ę„ć®č©ä¾”åŗęŗć§ćäøåć£ćē¬éć«ćåēćŖåøå “ć·ć§ć¢ć®é転ćčµ·ćććæć¤ćć³ć°ć訪ćć¾ćććććē “å£ēć¤ććć¼ć·ć§ć³ćØå¼ć°ććē¾č±”ć§ćå§åēć·ć§ć¢ćęć¤åŖčÆä¼ę„ćØćć®äø»å製åććŖćę°čä¼ę„ćØćć®ļ¼ęåćÆļ¼ē²ęŖåć«ććč¦ććŖć製åć«ęć”č² ććććć®ćććØććēē±ćčŖ¬ęććęåćŖēč«ćØćæćŖććć¦ćć¾ćć
RDBć®ē»å “ćØćć®å¾ć®ēŗå±ćęÆćčæććØćć¾ćć«ē “å£ēć¤ććć¼ć·ć§ć³ć®ććć»ć¹ćå°ć§č”ć£ć¦ććććØćåććć¾ććć¹ćć¼ć³ćć¬ć¼ć«ć¼ććęåć«IngresćéēŗćććØććå øåēć§ćććå½¼ććÆå½ęćØćć¦ćÆćć¼ćØć³ćć®UNIXćć·ć³äøć§åćRDBćä½ćć¾ćććę§č½ćäæ”é ¼ę§ćØććē¹ć§ćÆććć§ć«å¤§č¦ęØ”ćŖē¤¾ä¼ć¤ć³ćć©ćęÆććć”ć¤ć³ćć¬ć¼ć äøć§ēؼåćć¦ććé層åDBćØćÆćäæ”é ¼ę§ćę§č½ćęÆć¹ćć¹ććććć¾ćććē¾åØć§ććRDBćÆćé«äæ”é ¼ć»å®å®ēؼåćć®ä»£åč©ć®ććć«ćŖć£ć¦ćć¾ćććåęć®RDB製åćÆäøå®å®ć§ę§č½ćä½ćććØć¦ćććć·ć§ć³ćÆćŖćć£ć«ć«ćŖč¦ä»¶ć«ćććåč³ŖćÆęćć¾ććć§ććć
ććććå¾ę„ć®č©ä¾”åŗęŗććč¦ćć°åęRDBćÆćć¢ć¤ćć¢ćÆé¢ē½ććå®ēØć«ćÆćććŖććććć”ććć§ććććć¾ććććććRDBć«ćÆćé層åćć¼ćæćć¼ć¹ć«ćÆćŖćę°ććå©ē¹ćåćć¦ćć¾ćććććććåčæ°ć®ćć¦ć¼ć¶ć¼ćć¬ć³ććŖćć®ē²¾ē„ć§ććRDBć®ēŗå±ććOraclećIngresļ¼PostgreSQLļ¼ćSQL ServerćMySQLćØćć£ćę°čć®č£½åćØä¼ę„ć«ćć£ć¦ę ćććććØć«ćŖć£ćć®ćÆććć¤ććć¼ć·ć§ć³ć®ćøć¬ć³ććć®ę§å³ć«ē §ććć¦čććć°ććććē“å¾ć®ćć話ć§ć*6ć
ē “å£ēć¤ććć¼ć·ć§ć³ćÆē¹°ćčæćć
RDBćÆćć¼ćć«ćØććć·ć³ćć«ć§ē“観ēćŖćć¼ćæć¢ćć«ćØćSQLćØććć¦ć¼ć¶ć¼ć使ććććć¤ć³ćæćć§ć¼ć¹čØčŖćę¦åØć«ćć¼ćæćć¼ć¹ć®ć”ć¤ć³ć¹ććŖć¼ć ć®åŗ§ćęć«å „ćć¾ćććććććććÆćRDBćäøč½ćØććććØćęå³ććććć§ćÆććć¾ććć
1990幓代å¾åćć2000幓代ć«ććć¦ćć¤ć³ćæć¼ćććć®ēŗå±ćäø»ćŖććŖć¬ć¼ćØćć¦ćć·ć¹ćć ćÆå¤ēØ®å¤ę§ćŖēØéć«ä½æćććććć«ćŖćć¾ćććććć«ćć£ć¦ćććć¾ć§ćć¾ćęčćććŖćć£ćRDBć®äøä¾æććå¼·ćčØčć使ććŖćć°ćéēććč¦ćć¦ććććć«ćŖćć¾ćććććććå ćÆćRDBćę±ććććć«ćŖć£ćčŖ²é”ćØćććć«åƾćć¦ć©ć®ćććŖč§£ę±ŗć®ć¢ććć¼ćććØććć¦ććććčæ°ć¹ćććØęćć¾ćććććÆē¾åØć«č³ćć¾ć§å°ē¶ćć®ćć¼ćć§ććććć®ęå³ć§ćć¼ćæćć¼ć¹ć®ćē¾ä»£å²ćć«ćććć¾ćć
čŖ²é”1 ę§č½ćØäæ”é ¼ę§ć®ćć¬ć¼ććŖć
čæå¹“ććÆćć¼ćŗć¢ććććć¦ććRDBć®å¤§ććŖåé”ććććć©ć¼ćć³ć¹ć§ććććć©ć¼ćć³ć¹ćę§ęććč¦ē“ ćććć¤ćććć¾ćććććć§ćÆē°”åć«ćć·ć¹ćć ćØćć¦ć®å¦ēéåŗ¦ććØčćć¦ććć£ć¦ćć¾ćć¾ććććć¼ćæćć¼ć¹ćÆęćć大éć®ćć¼ćæćę ¼ē“ćć¦ćć¾ććććčæå¹“ćÆå¢å¤§ć®äøéććć©ććRDBćÆć·ć¹ćć ć«ććć¦ęćććć«ćććÆć«ćŖćććććć¤ć³ćć«ćŖć£ć¦ćć¾ćć
RDBćććć«ćććÆć«ćŖććććåå ćÆäø»ć«äŗć¤ććć¾ććäøć¤ćććć¼ćæćäøå ē®”ēććå³åÆćŖćć©ć³ć¶ćÆć·ć§ć³ē®”ēćććććć«ć¹ćć¬ć¼ćøćå ±ęććę§ęćåćåæ č¦ććććć¹ćć¬ć¼ćøćć·ć³ć°ć«ć»ććć«ćććÆćć¤ć³ćć«ćŖć£ć¦ćć¾ćććć§ćććć¹ć±ć¼ć«ć¢ć¦ććć§ććŖćććØčØćęćć¦ćććć§ćććć
ććäøć¤ććSQLć®č”Øē¾åćå¼·åć§ęč»ć§ćććććććć£ć¦č¤éćŖå¦ēćå®č”ć§ćć¦ćć¾ćććØć§ććē¹ć«ēµåććµććÆćØćŖćØćć£ćč¤éćŖå¦ēć大č¦ęØ”ćŖćć¼ćæć«å®č”ććććØć§å¤§č¦ęØ”ćŖć¹ćć¼ćć¦ć³ćå¼ćčµ·ććććØćććć¾ćć
čŖ²é”2 ćć¼ćæć¢ćć«ć®éē
RDBććć¼ćć«ćØććäŗę¬”å 蔨ć§ćć¼ćæć蔨ćććć«ććććØćÆćå čæ°ć®ćØććć§ćććććÆē¾å®äøēć®å¤ćć®ćć¼ćæćć·ć³ćć«ć«č”Øććå¼·åćŖęꮵćŖć®ć§ćććå®ćÆč”Øē¾ććććØćč¦ęćŖćć¼ćæć®ēØ®é”ćććć¤ćććć¾ćć代蔨ēćŖćć®ćÆćć°ć©ććØéę§é åćć¼ćæć§ćć
ć°ć©ććÆę°å¦ć®ēØčŖć§ćććå®ē¾©ććå ·ä½ä¾ćč¦ćć°ć¤ć”ć¼ćøćć¤ććć¾ććäøč¬ēć«ćÆēµē¹å³ć®ćććŖęØę§é ć®ć°ć©ććØćSNSć®ć¦ć¼ć¶ć¼éć®é¢äæć蔨ćććććÆć¼ćÆę§é ć®ć°ć©ćć«åććć¾ććåč ćéå¾Ŗē°ć°ć©ććå¾č ćå¾Ŗē°ć°ć©ććØå¼ć³ć¾ććęØę§é ć®ć°ć©ććÆć¾ćć«RDBćäø»ęµć®åŗ§ć優ć£ćé層åDBć®ćć¼ćæć¢ćć«ć§ćććē®čćŖććØć«RDBćÆććć蔨ćć®ćč¦ęćŖć®ć§ćć
éå¾Ŗē°ć°ć©ćć®äøēØ®ć§ććēµē¹å³
å¾Ŗē°ć°ć©ćć®äøēØ®ć§ććSNSć®äŗŗéé¢äæ
ćć¼ćć«ćÆå ć«č¦ćććć«ćäŗę¬”å ć®å½¢ććć¦ćć¾ćććé層ę§é ćÆååø°ēćŖę§é ćęć£ć¦ćć¾ćććć©ćććŖäŗę¬”å 蔨ć§ćÆććć®ååø°ēę§é ć蔨ćććØćéåøøć«é£ććć®ć§ćļ¼ć§ććŖćććØććććć§ćÆćŖćć®ć§ćććććŖćé£ćććRDBć§é層ę§é ć蔨ćę¹ę³č«ć«ć¤ćć¦ćÆćåčęē®ćåē §ćć¦ćć ććļ¼ć
äøę¹ć®éę§é åćć¼ćæććå®ē¾©ćććå ·ä½ä¾ćč¦ćę¹ćę©ćć§ćććććØććć®ććć®čØčćÆćRDBć®ćć¼ćć«ć«ę ¼ē“ćććććć¼ćæļ¼CSVćŖć©ļ¼ćęåć«ćę§é åćć¼ćæććØå¼ćć§ććć®ć«åƾćć¦ććć¼ćć«ć§ćÆę±ćć«ćććć¼ćæćć²ćØć¾ćØćć«ćéę§é åćć¼ćæććØå¼ć¶ććć«ćŖć£ććØćććććććć§ćć
éę§é åćć¼ćæć®ä»£č”Øä¾ćÆćXMLćJSONć§ć*7ćć©ć”ććć¤ć³ćæć¼ćććäøć§ćć¼ćæććććØććććć©ć¼ććććØćć¦é »ē¹ć«å©ēØććć¾ćććććććÆä½ć®ćæć°ćć©ćććę å ±ć蔨ćććØććč¦åćÆå®ć¾ć£ć¦ćććć®ć®ćåå„ć®ććć„ć”ć³ććć©ććććæć°ćä½åå«ćæćäøć¤ć®ćæć°ćć©ćć ćć®ćµć¤ćŗć®ę å ±ćęć¤ćććØććććØćÆę±ŗććåæ č¦ćććć¾ććļ¼ćć”ćććåå„ć®ććøćć¹ć«ć¼ć«ćØćć¦ććć¾ć§ę±ŗććććØćććć¾ćććäøč¬ę§ćÆććć¾ććļ¼ććććććć¼ćæćÆćęē¶ćåć®ććć°ć©ćć³ć°čØčŖć§ć«ć¼ććØåå²ć使ć£ć¦ę±ćć«ćÆććć»ć©č¦å“ćć¾ććććäŗåć«åć®ęå³ćØę°ćę±ŗććåæ č¦ććććć¼ćć«ćØćÆēøę§ćęŖććŖćć¾ććäøč¬ć«ćRDBć«ććććć¼ćć«ć®ę§é ćÆććēØåŗ¦éēć§ćć·ć¹ćć ćéēØććäøć§åēć«å¤ę“ććććØćÆę³å®ćć¦ććŖćććć§ćććć¼ćć«å®ē¾©ććć¼ćć«éć®é¢é£ćå¤ćććØććć®ćÆćććŖć大č¦ęØ”ćŖę¹äæ®ć«ćŖćććØćęå³ćććććēµéØč±åÆćŖćØć³ćøćć¢ć»ć©čŗ«ę§ćććć®ć§ćć
{
"åå": "å±±ē° å¤Ŗé",
"ä½ę": "ååŗčµ¤ē¾½",
"č¶£å³": ["éē", "å±±ē»ć", "čŖč»¢č»"]
}
JSONć®ćµć³ćć«ććååćććä½ęćććč¶£å³ććØććäøć¤ć®č¦ē“ ļ¼ćŖććøć§ćÆćļ¼ćčØčæ°ććć¦ćć
č¶£å³ćč¤ę°ććććØćé
åć§č”Øē¾ćć¦ćć
ćć仄å¤ć®č¦ē“ ćčØčæ°ććććØććé
åć®č¦ē“ ę°ćå¢ęøåÆč½ć§ćčŖē±åŗ¦ćé«ć
ćććäŗć¤ć®RDBć®ę±ććčŖ²é”ć«åƾćć¦ć対å¦ćÆäŗéćć«åććć¾ććäøć¤ćÆRDBć®ę©č½ćé«åŗ¦åććććØć§åƾåæććę¹ę³ćććäøć¤ćRDB仄å¤ć®ćć¼ćæćć¼ć¹ćå©ēØććććØć§ććåč ćč²ć ćØčå³ę·±ććć¼ććććć®ć§ćććę¬ēØæć§ćÆäø»ć«å¾č ć®ć¢ććć¼ćć«ć¤ćć¦åćäøćć¾ććććŖćć”ćäøč¬ć«NoSQLćØå¼ć°ćć製å群ć«ć¤ćć¦ć§ćć
NoSQLć®ēØ®é”ćØč§£ę±ŗē
NoSQLćØććęč”ć製åć®åē§°ćÆå®ēććęćććć¾ćććå®ćÆćć¾ćę確ćŖå®ē¾©ćććć¾ćććå½åćÆNoRelćØććčØčćęå±ććć¾ććććććć端ēć«č”Øćććć«ćRDBćØćÆē°ćŖćć¢ć¼ćććÆćć£ććć¼ćæć¢ćć«ć«åŗć„ććć¼ćæćć¼ć¹ććØććēØåŗ¦ć®ē·©ćå®ē¾©ć§ććććććććććåŗę¬ēć«ćÆå ć«ęććććć©ć¼ćć³ć¹ćØćć¼ćæć¢ćć«ć®åé”ć«åƾå¦ććććØćē®ēć«ćć¦ćć¾ćć
ććć©ć¼ćć³ć¹åé”ć®č§£ę±ŗ
RDBć®ććć©ć¼ćć³ć¹ć®åé”ć解決ććęꮵćØćć¦čććććę¹éćÆć大ćć仄äøć®äŗć¤ć§ćć
- ćć¼ćæć¢ćć«ćåē“åććč¤éćŖćć¼ćæęä½ćå¶éćć
- ć·ć³ć°ć«ć»ććć«ćććÆćć¤ć³ćććŖććć¦ć¹ć±ć¼ć«ć¢ć¦ćåÆč½ć«ćć
ććććÆććå³åÆćŖćć©ć³ć¶ćÆć·ć§ć³å¶å¾”ć«ćććć¼ćæę“åę§ććØćSQLć§å®ē¾ćć¦ććé«åŗ¦ćŖćć¼ćæęä½ććØććRDBćęć¤å©ē¹ćććēØåŗ¦č«¦ćć代ććć«ććć©ć¼ćć³ć¹ćčæ½ę±ćććØćććć¬ć¼ććŖćļ¼äŗ¤ęę”ä»¶ļ¼ć許容ććć¢ććć¼ćć§ćć
åč ć®ę¹éćå®ē¾ććNoSQLć®å øåććKVSļ¼Key-Value Storeļ¼ćØå¼ć°ćććć®ć§ććKVSćććć¼ćæć¢ćć«ćØćć¦ćÆćć¼ćć«ć®äøēØ®ćØćæćŖććŖćććŖćć®ć§ćććććć¼ććØććć«ćć£ć¦äøęć«ę±ŗć¾ććå¤ććØćććéåøøć«ć·ć³ćć«ćŖę§é ććęćććććććäøęćć¼ć«ććé«éćŖę¤ē“¢ę§č½ćå®ē¾ććććØćē®ēćØćć¦ćć¾ćļ¼ä»£ććć«ēµåćŖć©é«åŗ¦ćŖå¦ēćÆć§ćć¾ććļ¼ćććć°ć©ćć³ć°ć«ę £ććäŗŗććč¦ćć°ćé£ę³é åćåŗę¬ę§é ćØćććć¼ćæćć¼ć¹ć«č¦ććć§ććććé£ę³é åćÆé åć®ę·»ćåć«ę°å仄å¤ļ¼ęååćŖć©ļ¼ć使ćé åć§ćć
| eng | ja |
|---|---|
| orange | ćæćć |
| strawberry | ćć”ć |
| watermelon | ććć |
| lemon | ć¬ć¢ć³ |
| grape | ć¶ć©ć |
| banana | ććć |
é£ę³é
åFruitsFruits['orange'] = 'ćæćć'ć®ććć«ćę°å¤ä»„å¤ćé
åć®ę·»ćåć«å©ēØćć
ćććÆć¾ćć«ćć¼ćć«ć«ććććć¼ć«ććå¤ć®ę¤ē“¢ćØåć
RedisćmemcachedćŖć©ć®č£½åćKVSć®ę©č½ćåćć¦ćć¾ććććććåē“åćććć¼ćæę§é ććććć«ćŖć³ć”ć¢ćŖåćććŖć©ćććć©ć¼ćć³ć¹ćåäøććććŖćć·ć§ć³ćēØęćć¦ćć製åćććć¾ćć
ć¾ććKVSćå«ćNoSQLć®č£½åć®å¤ććÆćč¤ę°ć®ćć¼ćæćć¼ć¹ć®ć¤ć³ć¹ćæć³ć¹ć§ćÆć©ć¹ćæćę§ęććć¹ć±ć¼ć«ć¢ć¦ććåÆč½ć«ććććØć§ććć©ć¼ćć³ć¹åäøćå³ć£ć¦ćć¾ćć
éę§é åćć¼ćæć«åƾćć解決
äŗć¤ē®ć®éę§é åćć¼ćæć®ę±ćć«åƾćć解決ēćØćć¦ē»å “ććNoSQLć®äøć¤ććććć„ć”ć³ćęååDBćØå¼ć°ćććæć¤ćć§ććJSONćXMLć®ćććŖčŖē±åŗ¦ć®é«ćććć„ć”ć³ćććRDBć®ćć¼ćć«ć«å¤ęććććØćŖććć¤ćć£ćć«ę±ćę©č½ćęć”ć¾ćć製åćØćć¦ćÆćMongoDBćCouchDBćŖć©ć該å½ćć¾ććć¾ććå ć«RDBćę±ćć«ćććć¼ćæć¢ćć«ćØćć¦ć°ć©ćććććØćć話ććć¾ćććććććę±ćććØć«éē¹ććććć°ć©ćDBćčæå¹“éēŗćé²ćć§ćććNeo4jćŖć©ć®č£½åćē»å “ćć¦ćć¾ćć
NoSQLćÆRDBćē½®ćęććć
ćć®ććć«ććØććć2000幓代ć®å¾åććēćć«å¾ę„ć®RDBć®å¶ē“ć«åƾććę°ććŖć¢ććć¼ććØćć¦NoSQLć®č£½å群ćē»å “ćć¦ććććć§ćććććć¾ć§čŖćæé²ćć§ććčŖč ć«ćÆćäøć¤ć®ēåćēććć®ć§ćÆćŖćććØęćć¾ćććććććNoSQLćÆćRDBćē½®ćęććę°ććŖē “å£ēęč”ć ćććļ¼ććØćććć®ć§ćććć®ēåć«åƾććēč ć®åēćÆććē¾åØć®ćØćććććÆćŖććć§ććēē±ćÆäŗć¤ććć¾ćć
äøć¤ē®ć®ēē±ćÆćNoSQLć®å¤ćććć¬ć¼ććŖććēŗēććć¦ććććØć§ćć確ćć«NoSQL製å群ćÆćRDBć®ę¬ ē¹ćč£ćē®ēć§ä½ććć¦ććććć®ęå³ć§ćÆćę°ććŖč©ä¾”åŗęŗćć«ććć¦RDBćåé§ćććć®ć§ćććäøę¹ć§ćACIDćć®ć¹ćć¼ć¬ć³ć§ććē„ććććć©ć³ć¶ćÆć·ć§ć³ē®”ēć«ćććć¼ćæę“åę§ćčä¹ ę§ćććććÆSQLć§å®ē¾ćć¦ććé«åŗ¦ćŖćć¼ćæęä½ććć¼ćć«éć®é¢é£ć蔨ćę©č½ćŖć©ćļ¼ęæē„ć®ććć§ļ¼ē ē²ć«ćć¦ćć¾ććē “å£ēć¤ććć¼ć·ć§ć³ćčµ·ććć«ćÆćććććå¾ę„ć®č©ä¾”åŗęŗć«ććć¦ćNoSQLćRDBćäøåćåæ č¦ćććć¾ććććććčµ·ććŖćéćÆć大å¢ćØćć¦ćÆćRDBćØNoSQLćÆēøäŗč£å®ēćŖé¢äæć«ćØć©ć¾ćć§ććććNoSQLćē»å “ććå½åćÆęåć©ćććNO SQLććØćć¦č§£éćććRDBć®ć«ć¦ć³ćæć¼ć§ćććććŖå°č±”ćäøććć®ć«åƾććčæå¹“ć§ćÆćNot Only SQLććØććč§£éć®ę¹ćććå®ę ć蔨ćć¦ććććØčØćććć®ććäøć¤ć«ćÆććććč£å®é¢äæćåę ćć¦ććć®ć ćØęćć¾ćć
ććäøć¤ć®ēē±ćÆćRDBć®ę¹ććNoSQLēćŖę©č½ćå¾ć ć«ćµćć¼ćććććć«ćŖć£ć¦ćććäø”č ć®å·®ćåć¾ćå§ćć¦ććććØć§ććOraclećDb2ćMySQLćPostgreSQLćŖć©äø»č¦ćŖRDB製åćÆćJSONćXMLćę±ćę©č½ććµćć¼ćććććć«ćŖć£ć¦ćććäø”č ć®åŗå„ćÆå¾ć ć«ęę§ć«ćŖć£ć¦ćć¦ććććć«ćč¦ćć¾ććOraclećDb2ćŖć©ćÆć°ć©ććć¼ćæćøć®åƾåæććÆććć¦ććććć®ćććŖåććč¦ććØćNoSQLćØććć®ćÆćå°ę„ēć«ćÆRDBć®ę©č½ć®äøć¤ćęćčØčć«ćŖćććØććååć«čćććć¾ćć
ć¾ćØć
ę¬ēØæć§ćÆćRDBćäøåæć«ęč”ēćŖę“å²ćęÆćčæćććØć§ć大ććŖęč”ēå¤åćčµ·ććć®ćÆć©ć®ćććŖćØćććØćććć¼ćć«ć¤ćć¦čåÆćć¦ćć¾ćććę¬ēØæć®å 容ćć¾ćØćććØć仄äøć®ććć«ćŖćć¾ćć
- RDBćé層åDBćē½®ćęććć®ćÆćē “å£ēć¤ććć¼ć·ć§ć³ć®å„½ä¾ćØå¼ć¶ć¹ćē¾č±”ć ć£ććRDBćÆćå¾ę„ććć°ć©ćććØć³ćøćć¢ćę±ććć®ćØććć¦ćććć¼ćæćć¼ć¹ćććØć³ćć¦ć¼ć¶ć¼ćę±ćććć®ć«ćććććē¹ćē»ęēć ć£ć£ćć
- ē “å£ēć¤ććć¼ć·ć§ć³ćÆćå¾ę„ć®č©ä¾”åŗęŗć§ćÆęø¬ććŖćę°ę©č½ćęć£ć製åćå¼ćčµ·ććććę°ę©č½ćććć ćć§ćÆäøååć§ćå¾ę„ć®č©ä¾”åŗęŗć§ćę¢åć®č£½åćäøåćåæ č¦ćććććć¬ć¼ććŖććēŗēććéćÆē “å£ēć¤ććć¼ć·ć§ć³ćÆčµ·ććŖćć
- 2000幓代ć«å „ććØćRDBć®ę¬ ē¹ć§ććććć©ć¼ćć³ć¹ć®ć¹ć±ć¼ć©ććŖćć£ćéę§é åćć¼ćæć®ę±ććØćć£ćåé”ććÆćć¼ćŗć¢ćććććććć«ćŖććććć«åƾćć解決ēćØćć¦NoSQLć®č£½å群ćē»å “ćć¦ććććććć第äŗć®ē “å£ēć¤ććć¼ć·ć§ć³ćØćććććÆćRDBćØč£å®ēé¢äæćØćć¦å ±åććåÆč½ę§ćé«ćć
åčęē®
- ćÆć¬ć¤ćć³ć»ćÆćŖć¹ćć³ć»ć³ćć¤ććć¼ć·ć§ć³ć®ćøć¬ć³ć ęč”é©ę°ć巨大ä¼ę„ćę»
ć¼ććØććļ¼ēæę³³ē¤¾ć2001ļ¼
ćÆć¬ć¤ćć³ć»ćÆćŖć¹ćć³ć»ć³ććć¤ć±ć«ć»ć¬ć¤ćć¼ćć¤ććć¼ć·ć§ć³ćøć®č§£ å©ēććęé·ć«åćć¦ćļ¼ēæę³³ē¤¾ć2003ļ¼ - ē “å£ēć¤ććć¼ć·ć§ć³ćØććę¦åæµć使ć£ć¦ęč”ēåøå “ć®ćć©ćć¤ć ć·ćććåęććå¤å øēčä½ćę¬ēØæć§ććć®ę¦åæµćå Øé¢ēć«ę“ēØććć¦ćććć¾ććććć¼ććÆēµå¶č åćć§ććććØć³ćøćć¢ćććć°ć©ćć§ćć£ć¦ćčŖåćå¦ćć§ććļ¼ä½æć£ć¦ććęč”ćåøå “ēć«ć©ć®ććć«ä½ē½®ć„ććććć®ććä»å¾ć©ć®ćććŖęč”ēćŖå¤é·ć®åÆč½ę§ćććććč¦éććććć«ćŖćććć«ćčŖćć§ęćÆććć¾ććć
-
<
ćFunding a Revolution: Government Support for Computing Researchćļ¼1999ļ¼
- å Øē±³ē ē©¶č©č°ä¼ļ¼NRCļ¼ć«ćććć³ć³ćć„ć¼ćæåéć«ćććć¤ććć¼ć·ć§ć³ćÆć©ć®ććć«ćć¦å®ē¾ććććććć¼ććØććć¬ćć¼ćć第6ē« ć§RDBé»ęęć®ę“å²ćē°”ę½ć«ć¾ćØćććć¦ćć¾ććę¬ēØæć§ćÆåćäøćć¾ććć§ććććå®ćÆćć¼ćæćć¼ć¹ć®ę“å²ć§ćÆå½å®¶ę©é¢ļ¼ē¹ć«č»é¢äæļ¼ćéč¦ćŖå½¹å²ćęććć¦ćććØććé¢ē½ćę“åÆćčŖććć¦ćć¾ććIMSćć¢ććčØē»ćØćć大č¦ęØ”å ¬å ±äŗę„ć®ććć«ä½ćććććØćÆę¬ēØæć§ćčæ°ć¹ć¾ććććRDBć«ććć¦ććIngresćč»é¢äæę©é¢ććåŗč³ćåććććOraclećCIAć®ćććøć§ćÆćććéēŗćć¹ćæć¼ćććććŖć©ććć¼ćæćć¼ć¹ćÆč»äŗę©é¢ćØęµ ććć¬ēøćęć£ć¦ćć¾ćććå½å®¶ćć¤ććć¼ć·ć§ć³ć®ćććć³ć ć£ćććØććććÆćŖć¹ćć³ć»ć³ćØćÆē°ćŖćč¦ē¹ććć®åęćÆčå³ę·±ććć®ć§ćć
- ę¬ę©äæ”ä¹ćę²³ééä¹ćé¶“č¦å©ē« ćå¤Ŗē° ę“ćNOSQLć®åŗē¤ē„č ććć°ćć¼ćæćę“»ćććć¼ćæćć¼ć¹ęč”ćļ¼ćŖććÆćć¬ć³ć ć2012ļ¼
- ććåč”ććęéćēµéćććććę å ±ćå¤ććŖć£ććØćććÆććć¾ćććNoSQL製åć«ć¤ćć¦åć«åć ć®č£½åćē¹é·ć®ē“¹ä»ć ćć§ćÆćŖććććććć©ć®ćććŖčŖ²é”čŖčććē»å “ććć©ć®ćććŖć¢ć¼ćććÆćć£ć§č§£ę±ŗćå³ćććć¦ćććććØććå Øä½åćäøćć¦ććć¾ććNoSQLć俯ē°ēć«ē„ććććØęć£ććØćć®ęåć®äøåćØćć¦ęé©ć§ćć
- ćøć§ć¼ć»ć»ć«ć³ćććć°ć©ćć®ććć®SQLć°ć©ćåč« ćŖć¬ć¼ć·ć§ćć«ćć¼ćæćć¼ć¹ć§ęØćØé層ę§é ćę±ćććć«ćļ¼ēæę³³ē¤¾ć2016ļ¼
- RDBć§ęØę§é ćę±ćéøęč¢ć«ć¤ćć¦čåÆććęøē±ć§ććēč ć翻訳ććć®ć§ććććććććć®ćć¼ćć«ć¤ćć¦ęøćććę¬ćØćć¦ćÆęćē¶²ē¾ ēć§ććåčč ć®ćććć°ć©ćć®ććć®SQLćć®ć¹ćć³ćŖćä½åć§ćććććć ćć«čŖćć«ćÆSQLć®ē„čćććēØåŗ¦č¦ę±ććć¾ćć
å·ēč ćććć£ć¼ć«
ćććÆļ¼{$image_5}copinemickmackļ¼
ē·Øéļ¼čäŗåę„ļ¼ZINEļ¼
2017幓ćDB2ćÆćDb2ćć«åē§°ćå¤ę“ććććā©
MySQL ABćÆć®ć”ć«ćµć³ć»ćć¤ćÆćć·ć¹ćć ćŗć«č²·åćććććć«ćµć³ć»ćć¤ćÆćć·ć¹ćć ćŗćOracleć«č²·åćććććØć§ćē¾åØMySQLćÆOraclećäæęćć¦ćććā©
ćć®ćććŖćć£ć¦ć¾ćć£ćčØćę¹ćććć®ćÆćå³åÆć«ćÆäŗę¬”å 蔨ćØćć¼ćć«ćÆćē°ćŖćē¹ę§ćććć¤ććććåćę¦åæµćØććććć§ćÆćŖćććć§ććććććSQLć§ććć»ć©č¤éćŖå¦ēćč”ććŖććć°ććć¼ćć«ćäŗę¬”å 蔨ćØćć¦ć¤ć”ć¼ćøćć¦ććććć»ć©å¤§ććŖåé”ćÆććć¾ćććā©
The 1981 ACM Turing Award Lecture Relational Database: A Practical Foundation for Productivityā©
ćÆć¬ć¤ćć³ć»ćÆćŖć¹ćć³ć»ć³ćć¤ććć¼ć·ć§ć³ć®ćøć¬ć³ćāęč”é©ę°ć巨大ä¼ę„ćę» ć¼ććØććļ¼ēæę³³ē¤¾ć2001ļ¼ā©




