Knowledge

Key–value database

Source 📝

129: 32: 215:. Exposing the data types to the database program allows it to apply a number of optimizations. In contrast, key–value systems treat the data as a single opaque collection, which may have different fields for every record. This offers considerable flexibility and more closely follows modern concepts like 286:
Every entity (record) is a set of key–value pairs. A key has multiple components, specified as an ordered list. The major key identifies the record and consists of the leading components of the key. The subsequent components are called minor keys. This organization is similar to a directory path
200: 287:
specification in a file system (e.g., /Major/minor1/minor2/). The “value” part of the key–value pair is simply an uninterpreted string of bytes of arbitrary length.
226:
Performance, a lack of standardization and other issues have limited key–value systems to niche uses for many years, but the rapid move to
219:. Because optional values are not represented by placeholders or input parameters, as in most RDBs, key–value databases often use far less 96: 68: 549: 463: 75: 49: 516: 306:. The dbm manages associative arrays of arbitrary data by use of a single key (a primary key). Modern implementations include 82: 533: 64: 115: 318:
precedes the concept of a NoSQL and is rarely mentioned in modern discourse, it is used by many pieces of software.
211:(RDB). RDBs predefine the data structure in the database as a series of tables containing fields with well defined 167: 600: 244: 53: 511: 456: 683: 678: 668: 491: 408: 216: 89: 595: 432: 373: 178: 172: 688: 673: 449: 184: 642: 388: 307: 42: 698: 368: 19:
This article is about a storage system architecture. For the mode of data representation, see
590: 496: 378: 330: 261: 8: 559: 208: 223:
to store the same data, which can lead to large performance gains in certain workloads.
693: 605: 585: 486: 272: 20: 610: 299: 276: 257: 149: 133: 242:, are also key–value databases internally, adding the concept of the relationships ( 620: 506: 188:
within them, each containing data. These records are stored and retrieved using a
528: 334: 291: 280: 265: 227: 220: 523: 472: 235: 153: 325:
which is used as storage engine for other database management systems such as
203:
A table showing different formatted data values associated with different keys
136:
showing a key–value pair, in this instance a number and its base-ten logarithm
662: 625: 501: 363: 192:
that uniquely identifies the record, and is used to find the data within the
148:, is a data storage paradigm designed for storing, retrieving, and managing 632: 569: 295: 207:
Key–value databases work in a very different fashion from the better known
647: 564: 383: 311: 615: 554: 162: 128: 338: 212: 31: 358: 346: 326: 303: 239: 193: 441: 294:(database manager), which is a 1979 library originally written by 322: 342: 231: 230:
after 2010 has led to a renaissance as part of the broader
199: 56:. Unsourced material may be challenged and removed. 321:A more recent example of a key-value database is 302:, provided through programming languages such as 660: 248:) between records as a first class data type. 457: 132:A tabular data card proposed for Babbage's 464: 450: 116:Learn how and when to remove this message 198: 127: 661: 445: 251: 182:, which in turn have many different 54:adding citations to reliable sources 25: 471: 13: 14: 710: 268:. Some support ordering of keys. 30: 156:more commonly known today as a 41:needs additional citations for 426: 401: 1: 394: 256:Key–value databases can use 7: 352: 217:object-oriented programming 10: 715: 374:Document-oriented database 18: 578: 542: 479: 329:. Other examples include 290:The Unix system provides 166:. Dictionaries contain a 643:Ordered Key-Value Store 389:Ordered Key-Value Store 298:. It is also ported to 534:Entity–attribute–value 369:Distributed data store 275:, while others employ 204: 137: 433:Oracle NoSQL Database 202: 131: 16:Data storage paradigm 379:Multi-model database 331:Aerospike (database) 262:eventual consistency 209:relational databases 65:"Key–value database" 50:improve this article 684:Key-value databases 512:Entity–relationship 271:Some maintain data 679:Associative arrays 669:Types of databases 277:solid-state drives 258:consistency models 252:Types and examples 205: 150:associative arrays 142:key–value database 138: 656: 655: 601:Object–relational 596:Document-oriented 550:Multi-dimensional 409:"Storage Engines" 300:Microsoft Windows 134:Analytical Engine 126: 125: 118: 100: 706: 621:Transaction time 466: 459: 452: 443: 442: 436: 430: 424: 423: 421: 419: 405: 121: 114: 110: 107: 101: 99: 58: 34: 26: 714: 713: 709: 708: 707: 705: 704: 703: 689:Data management 674:Database theory 659: 658: 657: 652: 638:Key–value store 591:Column-oriented 579:Implementations 574: 538: 529:Object-oriented 475: 473:Database models 470: 440: 439: 431: 427: 417: 415: 407: 406: 402: 397: 355: 335:Amazon DynamoDB 273:in memory (RAM) 266:serializability 254: 236:graph databases 234:movement. Some 228:cloud computing 146:key–value store 122: 111: 105: 102: 59: 57: 47: 35: 24: 17: 12: 11: 5: 712: 702: 701: 696: 691: 686: 681: 676: 671: 654: 653: 651: 650: 645: 640: 635: 633:XML data store 630: 629: 628: 623: 618: 608: 603: 598: 593: 588: 582: 580: 576: 575: 573: 572: 567: 562: 557: 552: 546: 544: 540: 539: 537: 536: 531: 526: 521: 520: 519: 509: 504: 499: 494: 489: 483: 481: 477: 476: 469: 468: 461: 454: 446: 438: 437: 425: 399: 398: 396: 393: 392: 391: 386: 381: 376: 371: 366: 361: 354: 351: 304:Perl for Win32 281:rotating disks 253: 250: 154:data structure 124: 123: 106:September 2021 38: 36: 29: 21:Key–value pair 15: 9: 6: 4: 3: 2: 711: 700: 699:Data analysis 697: 695: 692: 690: 687: 685: 682: 680: 677: 675: 672: 670: 667: 666: 664: 649: 646: 644: 641: 639: 636: 634: 631: 627: 626:Decision time 624: 622: 619: 617: 614: 613: 612: 609: 607: 604: 602: 599: 597: 594: 592: 589: 587: 584: 583: 581: 577: 571: 568: 566: 563: 561: 558: 556: 553: 551: 548: 547: 545: 541: 535: 532: 530: 527: 525: 522: 518: 515: 514: 513: 510: 508: 505: 503: 500: 498: 495: 493: 490: 488: 485: 484: 482: 480:Common models 478: 474: 467: 462: 460: 455: 453: 448: 447: 444: 434: 429: 414: 410: 404: 400: 390: 387: 385: 382: 380: 377: 375: 372: 370: 367: 365: 364:Data analysis 362: 360: 357: 356: 350: 348: 344: 340: 336: 332: 328: 324: 319: 317: 313: 309: 308:sdbm, GNU dbm 305: 301: 297: 293: 288: 284: 282: 278: 274: 269: 267: 263: 260:ranging from 259: 249: 247: 246: 241: 237: 233: 229: 224: 222: 218: 214: 210: 201: 197: 195: 191: 187: 186: 181: 180: 175: 174: 169: 165: 164: 159: 155: 151: 147: 143: 135: 130: 120: 117: 109: 98: 95: 91: 88: 84: 81: 77: 74: 70: 67: –  66: 62: 61:Find sources: 55: 51: 45: 44: 39:This article 37: 33: 28: 27: 22: 637: 570:XML database 543:Other models 492:Hierarchical 428: 416:. Retrieved 412: 403: 320: 315: 296:Ken Thompson 289: 285: 270: 255: 243: 225: 206: 189: 183: 177: 171: 161: 157: 145: 141: 139: 112: 103: 93: 86: 79: 72: 60: 48:Please help 43:verification 40: 648:Triplestore 565:Star schema 497:Dimensional 418:16 November 384:Tuple space 314:. Although 312:Berkeley DB 663:Categories 616:Valid time 507:Relational 395:References 238:, such as 213:data types 168:collection 163:hash table 158:dictionary 76:newspapers 694:Databases 606:Deductive 586:Flat file 339:Memcached 611:Temporal 560:Semantic 517:Enhanced 413:ArangoDB 359:Big data 353:See also 347:ScyllaDB 327:ArangoDB 245:pointers 240:ArangoDB 194:database 152:, and a 502:Network 323:RocksDB 179:records 173:objects 90:scholar 345:, and 310:, and 221:memory 185:fields 92:  85:  78:  71:  63:  555:Array 524:Graph 343:Redis 232:NoSQL 176:, or 144:, or 97:JSTOR 83:books 487:Flat 420:2020 69:news 316:dbm 292:dbm 279:or 264:to 196:. 190:key 170:of 160:or 52:by 665:: 411:. 349:. 341:, 337:, 333:, 283:. 140:A 465:e 458:t 451:v 435:. 422:. 119:) 113:( 108:) 104:( 94:· 87:· 80:· 73:· 46:. 23:.

Index

Key–value pair

verification
improve this article
adding citations to reliable sources
"Key–value database"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message

Analytical Engine
associative arrays
data structure
hash table
collection
objects
records
fields
database

relational databases
data types
object-oriented programming
memory
cloud computing
NoSQL
graph databases

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.