เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

2019 เด…เดตเดธเดพเดจเดคเตเดคเต‹เดŸเต†, Mail.ru เด•เตเดฒเต—เดกเต iOS เดŸเต€เดฎเดฟเตฝ เดเดฑเต†เด•เตเด•เดพเดฒเดฎเดพเดฏเดฟ เด•เดพเดคเตเดคเดฟเดฐเตเดจเตเดจ เด’เดฐเต เด‡เดตเตปเตเดฑเต เดธเด‚เดญเดตเดฟเดšเตเดšเต. เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เด…เดตเดธเตเดฅเดฏเตเดŸเต† เดธเตเดฅเดฟเดฐเดฎเดพเดฏ เดธเด‚เดญเดฐเดฃเดคเตเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดงเดพเดจ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดฎเตŠเดฌเตˆเตฝ เดฒเต‹เด•เดคเตเดคเดฟเดจเต เดตเดณเดฐเต† เดตเดฟเดšเดฟเดคเตเดฐเดฎเดพเดฏเดฟ เดฎเดพเดฑเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดฎเดฟเดจเตเดจเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟ-เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต (เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ). เด•เดŸเตเดŸเดฟเดจเต เดคเดพเดดเต† เดžเด™เตเด™เตพ เดจเดพเดฒเต เดญเดพเด—เด™เตเด™เดณเดพเดฏเดฟ เด…เดคเดฟเตปเตเดฑเต† เดตเดฟเดถเดฆเดฎเดพเดฏ เด…เดตเดฒเต‹เด•เดจเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเดพเด—เตเดฆเดพเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เด†เดฆเตเดฏเด‚, เด…เดคเตเดคเดฐเด‚ เดจเดฟเดธเตเดธเดพเดฐเดฎเดฒเตเดฒเดพเดคเตเดคเดคเตเด‚ เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเตเดณเตเดณเดคเตเดฎเดพเดฏ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดชเตเดชเดฟเตปเตเดฑเต† เด•เดพเดฐเดฃเด™เตเด™เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เดพเด‚. เดคเตเดŸเตผเดจเตเดจเต, เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเดฑเดฟเตปเตเดฑเต† เดนเตƒเดฆเดฏเดญเดพเด—เดคเตเดคเตเดณเตเดณ เดฎเต‚เดจเตเดจเต เดธเตเดคเด‚เดญเด™เตเด™เตพ เดชเดฐเดฟเด—เดฃเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‡เด•เตเด•เต เดžเด™เตเด™เตพ เดจเต€เด™เตเด™เตเด‚: เดฎเต†เดฎเตเดฎเดฑเดฟ-เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเดฒเตเด•เตพ, เดฌเดฟ+-เดŸเตเดฐเต€, เด‡เดŸเดชเดพเดŸเตเด•เดณเตเด‚ เดฎเตพเดŸเตเดŸเดฟเดตเต‡เตผเดทเดจเตเด‚ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด•เต‹เดชเตเดชเดฟ-เด“เตบ-เดฑเตˆเดฑเตเดฑเต เดธเดฎเต€เดชเดจเด‚. เด…เดตเดธเดพเดจเดฎเดพเดฏเดฟ, เดฎเดงเตเดฐเดชเดฒเดนเดพเดฐเดคเตเดคเดฟเดจเต - เดชเตเดฐเดพเดฏเต‹เด—เดฟเด• เดญเดพเด—เด‚. เดฒเต‹-เดฒเต†เดตเตฝ เด•เต€-เดตเดพเดฒเตเดฏเต‚ API-เดฏเตเดŸเต† เดฎเตเด•เดณเดฟเตฝ เด’เดฐเต เดธเต‚เดšเดฟเด• เด‰เตพเดชเตเดชเต†เดŸเต† เดจเดฟเดฐเดตเดงเดฟ เดชเดŸเตเดŸเดฟเด•เด•เดณเตเดณเตเดณ เด’เดฐเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดธเตเด•เต€เดฎ เดŽเด™เตเด™เดจเต† เดฐเต‚เดชเด•เตฝเดชเตเดชเดจ เดšเต†เดฏเตเดฏเดพเดฎเต†เดจเตเดจเตเด‚ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเดฎเต†เดจเตเดจเตเด‚ เด…เดคเดฟเตฝ เดžเด™เตเด™เตพ เดจเต‹เด•เตเด•เตเด‚.

เด‰เดณเตเดณเดŸเด•เตเด•เด‚

  1. เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดšเต‹เดฆเดจเด‚
  2. LMDB เดชเตŠเดธเดฟเดทเดจเดฟเด‚เด—เต
  3. เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดฎเต‚เดจเตเดจเต เดคเต‚เดฃเตเด•เตพ
    3.1. เดคเดฟเดฎเดฟเด‚เด—เดฒเด‚ #1. เดฎเต†เดฎเตเดฎเดฑเดฟ เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเดฒเตเด•เตพ
    3.2. เดคเดฟเดฎเดฟเด‚เด—เดฒเด‚ #2. เดฌเดฟ+-เดฎเดฐเด‚
    3.3. เดคเดฟเดฎเดฟเด‚เด—เดฒเด‚ #3. เด•เต‹เดชเตเดชเดฟ-เด“เตบ-เดฑเตˆเดฑเตเดฑเต
  4. เด•เต€-เดตเดพเดฒเตเดฏเต‚ API-เดฏเตเดŸเต† เดฎเตเด•เดณเดฟเตฝ เด’เดฐเต เดกเดพเดฑเตเดฑเดพ เดธเตเด•เต€เดฎ เดฐเต‚เดชเด•เตฝเดชเตเดชเดจ เดšเต†เดฏเตเดฏเตเดจเตเดจเต
    4.1. เด…เดŸเดฟเดธเตเดฅเดพเดจ เด…เดฎเต‚เตผเดคเตเดคเด™เตเด™เตพ
    4.2. เดŸเต‡เดฌเดฟเตพ เดฎเต‹เดกเดฒเดฟเด‚เด—เต
    4.3. เดชเดŸเตเดŸเดฟเด•เด•เตพ เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เดฎเต‹เดกเดฒเดฟเด‚เด—เต เดฌเดจเตเดงเด™เตเด™เตพ

1. เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดšเต‹เดฆเดจเด‚

2015-เตฝ เด’เดฐเต เดตเตผเดทเด‚, เดžเด™เตเด™เดณเตเดŸเต† เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตปเตเดฑเต† เด‡เตปเตเดฑเตผเดซเต‡เดธเต เดŽเดคเตเดฐ เดคเดตเดฃ เด•เดพเดฒเดคเดพเดฎเดธเดฎเดพเดฃเต†เดจเตเดจเต เด…เดณเด•เตเด•เดพเตป เดžเด™เตเด™เตพ เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเดฟ. เด’เดฐเต เด•เดพเดฐเดฃเดคเตเดคเดพเดฒเดพเดฃเต เดžเด™เตเด™เตพ เด‡เดคเต เดšเต†เดฏเตเดคเดคเต. เด‰เดชเดฏเต‹เด•เตเดคเตƒ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเต‹เดŸเต เดšเดฟเดฒเดชเตเดชเต‹เตพ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดชเตเดฐเดคเดฟเด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต เดจเดฟเตผเดคเตเดคเตเดจเตเดจเดคเดพเดฏเดฟ เดžเด™เตเด™เตพเด•เตเด•เต เดชเดคเดฟเดตเดพเดฏเดฟ เดชเดฐเดพเดคเดฟเด•เตพ เดฒเดญเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต: เดฌเดŸเตเดŸเดฃเตเด•เตพ เด…เดฎเตผเดคเตเดคเดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ, เดฒเดฟเดธเตเดฑเตเดฑเตเด•เตพ เดธเตเด•เตเดฐเต‹เตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดฟเดฒเตเดฒ, เดฎเตเดคเดฒเดพเดฏเดต. เด…เดณเดตเตเด•เดณเตเดŸเต† เดฎเต†เด•เตเด•เดพเดจเดฟเด•เตเดธเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดชเดฑเดžเตเดžเต AvitoTech-เตฝ, เด…เดคเดฟเดจเดพเตฝ เด‡เดตเดฟเดŸเต† เดžเดพเตป เดจเดฎเตเดชเดฑเตเด•เดณเตเดŸเต† เด•เตเดฐเดฎเด‚ เดฎเดพเดคเตเดฐเด‚ เดจเตฝเด•เตเดจเตเดจเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เด…เดณเด•เตเด•เตฝ เดซเดฒเด™เตเด™เตพ เดžเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดคเดฃเตเดคเตเดค เดฎเดดเดฏเดพเดฏเดฟ. เดฎเดฐเดตเดฟเดชเตเดชเดฟเด•เตเด•เตฝ เดฎเต‚เดฒเดฎเตเดฃเตเดŸเดพเด•เตเดจเตเดจ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เดฎเดฑเตเดฑเต‡เดคเดฟเดจเต‡เด•เตเด•เดพเดณเตเด‚ เด•เต‚เดŸเตเดคเดฒเดพเดฃเต†เดจเตเดจเต เด‡เดคเต เดฎเดพเดฑเดฟ. เดˆ เดตเดธเตเดคเตเดค เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเต เด—เตเดฃเดจเดฟเดฒเดตเดพเดฐเดคเตเดคเดฟเตปเตเดฑเต† เดชเตเดฐเดงเดพเดจ เดธเดพเด™เตเด•เต‡เดคเดฟเด• เดธเต‚เดšเด•เด‚ เด•เตเดฐเดพเดทเต เดซเตเดฐเต€ เด†เดฏเดฟเดฐเตเดจเตเดจเตเดตเต†เด™เตเด•เดฟเตฝ, เดซเต‹เด•เตเด•เดธเดฟเดจเต เดถเต‡เดทเด‚ เดฎเดพเดฑเตเดฑเดฟ เดซเตเดฐเต€เดธเต เดซเตเดฐเต€เดฏเดฟเตฝ.

เดชเดฃเดฟเดคเดคเต เดซเตเดฐเต€เดธเตเด•เดณเตเดณเตเดณ เดกเดพเดทเตโ€Œเดฌเต‹เตผเดกเต เดšเต†เดฒเดตเดดเดฟเดšเตเดšเดคเดฟเดจเต เดถเต‡เดทเดตเตเด‚ เด…เดณเดตเต ะธ เด—เตเดฃเดฎเต‡เดจเตเดฎเดฏเตเดณเตเดณ เด…เดตเดฐเตเดŸเต† เด•เดพเดฐเดฃเด™เตเด™เดณเตเดŸเต† เดตเดฟเดถเด•เดฒเดจเดคเตเดคเดฟเตฝ, เดชเตเดฐเดงเดพเดจ เดถเดคเตเดฐเต เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ - เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตปเตเดฑเต† เดชเตเดฐเดงเดพเดจ เดคเตเดฐเต†เดกเดฟเตฝ เด•เดจเดคเตเดค เดฌเดฟเดธเดฟเดจเดธเตเดธเต เดฏเตเด•เตเดคเดฟ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฟ. เดˆ เด…เดชเดฎเดพเดจเดคเตเดคเต‹เดŸเตเดณเตเดณ เดธเตเดตเดพเดญเดพเดตเดฟเด• เดชเตเดฐเดคเดฟเด•เดฐเดฃเด‚, เด…เดคเต เดœเต‹เดฒเดฟ เดธเตเดŸเตเดฐเต€เดฎเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เดคเดณเตเดณเดฟเดตเดฟเดŸเดพเดจเตเดณเตเดณ เดœเตเดตเดฒเดฟเด•เตเด•เตเดจเตเดจ เด†เด—เตเดฐเดนเดฎเดพเดฏเดฟเดฐเตเดจเตเดจเต. เดˆ เดชเตเดฐเดถเตเดจเด‚ เดตเตเดฏเดตเดธเตเดฅเดพเดชเดฟเดคเดฎเดพเดฏเดฟ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดญเดพเดฐเด‚ เด•เตเดฑเดžเตเดž เด…เดญเดฟเดจเต‡เดคเดพเด•เตเด•เดณเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เด’เดฐเต เดฎเตพเดŸเตเดŸเดฟ-เดคเตเดฐเต†เดกเดกเต เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเตผ เดžเด™เตเด™เตพ เด…เดตเดฒเด‚เดฌเดฟเดšเตเดšเต. iOS เดฒเต‹เด•เดคเตเดคเดฟเดจเดพเดฏเตเดณเตเดณ เด…เดคเดฟเตปเตเดฑเต† เด…เดกเดพเดชเตเดฑเตเดฑเต‡เดทเดจเดพเดฏเดฟ เดžเดพเตป เด‡เดคเต เดธเดฎเตผเดชเตเดชเดฟเดšเตเดšเต เดฐเดฃเตเดŸเต เดคเตเดฐเต†เดกเตเด•เตพ เด•เต‚เดŸเตเดŸเดพเดฏ เดŸเตเดตเดฟเดฑเตเดฑเดฑเดฟเดฒเตเด‚ เดนเดฌเตเดฐเต†เดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดฒเต‡เด–เดจเด‚. เดจเดฟเดฒเดตเดฟเดฒเต† เดตเดฟเดตเดฐเดฃเดคเตเดคเดฟเตปเตเดฑเต† เดญเดพเด—เดฎเดพเดฏเดฟ, เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตปเตเดฑเต† เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดชเตเดชเดฟเดจเต† เดธเตเดตเดพเดงเต€เดจเดฟเดšเตเดš เดคเต€เดฐเตเดฎเดพเดจเดคเตเดคเดฟเตปเตเดฑเต† เดตเดถเด™เตเด™เตพ เดŠเดจเตเดจเดฟเดชเตเดชเดฑเดฏเดพเตป เดžเดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต.

เดธเดฟเดธเตเดฑเตเดฑเด‚ เด“เตผเด—เดจเตˆเดธเต‡เดทเตปเตเดฑเต† เด†เด•เตเดŸเตผ เดฎเต‹เดกเตฝ เด…เดจเตเดฎเดพเดจเดฟเด•เตเด•เตเดจเตเดจเดคเต เดฎเตพเดŸเตเดŸเดฟเดคเตเดฐเต†เดกเดฟเด‚เด—เต เด…เดคเดฟเตปเตเดฑเต† เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เดธเดคเตเดคเดฏเดพเดฏเดฟ เดฎเดพเดฑเตเดฎเต†เดจเตเดจเดพเดฃเต. เด…เดคเดฟเดฒเต† เดฎเต‹เดกเตฝ เด’เดฌเตเดœเด•เตเดฑเตเดฑเตเด•เตพ เดธเตเดŸเตเดฐเต€เด‚ เด…เดคเดฟเดฐเตเด•เตพ เด•เดŸเด•เตเด•เดพเตป เด‡เดทเตเดŸเดชเตเดชเต†เดŸเตเดจเตเดจเต. เด…เดตเตผ เด‡เดคเต เดšเดฟเดฒเดชเตเดชเต‹เตพ เด‡เดตเดฟเดŸเต†เดฏเตเด‚ เด…เด™เตเด™เต‹เดŸเตเดŸเตเด‚ เด‡เด™เตเด™เต‹เดŸเตเดŸเตเด‚ เด…เดฒเตเดฒ, เดฎเดฟเด•เตเด•เดตเดพเดฑเตเด‚ เดŽเดฒเตเดฒเดพเดฏเดฟเดŸเดคเตเดคเตเด‚ เดจเดฟเดฐเดจเตเดคเดฐเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเดšเตเดš เดกเดฏเด—เตเดฐเดพเดฎเดฟเดฒเต† เด…เดŸเดฟเดธเตเดฅเดพเดจ เด˜เดŸเด•เด™เตเด™เดณเดฟเดฒเตŠเดจเตเดจเดพเดฃเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต. เดฎเดพเด•เตเดฐเต‹ เดชเดพเดฑเตเดฑเต‡เตบ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต เด‡เดคเดฟเตปเตเดฑเต† เดชเตเดฐเดงเดพเดจ เดฆเตŒเดคเตเดฏเด‚ เดชเด™เตเด•เดฟเดŸเตเดŸ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต. เดŽเตปเตเดฑเตผเดชเตเดฐเตˆเดธเต เดฒเต‹เด•เดคเตเดคเต เดธเต‡เดตเดจเด™เตเด™เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เดกเดพเดฑเตเดฑ เดธเดฟเตปเด•เตเดฐเตŠเดฃเตˆเดธเต‡เดทเตป เดธเด‚เด˜เดŸเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เด‡เดคเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เด™เตเด•เดฟเตฝ, เดจเดŸเตป เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเดฑเดฟเตปเตเดฑเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ - เดคเตเดฐเต†เดกเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเดฒเตเดณเตเดณ เดกเดพเดฑเตเดฑ. เด…เดคเดฟเดจเดพเตฝ, เด’เดฐเต เดฎเตพเดŸเตเดŸเดฟ-เดคเตเดฐเต†เดกเต เดชเดฐเดฟเดคเดธเตเดฅเดฟเดคเดฟเดฏเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เด•เตเดฑเดžเตเดž เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเตเด•เตพ เดชเต‹เดฒเตเด‚ เด‰เดฃเตเดŸเดพเด•เตเด•เดพเดคเตเดค เด’เดฐเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดžเด™เตเด™เตพเด•เตเด•เต เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเตเด‚, เด‡เดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดฒเดญเดฟเด•เตเด•เตเดจเตเดจ เดตเดธเตเดคเตเด•เตเด•เตพ เด•เตเดฑเดžเตเดžเดคเต เดคเตเดฐเต†เดกเต-เดธเตเดฐเด•เตเดทเดฟเดคเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚, เด•เต‚เดŸเดพเดคเต† เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดฎเดพเดฑเตเดฑเดพเดจเดพเดตเดพเดคเตเดคเดคเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚ เดŽเดจเตเดจเดพเดฃเต เด‡เดคเดฟเดจเตผเดคเตเดฅเด‚. เดจเดฟเด™เตเด™เตพเด•เตเด•เดฑเดฟเดฏเดพเดตเตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต‡เดคเต เด’เดฐเต เดฒเต‹เด•เตเด•เดฟเด‚เด—เตเด‚ เด…เดตเดฒเด‚เดฌเดฟเด•เตเด•เดพเดคเต† เดจเดฟเดฐเดตเดงเดฟ เดคเตเดฐเต†เดกเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เด’เดฐเต‡เดธเดฎเดฏเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚, เด‡เดคเต เดชเตเดฐเด•เดŸเดจเดคเตเดคเดฟเตฝ เด—เตเดฃเด‚ เดšเต†เดฏเตเดฏเตเด‚.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตปเตเดฑเต† เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดชเตเดชเดฟเดจเต† เดธเตเดตเดพเดงเต€เดจเดฟเดšเตเดš เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เดชเตเดฐเดงเดพเดจ เด˜เดŸเด•เด‚ เดžเด™เตเด™เดณเตเดŸเต† เด•เตเดฒเต—เดกเต API เด†เดฏเดฟเดฐเตเดจเตเดจเต. เดœเดฟเดฑเตเดฑเต เดธเตเดตเต€เด•เดฐเดฟเดšเตเดš เดธเดฟเตปเด•เตเดฐเตŠเดฃเตˆเดธเต‡เดทเตป เดธเดฎเต€เดชเดจเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเดพเดฃเต เด‡เดคเต เดชเตเดฐเดšเต‹เดฆเดจเด‚ เด‰เตพเด•เตเด•เตŠเดฃเตเดŸเดคเต. เด…เดตเดจเต†เดชเตเดชเต‹เดฒเต† เดžเด™เตเด™เดณเตเด‚ เดฒเด•เตเดทเตเดฏเดฎเดพเด•เตเด•เดฟ เด“เดซเตโ€Œเดฒเตˆเตป-เด†เดฆเตเดฏ API, เด‡เดคเต เด•เตเดฒเต—เดกเต เด•เตเดฒเดฏเตปเตเดฑเตเด•เตพเด•เตเด•เต เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฃเต†เดจเตเดจเต เดคเต‹เดจเตเดจเตเดจเตเดจเต. เด…เดตเตผ เด’เดฐเดฟเด•เตเด•เตฝ เดฎเดพเดคเตเดฐเดฎเต‡ เด•เตเดฒเต—เดกเดฟเตปเตเดฑเต† เดฎเตเดดเตเดตเตป เด…เดตเดธเตเดฅเดฏเตเด‚ เดชเดฎเตเดชเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเดณเตเดณเต‚ เดŽเดจเตเดจเต เด…เดจเตเดฎเดพเดจเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดŸเต, เดคเตเดŸเตผเดจเตเดจเต เดญเต‚เดฐเดฟเดญเดพเด—เด‚ เด•เต‡เดธเตเด•เดณเดฟเดฒเตเด‚ เดธเดฎเดจเตเดตเดฏเด‚ เดฎเดพเดฑเตเดฑเด™เตเด™เดณเดฟเดฒเต‚เดŸเต† เดธเด‚เดญเดตเดฟเด•เตเด•เตเด‚. เด…เดฏเตเดฏเต‹, เดˆ เด…เดตเดธเดฐเด‚ เด‡เดชเตเดชเต‹เดดเตเด‚ เดธเตˆเดฆเตเดงเดพเดจเตเดคเดฟเด• เดฎเต‡เด–เดฒเดฏเดฟเตฝ เดฎเดพเดคเตเดฐเดฎเดพเดฃเต, เดชเตเดฐเดพเดฏเต‹เด—เดฟเด•เดฎเดพเดฏเดฟ เดชเดพเดšเตเดšเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดฃเดฎเต†เดจเตเดจเต เด•เตเดฒเดฏเตปเตเดฑเตเด•เตพ เดชเด เดฟเดšเตเดšเดฟเดŸเตเดŸเดฟเดฒเตเดฒ. เด‡เดคเดฟเดจเต เดตเดธเตเดคเตเดจเดฟเดทเตเด เดฎเดพเดฏ เดจเดฟเดฐเดตเดงเดฟ เด•เดพเดฐเดฃเด™เตเด™เดณเตเดฃเตเดŸเต, เด…เดต เด†เดฎเตเด–เด‚ เดตเตˆเด•เดฟเดชเตเดชเดฟเด•เตเด•เดพเดคเดฟเดฐเดฟเด•เตเด•เดพเตป, เดžเด™เตเด™เตพ เดฌเตเดฐเดพเด•เตเด•เดฑเตเดฑเตเด•เตพ เด‰เดชเต‡เด•เตเดทเดฟเด•เตเด•เตเด‚. เด‡เดชเตเดชเต‹เตพ, เด•เต‚เดŸเตเดคเตฝ เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเตเดณเตเดณเดคเต เด’เดฐเต API "A" เดŽเดจเตเดจเตเด‚ เด…เดคเดฟเตปเตเดฑเต† เด‰เดชเดญเต‹เด•เตเดคเดพเดตเต "B" เดŽเดจเตเดจเต เดชเดฑเดฏเดพเดคเดฟเดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ เดŽเดจเตเดคเต เดธเด‚เดญเดตเดฟเด•เตเด•เตเด‚ เดŽเดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดชเดพเด เดคเตเดคเดฟเตปเตเดฑเต† เดชเตเดฐเดฌเต‹เดงเดจเดชเดฐเดฎเดพเดฏ เดจเดฟเด—เดฎเดจเด™เตเด™เดณเดพเดฃเต.

เด…เดคเดฟเดจเดพเตฝ, เด’เดฐเต เดชเตเตพ เด•เดฎเดพเตปเดกเต เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ, เด’เดฐเต เดฒเต‹เด•เตเด•เตฝ เดธเตเดจเดพเดชเตเดชเตเดทเต‹เดŸเตเดŸเดฟเดฒเต‡เด•เตเด•เต เดชเดพเดšเตเดšเตเด•เตพ เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดชเด•เดฐเด‚, เด…เดคเดฟเตปเตเดฑเต† เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏ เด…เดตเดธเตเดฅเดฏเต† เดชเต‚เตผเดฃเตเดฃ เดธเต†เตผเดตเตผ เด…เดตเดธเตเดฅเดฏเตเดฎเดพเดฏเดฟ เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจ git เดจเดฟเด™เตเด™เตพ เดธเด™เตเด•เตฝเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เด™เตเด•เดฟเตฝ, เด•เตเดฒเต—เดกเดฟเตฝ เดธเดฎเดจเตเดตเดฏเด‚ เดŽเด™เตเด™เดจเต† เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจเต เดŽเดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เตƒเดคเตเดฏเดฎเดพเดฏ เดงเดพเดฐเดฃ เดฒเดญเดฟเด•เตเด•เตเด‚. เด‰เดชเดญเต‹เด•เตเดคเดพเด•เตเด•เตพ. เด‡เดคเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป, เดŽเดฒเตเดฒเดพ เดธเต†เตผเดตเดฑเตเด•เดณเต†เดฏเตเด‚ เดฒเต‹เด•เตเด•เตฝ เดซเดฏเดฒเตเด•เดณเต†เดฏเตเด‚ เด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดฎเต†เดฑเตเดฑเดพ-เดตเดฟเดตเดฐเด™เตเด™เตพเด•เตเด•เตŠเดชเตเดชเด‚ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดฐเดฃเตเดŸเต DOM เดŸเตเดฐเต€เด•เตพ เด…เดจเตเดตเดฆเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต†เดจเตเดจเต เดŠเดนเดฟเด•เตเด•เดพเตป เดŽเดณเตเดชเตเดชเดฎเดพเดฃเต. เด’เดฐเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเต 500 เด†เดฏเดฟเดฐเด‚ เดซเดฏเดฒเตเด•เตพ เด•เตเดฒเต—เดกเดฟเตฝ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เด™เตเด•เดฟเตฝ, เด…เดคเต เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต 1 เดฆเดถเดฒเด•เตเดทเด‚ เดจเต‹เดกเตเด•เดณเตเดณเตเดณ เดฐเดฃเตเดŸเต เดฎเดฐเด™เตเด™เตพ เดชเตเดจเตผเดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดจเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เดŽเดจเตเดจเดพเตฝ เด“เดฐเต‹ เดจเต‹เดกเตเด‚ เด‰เดชเดตเดฟเดทเดฏเด™เตเด™เดณเตเดŸเต† เด’เดฐเต เด—เตเดฐเดพเดซเต เด…เดŸเด™เตเด™เตเดจเตเดจ เด’เดฐเต เดธเด‚เด—เตเดฐเดนเดฎเดพเดฃเต. เดˆ เดตเต†เดณเดฟเดšเตเดšเดคเตเดคเดฟเตฝ, เดชเตเดฐเตŠเดซเตˆเดฒเดฟเด‚เด—เต เดซเดฒเด™เตเด™เตพ เดชเตเดฐเดคเต€เด•เตเดทเดฟเดšเตเดšเดฟเดฐเตเดจเตเดจเต. เดฒเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เด•เดฃเด•เตเด•เดฟเดฒเต†เดŸเตเด•เตเด•เดพเดคเต† เดคเดจเตเดจเต†, เด’เดฐเต เดตเดฒเดฟเดฏ เดธเด‚เด–เตเดฏ เดšเต†เดฑเดฟเดฏ เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เดจเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดฎเตเดณเตเดณ เดจเดŸเดชเดŸเดฟเด•เตเดฐเดฎเดคเตเดคเดฟเดจเต เดคเดจเตเดจเต† เด’เดฐเต เดšเดฟเดฒเตเดฒเดฟเด•เตเด•เดพเดถเตเด‚ เดšเดฟเดฒเดตเดพเด•เตเด‚. เด…เดŸเดฟเดธเตเดฅเดพเดจ เดธเดฎเดจเตเดตเดฏ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เด’เดฐเต เดตเดฒเดฟเดฏ เดธเด‚เด–เตเดฏเดฏเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเตฝ เดธเตเดฅเดฟเดคเดฟ เด•เต‚เดŸเตเดคเตฝ เดตเดทเดณเดพเด•เตเด•เตเดจเตเดจเต. เด‰เดชเดฏเต‹เด•เตเดคเตƒ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เดณเตเดŸเต†. เดคเตฝเดซเดฒเดฎเดพเดฏเดฟ, เด’เดฐเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เดชเตเดฐเดงเดพเดจ เดฎเดพเดจเดฆเดฃเตเดกเด‚ เดžเด™เตเด™เตพ เดถเดฐเดฟเดฏเดพเด•เตเด•เตเดจเตเดจเต - เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเตเด•เดณเตเดŸเต† เดšเดฒเดจเดพเดคเตเดฎเด• เด…เดฒเต‹เด•เตเด•เต‡เดทเตป เด‡เดฒเตเดฒเดพเดคเต† CRUD เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต.

เดฎเดฑเตเดฑเต เด†เดตเดถเตเดฏเด•เดคเด•เตพ เด•เต‚เดŸเตเดคเตฝ เดชเดฐเดฎเตเดชเดฐเดพเด—เดคเดตเตเด‚ เด…เดตเดฏเตเดŸเต† เดฎเตเดดเตเดตเตป เดชเดŸเตเดŸเดฟเด•เดฏเตเด‚ เดคเดพเดดเต† เดชเดฑเดฏเตเดจเตเดจเดตเดฏเดพเดฃเต.

  1. เดคเตเดฐเต†เดกเต เดธเตเดฐเด•เตเดท.
  2. เดฎเตพเดŸเตเดŸเดฟเดชเตเดฐเต‹เดธเดธเดฟเด‚เด—เต. เดคเตเดฐเต†เดกเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดชเตเดฐเดงเดพเดจ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด‚ เดเด’เดŽเดธเต เดŽเด•เตเดธเตเดฑเตเดฑเตปเดทเดจเตเด•เดณเตเด‚ เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เด…เดตเดธเตเดฅ เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เด’เดฐเต‡ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เด‰เดฆเดพเดนเดฐเดฃเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดจเตเดณเตเดณ เด†เด—เตเดฐเดนเดคเตเดคเดพเตฝ เดจเดฟเตผเดฆเตเดฆเต‡เดถเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต.
  3. เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดŽเตปเตเดฑเดฟเดฑเตเดฑเดฟเด•เดณเต† เดฎเดพเดฑเตเดฑเดพเดจเดพเดตเดพเดคเตเดค เดตเดธเตเดคเตเด•เตเด•เดณเดพเดฏเดฟ เดชเตเดฐเดคเดฟเดจเดฟเดงเต€เด•เดฐเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต
  4. CRUD เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเดฟเตฝ เดกเตˆเดจเดพเดฎเดฟเด•เต เด…เดฒเต‹เด•เตเด•เต‡เดทเดจเตเด•เดณเตŠเดจเตเดจเตเดฎเดฟเดฒเตเดฒ.
  5. เด…เดŸเดฟเดธเตเดฅเดพเดจ เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟเด•เตพเด•เตเด•เตเดณเตเดณ เด‡เดŸเดชเดพเดŸเต เดชเดฟเดจเตเดคเตเดฃ เดŽเดธเดฟเดเดกเดฟ: เด†เดฑเตเดฑเต‹เดฎเดฟเดธเดฟเดฑเตเดฑเดฟ, เดธเตเดฅเดฟเดฐเดค, เด’เดฑเตเดฑเดชเตเดชเต†เดŸเตฝ, เดตเดฟเดถเตเดตเดพเดธเตเดฏเดค.
  6. เดเดฑเตเดฑเดตเตเด‚ เดœเดจเดชเตเดฐเดฟเดฏเดฎเดพเดฏ เด•เต‡เดธเตเด•เดณเดฟเตฝ เดตเต‡เด—เดค.

เดˆ เด†เดตเดถเตเดฏเด•เดคเด•เตพเด•เตเด•เตŠเดชเตเดชเด‚, SQLite เด’เดฐเต เดจเดฒเตเดฒ เดšเต‹เดฏเดฟเดธเดพเดฏเดฟเดฐเตเดจเตเดจเต. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดฌเดฆเดฒเตเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดชเด เดจเดคเตเดคเดฟเตปเตเดฑเต† เดญเดพเด—เดฎเดพเดฏเดฟ, เดžเดพเตป เด’เดฐเต เดชเตเดธเตเดคเด•เด‚ เด•เดฃเตเดŸเต "LevelDB เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต". เด…เดตเดณเตเดŸเต† เดจเต‡เดคเตƒเดคเตเดตเดคเตเดคเดฟเตฝ, เดฏเดฅเดพเตผเดคเตเดฅ เด•เตเดฒเต—เดกเต เดธเดพเดนเดšเดฐเตเดฏเด™เตเด™เดณเดฟเดฒเต† เดตเตเดฏเดคเตเดฏเดธเตเดค เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เดณเตเดฎเดพเดฏเดฟ เดœเต‹เดฒเดฟเดฏเตเดŸเต† เดตเต‡เด—เดค เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดคเตเด•เตŠเดฃเตเดŸเต เด’เดฐเต เดฌเต†เดžเตเดšเตเดฎเดพเตผเด•เตเด•เต เดŽเดดเตเดคเดฟ. เดซเดฒเด‚ เดžเด™เตเด™เดณเตเดŸเต† เดตเดจเตเดฏเดฎเดพเดฏ เดชเตเดฐเดคเต€เด•เตเดทเด•เดณเต† เด•เดตเดฟเดžเตเดžเต. เดเดฑเตเดฑเดตเตเด‚ เดœเดจเดชเตเดฐเดฟเดฏเดฎเดพเดฏ เดธเดจเตเดฆเตผเดญเด™เตเด™เดณเดฟเตฝ - เดŽเดฒเตเดฒเดพ เดซเดฏเดฒเตเด•เดณเตเดŸเต†เดฏเตเด‚ เด…เดŸเตเด•เตเด•เดฟเดฏ เดฒเดฟเดธเตเดฑเตเดฑเดฟเตฝ เด’เดฐเต เด•เดดเตโ€Œเดธเตผ เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเต, เดคเดจเตเดจเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดกเดฏเดฑเด•เตโ€ŒเดŸเดฑเดฟเด•เตเด•เดพเดฏเดฟ เดŽเดฒเตเดฒเดพ เดซเดฏเดฒเตเด•เดณเตเดŸเต†เดฏเตเด‚ เด…เดŸเตเด•เตเด•เดฟเดฏ เดฒเดฟเดธเตเดฑเตเดฑเตเด‚ - LMDB SQLite-เดจเต‡เด•เตเด•เดพเตพ 10 เดฎเดŸเด™เตเด™เต เดตเต‡เด—เดคเดฏเตเดณเตเดณเดคเดพเดฏเดฟ เดฎเดพเดฑเดฟ. เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดชเตเดชเต เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

2. เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดชเตŠเดธเดฟเดทเดจเดฟเด‚เด—เต

LMDB เดŽเดจเตเดจเดคเต เดตเดณเดฐเต† เดšเต†เดฑเดฟเดฏ เด’เดฐเต เดฒเตˆเดฌเตเดฐเดฑเดฟเดฏเดพเดฃเต (10K เดตเดฐเดฟเด•เตพ เดฎเดพเดคเตเดฐเด‚), เด…เดคเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เดณเตเดŸเต† เดเดฑเตเดฑเดตเตเด‚ เดคเดพเดดเตเดจเตเดจ เด…เดŸเดฟเดธเตเดฅเดพเดจ เดชเดพเดณเดฟ - เดธเด‚เดญเดฐเดฃเด‚ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดฎเตเด•เดณเดฟเดฒเต† เดกเดฏเด—เตเดฐเด‚ เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเดคเต, เด‰เดฏเตผเดจเตเดจ เดฒเต†เดตเดฒเตเด•เตพ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจ SQLite-เดฎเดพเดฏเดฟ LMDB เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เด•เต‹เตผ เดกเดพเดฑเตเดฑเดฏเตเดณเตเดณ SQLite-เดจเต‡เด•เตเด•เดพเตพ เดถเดฐเดฟเดฏเดฒเตเดฒ เดŽเดจเตเดจเดพเดฃเต. BerkeleyDB, LevelDB, Sophia, RocksDB, เดฎเตเดคเดฒเดพเดฏเดต - เด’เดฐเต‡ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เดŽเดžเตเดšเดฟเดจเตเด•เดณเต† เดคเตเดฒเตเดฏ เดŽเดคเดฟเดฐเดพเดณเดฟเด•เดณเดพเดฏเดฟ เด‰เดฆเตเดงเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต เด•เต‚เดŸเตเดคเตฝ เดจเตเดฏเดพเดฏเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚. SQLite-เตปเตเดฑเต† เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เดŽเดžเตเดšเดฟเตป เด˜เดŸเด•เดฎเดพเดฏเดฟ LMDB เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เดธเด‚เดญเดตเดตเดฟเด•เดพเดธเด™เตเด™เตพ เดชเต‹เดฒเตเด‚ เด‰เดฃเตเดŸเต. 2012เดฒเดพเดฏเดฟเดฐเตเดจเตเดจเต เด‡เดคเตเดคเดฐเดฎเตŠเดฐเต เดชเดฐเต€เด•เตเดทเดฃเด‚ เดšเต†เดฒเดตเดดเดฟเดšเตเดšเต LMDB เดฎเตเด–เต‡เดจ เดนเต‹เดตเดพเตผเดกเต เดšเต. เดซเดฒเด™เตเด™เตพ เดตเดณเดฐเต† เด•เต—เดคเตเด•เด•เดฐเดฎเดพเดฏเดฟ เดฎเดพเดฑเดฟ, เด…เดฆเตเดฆเต‡เดนเดคเตเดคเดฟเตปเตเดฑเต† เดธเด‚เดฐเด‚เดญเด‚ OSS เดชเตเดฐเต‡เดฎเดฟเด•เตพ เดเดฑเตเดฑเต†เดŸเตเด•เตเด•เตเด•เดฏเตเด‚ เดตเตเดฏเด•เตเดคเดฟเดฏเดฟเตฝ เด…เดคเดฟเตปเตเดฑเต† เดคเตเดŸเตผเดšเตเดš เด•เดฃเตเดŸเต†เดคเตเดคเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดคเต. LumoSQL. 2020 เดœเดจเตเดตเดฐเดฟเดฏเดฟเตฝ, เดˆ เดชเดฆเตเดงเดคเดฟเดฏเตเดŸเต† เดฐเดšเดฏเดฟเดคเดพเดตเต เดกเต†เตป เดทเดฟเดฏเดฑเตผ เด†เดฏเดฟเดฐเตเดจเตเดจเต เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเดšเตเดšเต เด…เดคเต LinuxConfAu-เตฝ.

เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดชเตเดฐเดงเดพเดจเดฎเดพเดฏเตเด‚ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพเด•เตเด•เตเดณเตเดณ เดŽเดžเตเดšเดฟเตป เด†เดฏเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เดฒเตˆเดฌเตเดฐเดฑเดฟ เด…เดคเดฟเตปเตเดฑเต† เดฐเต‚เดชเดคเตเดคเดฟเดจเต เดกเต†เดตเดฒเดชเตเดชเตผเดฎเดพเดฐเต‹เดŸเต เด•เดŸเดชเตเดชเต†เดŸเตเดŸเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต OpenLDAP, เด…เดตเดฐเตเดŸเต† เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเดฟเตปเตเดฑเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเดฏเดฟ BerkeleyDB เดฏเดฟเตฝ เด•เดŸเตเดคเตเดค เด…เดคเตƒเดชเตเดคเดฟเดฏเตเดณเตเดณเดตเตผ. เด’เดฐเต เดฎเดฟเดคเดฎเดพเดฏ เดฒเตˆเดฌเตเดฐเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต เดฌเดฟ เดฎเดฐเด‚, เดนเต‹เดตเดพเตผเดกเต เดšเต เดจเดฎเตเดฎเตเดŸเต† เด•เดพเดฒเดคเตเดคเต† เดเดฑเตเดฑเดตเตเด‚ เดœเดจเดชเตเดฐเดฟเดฏเดฎเดพเดฏ เด’เดฐเต เดฌเดฆเตฝ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดžเตเดžเต. เดˆ เด•เดฅเดฏเตเด•เตเด•เตเด‚ เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เด†เดจเตเดคเดฐเดฟเด• เด˜เดŸเดจเดฏเตเด•เตเด•เตเด‚ เด…เดฆเตเดฆเต‡เดนเด‚ เดคเตปเตเดฑเต† เดตเดณเดฐเต† เดฐเดธเด•เดฐเดฎเดพเดฏ เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเต เดธเดฎเตผเดชเตเดชเดฟเดšเตเดšเต. "เดฎเดฟเดจเตเดจเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟ-เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต". เด’เดฐเต เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เดธเต—เด•เดฐเตเดฏเด‚ เด•เต€เดดเดŸเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดจเดฒเตเดฒ เด‰เดฆเดพเดนเดฐเดฃเด‚ เดฒเดฟเดฏเต‹เดจเดฟเดกเต เดฏเต‚เดฑเดฟเดฏเต‡เดตเต เดชเด™เตเด•เดฟเดŸเตเดŸเต (เด…เด•เตเด• เดฏเต†เดฒเดฟเดฏเต‹) เดนเตˆเดฒเต‹เดกเต 2015 เดฒเต† เดคเตปเตเดฑเต† เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเดฟเตฝ เดชเต‹เดธเดฟเดฑเตเดฑเต€เดตเต เดŸเต†เด•เตเดจเต‹เดณเดœเต€เดธเดฟเตฝ เดจเดฟเดจเตเดจเต "LMDB เดŽเดžเตเดšเดฟเตป เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดšเดพเดฎเตเดชเตเดฏเดจเดพเดฃเต". เด…เดคเดฟเตฝ, ReOpenLDAP เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดธเดฎเดพเดจเดฎเดพเดฏ เด’เดฐเต เดšเตเดฎเดคเดฒเดฏเตเดŸเต† เดชเดถเตเดšเดพเดคเตเดคเดฒเดคเตเดคเดฟเตฝ เด…เดฆเตเดฆเต‡เดนเด‚ LMDB-เดฏเต† เด•เตเดฑเดฟเดšเตเดšเต เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เตเดจเตเดจเต, LevelDB เด‡เดคเดฟเดจเด•เด‚ เดคเดพเดฐเดคเดฎเตเดฏ เดตเดฟเดฎเตผเดถเดจเดคเตเดคเดฟเดจเต เดตเดฟเดงเต‡เดฏเดฎเดพเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต. เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฟเดฏเดคเดฟเตปเตเดฑเต† เดซเดฒเดฎเดพเดฏเดฟ, เดชเต‹เดธเดฟเดฑเตเดฑเต€เดตเต เดŸเต†เด•เตเดจเต‹เดณเดœเต€เดธเดฟเดจเต เดธเดœเต€เดตเดฎเดพเดฏเดฟ เดตเดฟเด•เดธเดฟเดšเตเดšเตเด•เตŠเดฃเตเดŸเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดซเต‹เตผเด•เตเด•เต เดชเต‹เดฒเตเด‚ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเตเดจเตเดจเต MDBX เดตเดณเดฐเต† เดฐเตเดšเดฟเด•เดฐเดฎเดพเดฏ เดธเดตเดฟเดถเต‡เดทเดคเด•เตพ, เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต‡เดทเดจเตเด•เตพ เด•เต‚เดŸเดพเดคเต† เดฌเด—เต เดชเดฐเดฟเดนเดพเดฐเด™เตเด™เตพ.

เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดชเดฒเดชเตเดชเต‹เดดเตเด‚ เด’เดฐเต เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เด†เดฏเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดฎเต‹เดธเดฟเดฒเตเดฒ เดซเดฏเตผเดซเต‹เด•เตเดธเต เดฌเตเดฐเต—เดธเตผ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเต เด‡เดคเต เดจเดฟเดฐเดตเดงเดฟ เด†เดตเดถเตเดฏเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ, เด•เต‚เดŸเดพเดคเต†, เดชเดคเดฟเดชเตเดชเต 9 เดฎเตเดคเตฝ, Xcode เดฎเตเตปเด—เดฃเดจ เดธเต‚เดšเดฟเด•เด•เตพ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด…เดคเดฟเตปเตเดฑเต† SQLite.

เดฎเตŠเดฌเตˆเตฝ เดกเต†เดตเดฒเดชเตโ€Œเดฎเต†เตปเตเดฑเดฟเตปเตเดฑเต† เดฒเต‹เด•เดคเตเดคเตเด‚ เดˆ เดŽเตปเดœเดฟเตป เด…เดคเดฟเตปเตเดฑเต†เดคเดพเดฏ เด…เดŸเดฏเดพเดณเด‚ เดชเดคเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต. เด…เดคเดฟเตปเตเดฑเต† เด‰เดชเดฏเต‹เด—เดคเตเดคเดฟเตปเตเดฑเต† เดธเต‚เดšเดจเด•เตพ เด†เด•เดพเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเดพเด‚ เดŸเต†เดฒเดฟเด—เตเดฐเดพเดฎเดฟเดจเดพเดฏเตเดณเตเดณ iOS เด•เตเดฒเดฏเตปเตเดฑเดฟเตฝ. เดฒเดฟเด™เตเด•เตเดกเตเด‡เตป เด•เต‚เดŸเตเดคเตฝ เดฎเตเดจเตเดจเต‹เดŸเตเดŸเต เดชเต‹เดฏเดฟ เด…เดคเดฟเตปเตเดฑเต† เดนเต‹เด‚เด—เตเดฐเต—เตบ เดกเดพเดฑเตเดฑ เด•เดพเดทเดฟเด‚เด—เต เดซเตเดฐเต†เดฏเดฟเด‚เดตเตผเด•เตเด•เต เดฑเต‹เด•เตเด•เดฑเตเดฑเต เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เดกเดฟเดซเต‹เตพเดŸเตเดŸเต เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเดพเดฏเดฟ LMDB เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเต. เดชเดฑเดžเตเดžเต 2016 เดฒเต† เด…เดฆเตเดฆเต‡เดนเดคเตเดคเดฟเตปเตเดฑเต† เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ.

เด’เดฑเดพเด•เตเด•เดฟเดณเดฟเตปเตเดฑเต† เดจเดฟเดฏเดจเตเดคเตเดฐเดฃเดคเตเดคเดฟเดฒเดพเดฏเดคเดฟเดจเต เดถเต‡เดทเด‚ เดฌเต†เตผเด•เตเด•เตโ€Œเดฒเดฟเดกเดฟเดฌเดฟ เด…เดตเดถเต‡เดทเดฟเดชเตเดชเดฟเดšเตเดš เดธเตเดฅเดฒเดคเตเดคเต เดธเต‚เดฐเตเดฏเดจเดฟเตฝ เด’เดฐเต เดธเตเดฅเดพเดจเดคเตเดคเดฟเดจเดพเดฏเดฟ เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดตเดฟเดœเดฏเด•เดฐเดฎเดพเดฏเดฟ เดชเต‹เดฐเดพเดŸเตเด•เดฏเดพเดฃเต. เดธเดนเดชเดพเด เดฟเด•เดณเตเดฎเดพเดฏเดฟ เดคเดพเดฐเดคเดฎเตเดฏเดชเตเดชเต†เดŸเตเดคเตเดคเตเดฎเตเดชเต‹เตพ เดชเต‹เดฒเตเด‚ เด…เดคเดฟเตปเตเดฑเต† เดตเต‡เด—เดคเดฏเตเด•เตเด•เตเด‚ เดตเดฟเดถเตเดตเดพเดธเตเดฏเดคเดฏเตเด•เตเด•เตเด‚ เดฒเตˆเดฌเตเดฐเดฑเดฟ เดชเตเดฐเดฟเดฏเดชเตเดชเต†เดŸเตเดŸเดคเดพเดฃเต. เดจเดฟเด™เตเด™เตพเด•เตเด•เดฑเดฟเดฏเดพเดตเตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เดธเต—เดœเดจเตเดฏ เด‰เดšเตเดšเดญเด•เตเดทเดฃเด™เตเด™เดณเตŠเดจเตเดจเตเดฎเดฟเดฒเตเดฒ, เด•เต‚เดŸเดพเดคเต† LMDB, SQLite เดŽเดจเตเดจเดฟเดตเดฏเตเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดฎเตเดชเต‹เตพ เดจเดฟเด™เตเด™เตพ เด…เดญเดฟเดฎเตเด–เต€เด•เดฐเดฟเด•เตเด•เต‡เดฃเตเดŸเดฟเดตเดฐเตเดจเตเดจ เดŸเตเดฐเต‡เดกเต-เด“เดซเดฟเดจเต† เดžเดพเตป เดŠเดจเตเดจเดฟเดชเตเดชเดฑเดฏเดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต. เดตเตผเดงเดฟเดšเตเดš เดตเต‡เด—เดค เดŽเด™เตเด™เดจเต† เด•เตˆเดตเดฐเดฟเด•เตเด•เดพเดฎเต†เดจเตเดจเต เดฎเตเด•เดณเดฟเดฒเตเดณเตเดณ เดกเดฏเด—เตเดฐเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเต. เด†เดฆเตเดฏเด‚, เดกเดฟเดธเตเด•เต เดธเด‚เดญเดฐเดฃเดคเตเดคเดฟเดจเต เดฎเตเด•เดณเดฟเดฒเตเดณเตเดณ เด…เดฎเต‚เตผเดคเตเดคเต€เด•เดฐเดฃเดคเตเดคเดฟเตปเตเดฑเต† เด…เดงเดฟเด• เดชเดพเดณเดฟเด•เตพเด•เตเด•เดพเดฏเดฟ เดžเด™เตเด™เตพ เดชเดฃเด‚ เดจเตฝเด•เดฟเดฒเตเดฒ. เด…เดตเดฏเดฟเดฒเตเดฒเดพเดคเต† เด’เดฐเต เดจเดฒเตเดฒ เดตเดพเดธเตเดคเตเดตเดฟเดฆเตเดฏเดฏเตเด•เตเด•เต เด‡เดชเตเดชเต‹เดดเตเด‚ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒเต†เดจเตเดจเต เดตเตเดฏเด•เตเดคเดฎเดพเดฃเต, เด…เดต เด…เดจเดฟเดตเดพเดฐเตเดฏเดฎเดพเดฏเตเด‚ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เด•เต‹เดกเดฟเตฝ เดฆเตƒเดถเตเดฏเดฎเดพเด•เตเด‚, เดชเด•เตเดทเต‡ เด…เดต เดตเดณเดฐเต† เดธเต‚เด•เตเดทเตเดฎเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚. เด’เดฐเต เดจเดฟเตผเดฆเตเดฆเดฟเดทเตโ€ŒเดŸ เด…เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเต เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒเดพเดคเตเดค เดธเดตเดฟเดถเต‡เดทเดคเด•เตพ เด…เดตเดฏเดฟเตฝ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เดฟเดฒเตเดฒ, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, SQL เดญเดพเดทเดฏเดฟเดฒเต† เดšเต‹เดฆเตเดฏเด™เตเด™เตพเด•เตเด•เตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ. เดฐเดฃเตเดŸเดพเดฎเดคเดพเดฏเดฟ, เดกเดฟเดธเตเด•เต เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เดณเดฟเตฝ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเดŸเต† เดฎเดพเดชเตเดชเดฟเด‚เด—เต เด’เดชเตเดฑเตเดฑเดฟเดฎเตฝ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเต เดธเดพเดงเตเดฏเดฎเดพเด•เตเด‚. SQLite เด†เดฃเต†เด™เตเด•เดฟเตฝ เดŽเดจเตเดฑเต† เดœเต‡เดพเดฒเดฟเดฏเดฟเตฝ เด’เดฐเต เดถเดฐเดพเดถเดฐเดฟ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตปเตเดฑเต† เดถเดฐเดพเดถเดฐเดฟ เดธเตเดฑเตเดฑเดพเดฑเตเดฑเดฟเดธเตเดฑเตเดฑเดฟเด•เตเด•เตฝ เด†เดตเดถเตเดฏเด•เดคเด•เดณเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณเดคเดพเดฃเต, เด…เดชเตเดชเต‹เตพ เด’เดฐเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดกเต†เดตเดฒเดชเตเดชเตผ เดŽเดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดชเตเดฐเดงเดพเดจ เดœเต‹เดฒเดฟเดญเดพเดฐเด‚ เดธเดพเดนเดšเดฐเตเดฏเด™เตเด™เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดจเดจเตเดจเดพเดฏเดฟ เด…เดฑเดฟเดฏเดพเด‚. เด•เต‚เดŸเตเดคเตฝ เด‰เตฝเดชเตเดชเดพเดฆเดจเด•เตเดทเดฎเดฎเดพเดฏ เด’เดฐเต เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเดจเดพเดฏเดฟ, เดชเตเดฐเดพเดฐเด‚เดญ เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเตปเตเดฑเต† เดตเดฟเด•เดธเดจเดคเตเดคเดฟเดจเตเด‚ เดคเตเดŸเตผเดจเตเดจเตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃเดฏเตโ€Œเด•เตเด•เตเด‚ เดจเดฟเด™เตเด™เตพ เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเดšเตเดš เดตเดฟเดฒ เดจเตฝเด•เต‡เดฃเตเดŸเดฟเดตเดฐเตเด‚.

3. เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดฎเต‚เดจเตเดจเต เดคเต‚เดฃเตเด•เตพ

เด’เดฐเต เดชเด•เตเดทเดฟเดฏเตเดŸเต† เด•เดพเดดเตเดšเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดจเต‹เด•เตเด•เดฟเดฏเดคเดฟเดจเดพเตฝ, เด†เดดเดคเตเดคเดฟเตฝ เดชเต‹เด•เดพเดจเตเดณเตเดณ เดธเดฎเดฏเดฎเดพเดฏเดฟ. เด…เดŸเตเดคเตเดค เดฎเต‚เดจเตเดจเต เดตเดฟเดญเดพเด—เด™เตเด™เตพ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเตผ เดจเดฟเดฒเดจเดฟเตฝเด•เตเด•เตเดจเตเดจ เดชเตเดฐเดงเดพเดจ เดคเต‚เดฃเตเด•เดณเตเดŸเต† เดตเดฟเดถเด•เดฒเดจเดคเตเดคเดฟเดจเดพเดฏเดฟ เดจเต€เด•เตเด•เดฟเดตเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต:

  1. เดกเดฟเดธเตเด•เดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เด†เดจเตเดคเดฐเดฟเด• เดกเดพเดฑเตเดฑ เด˜เดŸเดจเด•เตพ เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดฎเตเดณเตเดณ เด’เดฐเต เดฎเต†เด•เตเด•เดพเดจเดฟเดธเดฎเดพเดฏเดฟ เดฎเต†เดฎเตเดฎเดฑเดฟ-เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเดฒเตเด•เตพ.
  2. เดธเด‚เดญเดฐเดฟเดšเตเดš เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เด˜เดŸเดจเดฏเตเดŸเต† เด’เดฐเต เด“เตผเด—เดจเตˆเดธเต‡เดทเดจเดพเดฏเดฟ B+-เดŸเตเดฐเต€.
  3. ACID เดŸเตเดฐเดพเตปเดธเดพเด•เตเดทเตป เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟเด•เดณเตเด‚ เดฎเตพเดŸเตเดŸเดฟเดตเต‡เตผเดทเดจเตเด‚ เดจเตฝเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดธเดฎเต€เดชเดจเดฎเต†เดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ เด•เต‹เดชเตเดชเดฟ-เด“เตบ-เดฑเตˆเดฑเตเดฑเต.

3.1 เดคเดฟเดฎเดฟเด‚เด—เดฒเด‚ #1. เดฎเต†เดฎเตเดฎเดฑเดฟ เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเดฒเตเด•เตพ

เดฎเต†เดฎเตเดฎเดฑเดฟ-เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเดฒเตเด•เตพ เดตเดณเดฐเต† เดชเตเดฐเดงเดพเดจเดชเตเดชเต†เดŸเตเดŸ เด’เดฐเต เดตเดพเดธเตเดคเตเดตเดฟเดฆเตเดฏเดพ เด˜เดŸเด•เดฎเดพเดฃเต, เด…เดต เดถเต‡เด–เดฐเดฃเดคเตเดคเดฟเตปเตเดฑเต† เดชเต‡เดฐเดฟเตฝ เดชเต‹เดฒเตเด‚ เดฆเตƒเดถเตเดฏเดฎเดพเด•เตเดจเตเดจเต. เดธเด‚เดญเดฐเดฟเดšเตเดš เดตเดฟเดตเดฐเด™เตเด™เดณเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด†เด•เตโ€Œเดธเดธเต เด•เดพเดทเดฟเด‚เด—เต, เดธเดฟเตปเด•เตเดฐเตŠเดฃเตˆเดธเต‡เดทเตป เดŽเดจเตเดจเดฟเดตเดฏเตเดŸเต† เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเต เดตเดฟเดŸเตเดŸเตเด•เตŠเดŸเตเดคเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเดฟเตฝ เด•เดพเดทเต†เด•เดณเตŠเดจเตเดจเตเด‚ เดคเดจเตเดจเต† เด…เดŸเด™เตเด™เดฟเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒ. เด‡เดคเต เดฐเดšเดฏเดฟเดคเดพเดตเดฟเตปเตเดฑเต† เดฌเต‹เดงเดชเต‚เตผเดตเดฎเดพเดฏ เดคเต€เดฐเตเดฎเดพเดจเดฎเดพเดฃเต, เด•เดพเดฐเดฃเด‚ เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเดฒเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเต‡เดฐเดฟเดŸเตเดŸเต เดกเดพเดฑเตเดฑ เดตเดพเดฏเดฟเด•เตเด•เตเดจเตเดจเดคเต เดŽเดžเตเดšเดฟเตป เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเตฝ เดงเดพเดฐเดพเดณเด‚ เด•เต‹เดฃเตเด•เตพ เดฎเตเดฑเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. เด…เดตเดฏเดฟเตฝ เดšเดฟเดฒเดคเดฟเตปเตเดฑเต† เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏ เดชเดŸเตเดŸเดฟเด•เดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเดณเดฐเต† เด…เด•เดฒเต†เดฏเดพเดฃเต เดšเตเดตเดŸเต†.

  1. เดจเดฟเดฐเดตเดงเดฟ เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเดฟเดฒเต† เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เดธเตเดฅเดฟเดฐเดค เดจเดฟเดฒเดจเดฟเตผเดคเตเดคเตเดจเตเดจเดคเต เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตปเตเดฑเต† เด‰เดคเตเดคเดฐเดตเดพเดฆเดฟเดคเตเดคเดฎเดพเดฏเดฟ เดฎเดพเดฑเตเดจเตเดจเต. เด…เดŸเตเดคเตเดค เดตเดฟเดญเดพเด—เดคเตเดคเดฟเตฝ, เดˆ เดฎเต†เด•เตเด•เดพเดจเดฟเด•เตเดธเต เดตเดฟเดถเดฆเดฎเดพเดฏเตเด‚ เดšเดฟเดคเตเดฐเด™เตเด™เดณเตเดฎเดพเดฏเตเด‚ เดšเตผเดšเตเดšเดšเต†เดฏเตเดฏเตเดจเตเดจเต.
  2. เด•เดพเดทเต†เด•เดณเตเดŸเต† เด…เดญเดพเดตเด‚ เดกเตˆเดจเดพเดฎเดฟเด•เต เด…เดฒเต‹เด•เตเด•เต‡เดทเดจเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เด“เดตเตผเดนเต†เดกเดฟเตฝ เดจเดฟเดจเตเดจเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเต† เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เด’เดดเดฟเดตเดพเด•เตเด•เตเดจเตเดจเต. เดชเตเดฐเดพเดฏเต‹เด—เดฟเด•เดฎเดพเดฏเดฟ เดกเดพเดฑเตเดฑ เดตเดพเดฏเดฟเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดฟเดจเตผเดคเตเดฅเด‚ เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดถเดฐเดฟเดฏเดพเดฏ เดตเดฟเดฒเดพเดธเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เดชเต‹เดฏเดฟเตปเตเดฑเตผ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเด•, เด…เดคเดฟเตฝ เด•เต‚เดŸเตเดคเดฒเตŠเดจเตเดจเตเด‚ เด‡เดฒเตเดฒ. เด‡เดคเต เดธเดฏเตปเดธเต เดซเดฟเด•เตเดทเตป เดชเต‹เดฒเต† เดคเต‹เดจเตเดจเตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เดธเต‹เดดเตเดธเต เด•เต‹เดกเดฟเตฝ calloc เดฒเต‡เด•เตเด•เตเดณเตเดณ เดŽเดฒเตเดฒเดพ เด•เต‹เดณเตเด•เดณเตเด‚ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดซเด‚เด—เตเดทเดจเดฟเตฝ เด•เต‡เดจเตเดฆเตเดฐเต€เด•เดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.
  3. เด•เดพเดทเต†เด•เดณเตเดŸเต† เด…เดญเดพเดตเด‚ เด…เดตเดฏเตเดŸเต† เด†เด•เตโ€Œเดธเดธเต เดธเดฎเดจเตเดตเดฏเดตเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดฒเต‹เด•เตเด•เตเด•เดณเตเดŸเต† เด…เดญเดพเดตเดตเตเด‚ เด…เตผเดคเตเดฅเดฎเดพเด•เตเด•เตเดจเตเดจเต. เด’เดฐเต‡ เดธเดฎเดฏเด‚ เด…เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเดคเดฎเดพเดฏ เดตเดพเดฏเดจเด•เตเด•เดพเดฐเตเดŸเต† เดŽเดฃเตเดฃเด‚ เด‰เดฃเตเดŸเดพเด•เดพเดตเตเดจเตเดจ เดตเดพเดฏเดจเด•เตเด•เดพเตผเด•เตเด•เต, เดกเดพเดฑเตเดฑเดฏเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดตเดดเดฟเดฏเดฟเตฝ เด’เดฐเต เดฎเตเดฏเต‚เดŸเตเดŸเต†เด•เตเดธเต เดชเต‹เดฒเตเด‚ เด•เดพเดฃเตเดจเตเดจเดฟเดฒเตเดฒ. เด‡เดคเตเดฎเต‚เดฒเด‚, CPU-เด•เดณเตเดŸเต† เดŽเดฃเตเดฃเดคเตเดคเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เดตเดพเดฏเดจเดพ เดตเต‡เด—เดคเดฏเตเด•เตเด•เต เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดธเตเด•เต‡เดฒเดฌเดฟเดณเดฟเดฑเตเดฑเดฟ เด‰เดฃเตเดŸเต. เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเดฟเตฝ, เดชเดฐเดฟเดทเตเด•เตเด•เดฐเดฃ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดฎเดพเดคเตเดฐเดฎเต‡ เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดณเตเดณเต‚. เด’เดฐเต เดธเดฎเดฏเดคเตเดคเต เด’เดฐเต เดŽเดดเตเดคเตเดคเตเด•เดพเดฐเตป เดฎเดพเดคเตเดฐเดฎเต‡ เด‰เดฃเตเดŸเดพเด•เต‚.
  4. เด’เดฐเต เดฎเตพเดŸเตเดŸเดฟ-เดคเตเดฐเต†เดกเดกเต เดชเดฐเดฟเดคเดธเตเดฅเดฟเดคเดฟเดฏเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดตเดณเดฐเต† เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ เดชเดฟเดถเด•เตเด•เตพ เด’เดดเดฟเดตเดพเด•เตเด•เตเดจเตเดจเดคเดพเดฃเต เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เด•เดพเดทเดฟเด‚เด—เต, เดธเดฟเตปเด•เตเดฐเตŠเดฃเตˆเดธเต‡เดทเตป เดฒเต‹เดœเดฟเด•เต. Usenix OSDI 2014 เด•เต‹เตบเดซเดฑเตปเดธเดฟเตฝ เดฐเดธเด•เดฐเดฎเดพเดฏ เดฐเดฃเตเดŸเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดชเด เดจเด™เตเด™เตพ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเตเดจเตเดจเต: "เดŽเดฒเตเดฒเดพ เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เดณเตเด‚ เดคเตเดฒเตเดฏเดฎเดพเดฏเดฟ เดธเตƒเดทเตเดŸเดฟเดšเตเดšเดฟเดŸเตเดŸเดฟเดฒเตเดฒ: เด•เตเดฐเดพเดทเต-เด•เต‹เตบเดธเดฟเดธเตเดฑเตเดฑเตปเตเดฑเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเตเดŸเต† เด•เตเดฐเดพเดซเตเดฑเตเดฑเดฟเด‚เด—เดฟเตปเตเดฑเต† เดธเด™เตเด•เต€เตผเดฃเตเดฃเดคเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต" ะธ "เดตเดฟเดจเต‹เดฆเดคเตเดคเดฟเดจเตเด‚ เดฒเดพเดญเดคเตเดคเดฟเดจเตเด‚ เดตเต‡เดฃเตเดŸเดฟเดฏเตเดณเตเดณ เดชเต€เดกเดจ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ". เด…เดตเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต LMDB-เดฏเตเดŸเต† เด…เดญเต‚เดคเดชเต‚เตผเดตเดฎเดพเดฏ เดตเดฟเดถเตเดตเดพเดธเตเดฏเดคเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเด‚ SQLite-เดจเต‡เด•เตเด•เดพเตพ เดฎเดฟเด•เดšเตเดš ACID เด‡เดŸเดชเดพเดŸเต เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟเด•เดณเตเดŸเต† เดเดคเดพเดฃเตเดŸเต เด•เตเดฑเตเดฑเดฎเดฑเตเดฑ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเด‚ เดตเดฟเดตเดฐเด™เตเด™เตพ เดถเต‡เด–เดฐเดฟเด•เตเด•เดพเดจเดพเด•เตเด‚.
  5. เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดฎเดฟเดจเดฟเดฎเดฒเดฟเดธเด‚ เด…เดคเดฟเตปเตเดฑเต† เด•เต‹เดกเดฟเตปเตเดฑเต† เดฎเต†เดทเต€เตป เดชเตเดฐเดพเดคเดฟเดจเดฟเดงเตเดฏเด‚ เดชเตเดฐเต‹เดธเดธเดฑเดฟเตปเตเดฑเต† เดŽเตฝ1 เด•เดพเดทเต†เดฏเดฟเตฝ เดคเตเดŸเตผเดจเตเดจเตเดณเตเดณ เดธเตเดชเต€เดกเต เดธเตเดตเดญเดพเดตเดธเดตเดฟเดถเต‡เดทเดคเด•เดณเต‹เดŸเต† เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดธเตเดฅเดพเดชเดฟเด•เตเด•เดพเตป เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต.

เดจเดฟเตผเดญเดพเด—เตเดฏเดตเดถเดพเตฝ, iOS-เตฝ, เดฎเต†เดฎเตเดฎเดฑเดฟ-เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเดฒเตเด•เตพ เด‰เดณเตเดณเดคเดฟเดจเดพเตฝ, เดŽเดฒเตเดฒเดพเด‚ เดจเดฎเตเดฎเตพ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเดคเตเดฐ เดฎเต‡เด˜เดฐเดนเดฟเดคเดฎเดฒเตเดฒ. เด…เดตเดฏเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เด•เตเดฑเดตเตเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เด•เต‚เดŸเตเดคเตฝ เดฌเต‹เดงเดชเต‚เตผเดตเตเดตเด‚ เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เดณเดฟเตฝ เดˆ เดธเด‚เดตเดฟเดงเดพเดจเด‚ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตŠเดคเตเดคเดคเตเดคเตเดตเด™เตเด™เตพ เด“เตผเดฎเตเดฎเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต.

เดฎเต†เดฎเตเดฎเดฑเดฟ เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเดฒเตเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดชเตŠเดคเตเดตเดพเดฏ เดตเดฟเดตเดฐเด™เตเด™เตพ

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เดŽเดฒเตเดฒเดพ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเดฎเดพเดฏเตเด‚ เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด’เดฐเต เดชเตเดฐเต‹เดธเดธเต เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดŽเตปเตเดฑเดฟเดฑเตเดฑเดฟเดฏเต† เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเต. เด“เดฐเต‹ เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเตเด•เตเด•เตเด‚ เด’เดฐเต เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏ เดตเดฟเดฒเดพเดธเด™เตเด™เตพ เด…เดจเตเดตเดฆเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป เด†เดตเดถเตเดฏเดฎเดพเดฏ เดŽเดฒเตเดฒเดพเด‚ เดธเตเดฅเดพเดชเดฟเด•เตเด•เตเดจเตเดจเต. เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เดตเดฟเดฒเดพเดธเด™เตเด™เดณเดฟเตฝ เด•เต‹เดกเตเด‚ เดนเดพเตผเดกเต-เด•เต‹เดกเตเดšเต†เดฏเตโ€Œเดค เดกเดพเดฑเตเดฑเดฏเตเด‚ เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเตเด‚ เด‰เดณเตเดณ เดตเดฟเดญเดพเด—เด™เตเด™เดณเตเดฃเตเดŸเต. เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดนเต€เดชเตเดชเต เดŽเดจเตเดจ เดชเต‡เดฐเดฟเตฝ เดจเดฎเตเด•เตเด•เดฑเดฟเดฏเดพเดตเตเดจเตเดจ, เดกเตˆเดจเดพเดฎเดฟเด•เต เด…เดกเตเดฐเดธเต เดธเตโ€Œเดชเต†เดฏเตโ€Œเดธเดฟเตปเตเดฑเต† เดตเตผเดฆเตเดงเดฟเดšเตเดšเตเดตเดฐเตเดจเตเดจ เดฌเตเดฒเต‹เด•เตเด•เต เดตเดฐเตเดจเตเดจเต. เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเตปเตเดฑเต† เดชเตเดฐเดตเตผเดคเตเดคเดจ เดธเดฎเดฏเดคเตเดคเต เดฆเตƒเดถเตเดฏเดฎเดพเด•เตเดจเตเดจ เดŽเตปเตเดฑเดฟเดฑเตเดฑเดฟเด•เดณเตเดŸเต† เดตเดฟเดฒเดพเดธเด™เตเด™เตพ เด‡เดคเดฟเตฝ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดธเตเดฑเตเดฑเดพเด•เตเด•เต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดฎเต†เดฎเตเดฎเดฑเดฟ เดเดฐเดฟเดฏเดฏเดพเดฃเต เดฎเตเด•เดณเดฟเตฝ. เด’เดจเตเดจเตเด•เดฟเตฝ เด…เดคเต เดตเดณเดฐเตเดจเตเดจเต เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดšเตเดฐเตเด™เตเด™เตเดจเตเดจเต; เดฎเดฑเตเดฑเตŠเดฐเต เดตเดฟเดงเดคเตเดคเดฟเตฝ เดชเดฑเดžเตเดžเดพเตฝ, เด…เดคเดฟเตปเตเดฑเต† เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเดจเตเด‚ เดšเดฒเดจเดพเดคเตเดฎเด• เดธเตเดตเดญเดพเดตเดฎเตเดฃเตเดŸเต. เดธเตเดฑเตเดฑเดพเด•เตเด•เตเด‚ เด•เต‚เดฎเตเดชเดพเดฐเดตเตเด‚ เดชเดฐเดธเตเดชเดฐเด‚ เดคเดณเตเดณเตเดจเตเดจเดคเตเด‚ เด‡เดŸเดชเต†เดŸเตเดจเตเดจเดคเตเด‚ เดคเดŸเดฏเดพเตป, เด…เดต เดตเดฟเดฒเดพเดธ เดธเตเดฅเดฒเดคเตเดคเดฟเตปเตเดฑเต† เดตเดฟเดตเดฟเดง เด…เดฑเตเดฑเด™เตเด™เดณเดฟเตฝ เดธเตเดฅเดฟเดคเดฟ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดฎเตเด•เดณเดฟเดฒเตเด‚ เดคเดพเดดเต†เดฏเตเดฎเดพเดฏเดฟ เดฐเดฃเตเดŸเต เดšเดฒเดจเดพเดคเตเดฎเด• เดตเดฟเดญเดพเด—เด™เตเด™เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เด’เดฐเต เดฆเตเดตเดพเดฐเดฎเตเดฃเตเดŸเต. เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเตเดฎเดพเดฏเดฟ เดตเดฟเดตเดฟเดง เดŽเตปเตเดฑเดฟเดฑเตเดฑเดฟเด•เดณเต† เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเต เดˆ เดฎเดงเตเดฏเดญเดพเด—เดคเตเดคเต† เดตเดฟเดฒเดพเดธเด™เตเด™เตพ เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเตเด‚, เดกเดฟเดธเตเด•เดฟเดฒเต† เด’เดฐเต เดซเดฏเดฒเตเดฎเดพเดฏเดฟ เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏ เดตเดฟเดฒเดพเดธเด™เตเด™เตพ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เด‡เดคเดฟเดจเต เด•เดดเดฟเดฏเตเด‚. เด…เดคเตเดคเดฐเดฎเตŠเดฐเต เดซเดฏเดฒเดฟเดจเต† เดฎเต†เดฎเตเดฎเดฑเดฟ-เดฎเดพเดชเตเดชเตเดกเต เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต

เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเตเด•เตเด•เต เด…เดจเตเดตเดฆเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดตเดฟเดฒเดพเดธ เด‡เดŸเด‚ เดตเดณเดฐเต† เดตเดฒเตเดคเดพเดฃเต. เดธเตˆเดฆเตเดงเดพเดจเตเดคเดฟเด•เดฎเดพเดฏเดฟ, เดตเดฟเดฒเดพเดธเด™เตเด™เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดชเต‹เดฏเดฟเตปเตเดฑเดฑเดฟเตปเตเดฑเต† เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเตฝ เดฎเดพเดคเตเดฐเด‚ เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด‡เดคเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตปเตเดฑเต† เดฌเดฟเดฑเตเดฑเต เดถเต‡เดทเดฟ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เตเดจเตเดจเต. เดซเดฟเดธเดฟเด•เตเด•เตฝ เดฎเต†เดฎเตเดฎเดฑเดฟ เด…เดคเดฟเดฒเต‡เด•เตเด•เต 1-เดŸเต-1 เดตเดฐเต† เดฎเดพเดชเตเดชเต เดšเต†เดฏเตโ€ŒเดคเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เด†เดฆเตเดฏเดคเตเดคเต† เดชเตเดฐเต‹เดธเดธเตเดธเต เดคเดจเตเดจเต† เดฎเตเดดเตเดตเตป เดฑเดพเดฎเตเด‚ เดจเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเด‚, เด•เต‚เดŸเดพเดคเต† เดฎเตพเดŸเตเดŸเดฟเดŸเดพเดธเตโ€Œเด•เตเด•เดฟเด™เตเด™เดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เดฟเดฒเตเดฒ.

เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดžเด™เตเด™เดณเตเดŸเต† เด…เดจเตเดญเดตเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต, เด†เดงเตเดจเดฟเด• เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต‡เดธเดฎเดฏเด‚ เด†เดตเดถเตเดฏเดฎเตเดณเตเดณเดคเตเดฐ เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เตพ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดฎเต†เดจเตเดจเต เดžเด™เตเด™เตพเด•เตเด•เดฑเดฟเดฏเดพเด‚. เดชเต‡เดชเตเดชเดฑเดฟเดฒเต† เดชเตเดฐเต‹เดธเดธเตเดธเตเด•เตพเด•เตเด•เต เดฎเดพเดคเตเดฐเดฎเต‡ เด…เดตเตผ เดงเดพเดฐเดพเดณเด‚ เดฎเต†เดฎเตเดฎเดฑเดฟ เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเตเดณเตเดณเต‚ เดŽเดจเตเดจ เดตเดธเตเดคเตเดค เด•เดพเดฐเดฃเด‚ เด‡เดคเต เดธเดพเดงเตเดฏเดฎเดพเดฃเต, เดชเด•เตเดทเต‡ เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ เด…เดต เดชเตเดฐเดงเดพเดจ เดซเดฟเดธเดฟเด•เตเด•เตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เด‡เดตเดฟเดŸเต†เดฏเตเด‚ เด‡เดชเตเดชเต‹เดณเตเด‚ เด†เดตเดถเตเดฏเด•เตเด•เดพเดฐเตเดณเตเดณ เดญเดพเด—เด‚ เดฎเดพเดคเตเดฐเดฎเดพเดฃเต. เด…เดคเดฟเดจเดพเตฝ, เด’เดฐเต เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเต† เดตเต†เตผเดšเตเดตเตฝ เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด‚ เดตเต†เตผเดšเตเดตเตฝ, เดซเดฟเดธเดฟเด•เตเด•เตฝ เดฎเต†เดฎเตเดฎเดฑเดฟ เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเดฒเตเดณเตเดณ เดชเต‡เดœเตเด•เดณเดพเดฏเดฟ เด•เตเดฐเดฎเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเตเดŸเต† เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดชเต‡เดœเดฟเดจเต เด†เดตเดถเตเดฏเด•เตเด•เดพเดฐเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด…เดคเต เดซเดฟเดธเดฟเด•เตเด•เตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดชเดŸเตเดŸเดฟเด•เดฏเดฟเตฝ เดชเตŠเดฐเตเดคเตเดคเดชเตเดชเต†เดŸเตเดคเตเดคเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดธเตŒเดœเดจเตเดฏ เดธเตเดฒเต‹เดŸเตเดŸเตเด•เตพ เด‡เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดฎเตเดฎเตเดชเต เดฒเต‹เดกเต เดšเต†เดฏเตเดค เดชเต‡เดœเตเด•เดณเดฟเดฒเตŠเดจเตเดจเต เดกเดฟเดธเตเด•เดฟเดฒเต‡เด•เตเด•เต เดชเด•เตผเดคเตเดคเดฟ, เด†เดตเดถเตเดฏเดฎเตเดณเตเดณเดคเต เด…เดคเดฟเตปเตเดฑเต† เดธเตเดฅเดพเดจเด‚ เดชเดฟเดŸเดฟเด•เตเด•เตเดจเตเดจเต. เดžเด™เตเด™เตพ เด‰เดŸเตป เดฎเดŸเด™เตเด™เดฟเดฏเต†เดคเตเดคเตเดจเตเดจ เดˆ เดจเดŸเดชเดŸเดฟเด•เตเดฐเดฎเดคเตเดคเต† เดธเตเดตเดพเดชเตเดชเดฟเด‚เด—เต เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต. เดšเตเดตเดŸเต†เดฏเตเดณเตเดณ เดšเดฟเดคเตเดฐเด‚ เดตเดฟเดตเดฐเดฟเดšเตเดš เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเต† เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจเต. เด…เดคเดฟเตฝ, เดตเดฟเดฒเดพเดธเด‚ 0 เด‰เดณเตเดณ เดชเต‡เดœเต A เดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดตเดฟเดฒเดพเดธเด‚ 4 เด‰เดณเตเดณ เดชเตเดฐเดงเดพเดจ เดฎเต†เดฎเตเดฎเดฑเดฟ เดชเต‡เดœเดฟเตฝ เดธเตเดฅเดพเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดคเต. เดˆ เดตเดธเตเดคเตเดค เดธเต†เตฝ เดจเดฎเตเดชเตผ 0 เดฒเต† เด•เดคเตเดคเดฟเดŸเดชเดพเดŸเตเด•เตพ เดชเดŸเตเดŸเดฟเด•เดฏเดฟเตฝ เดชเตเดฐเดคเดฟเดซเดฒเดฟเดšเตเดšเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเดฒเตเด•เดณเตเดŸเต† เด•เดฅเดฏเตเด‚ เดธเดฎเดพเดจเดฎเดพเดฃเต. เดฏเตเด•เตเดคเดฟเดชเดฐเดฎเดพเดฏเดฟ, เด…เดต เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏเตเด‚ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดตเต†เตผเดšเตเดตเตฝ เดตเดฟเดฒเดพเดธ เดธเตเดฅเดฒเดคเตเดคเต เดธเตเดฅเดฟเดคเดฟเดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เด…เดตเตผ เด“เดฐเต‹ เดชเต‡เดœเตเด‚ เด…เดญเตเดฏเตผเดคเตเดฅเดจ เดชเตเดฐเด•เดพเดฐเด‚ เดฎเดพเดคเตเดฐเด‚ เดซเดฟเดธเดฟเด•เตเด•เตฝ เดฎเต†เดฎเตเดฎเดฑเดฟ เดชเต‡เดœเต เดจเตฝเด•เตเดจเตเดจเต. เด…เดคเตเดคเดฐเด‚ เดชเต‡เดœเตเด•เดณเตเดŸเต† เดชเดฐเดฟเดทเตเด•เตเด•เดฐเดฃเด‚ เดกเดฟเดธเตเด•เดฟเดฒเต† เดซเดฏเดฒเตเดฎเดพเดฏเดฟ เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดˆ เดฐเต€เดคเดฟเดฏเดฟเตฝ, เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเต† เดฌเตˆเดฑเตเดฑเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฒเดณเดฟเดคเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดšเตเดšเตเด•เตŠเดฃเตเดŸเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดซเดฏเตฝ I/O เดจเดฟเตผเดตเดนเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚ - เดŽเดฒเตเดฒเดพ เดฎเดพเดฑเตเดฑเด™เตเด™เดณเตเด‚ เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด•เต‡เตผเดฃเตฝ เดตเดดเดฟ เดธเต‹เดดเตเดธเต เดซเดฏเดฒเดฟเดฒเต‡เด•เตเด•เต เดธเตเดตเดฏเดฎเต‡เดต เด•เตˆเดฎเดพเดฑเตเดฑเด‚ เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเตเด‚.
เดฎเดฏเด•เตเด•เตเดฎเดฐเตเดจเตเดจเต
เดตเตเดฏเดคเตเดฏเดธเตเดค เดชเตเดฐเต‹เดธเดธเตเดธเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ LMDB เด…เดคเดฟเตปเตเดฑเต† เด…เดตเดธเตเดฅเดฏเต† เดŽเด™เตเด™เดจเต† เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเต เดšเตเดตเดŸเต†เดฏเตเดณเตเดณ เดšเดฟเดคเตเดฐเด‚ เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเต. เดตเตเดฏเดคเตเดฏเดธเตโ€Œเดค เดชเตเดฐเต‹เดธเดธเตเดธเตเด•เดณเตเดŸเต† เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟ เด’เดฐเต‡ เดซเดฏเดฒเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต†, เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เด•เดพเดฃเตเดจเตเดจเดฟเดŸเดคเตเดคเต เด…เดตเดฏเตเดŸเต† เดตเดฟเดฒเดพเดธ เดธเตโ€Œเดชเต†เดฏเตโ€Œเดธเตเด•เดณเตเดŸเต† เดšเดฟเดฒ เดฌเตเดฒเต‹เด•เตเด•เตเด•เตพ เดŸเตเดฐเดพเตปเดธเดฟเดฑเตเดฑเต€เดตเต เด†เดฏเดฟ เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพ เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเต† เดจเดฟเตผเดฌเดจเตเดงเดฟเด•เตเด•เตเดจเตเดจเต.
เดฎเดฏเด•เตเด•เตเดฎเดฐเตเดจเตเดจเต

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ, เดธเตเดตเดคเดตเต‡, เดฑเตˆเดฑเตเดฑเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด•เต‹เตพ เดฎเต†เด•เตเด•เดพเดจเดฟเดธเดคเตเดคเดฟเดฒเต‚เดŸเต† เดกเดพเดฑเตเดฑเดพ เดซเดฏเตฝ เดชเดฐเดฟเดทเตเด•เตเด•เดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดฑเต€เดกเต-เด’เตบเดฒเดฟ เดฎเต‹เดกเดฟเตฝ เดซเดฏเตฝ เดคเดจเตเดจเต† เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต เดŽเดจเตเดจเดคเดพเดฃเต เด’เดฐเต เดชเตเดฐเดงเดพเดจ เดธเต‚เด•เตเดทเตเดฎเดค. เดˆ เดธเดฎเต€เดชเดจเดคเตเดคเดฟเดจเต เดฐเดฃเตเดŸเต เดชเตเดฐเดงเดพเดจ เดชเดฐเดฟเดฃเดคเดซเดฒเด™เตเด™เดณเตเดฃเตเดŸเต.

เด†เดฆเตเดฏ เดชเดฐเดฟเดฃเดคเดซเดฒเด‚ เดŽเดฒเตเดฒเดพ เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เตพเด•เตเด•เตเด‚ เดชเตŠเดคเตเดตเดพเดฏเตเดณเตเดณเดคเดพเดฃเต. เดคเต†เดฑเตเดฑเดพเดฏ เด•เต‹เดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดจเต เดฎเดจเดƒเดชเต‚เตผเดตเดฎเดฒเตเดฒเดพเดคเตเดค เด•เต‡เดŸเตเดชเดพเดŸเตเด•เตพเด•เตเด•เต†เดคเดฟเดฐเต† เดธเด‚เดฐเด•เตเดทเดฃเด‚ เดšเต‡เตผเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต เด‡เดคเดฟเตปเตเดฑเต† เดธเดพเดฐเดพเด‚เดถเด‚. เดจเดฟเด™เตเด™เตพเด•เตเด•เดฑเดฟเดฏเดพเดตเตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เด’เดฐเต เดชเตเดฐเต‹เดธเดธเตเดธเดฟเตปเตเดฑเต† เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเดฌเดฟเตพ เดจเดฟเตผเดฆเตเดฆเต‡เดถเด™เตเด™เตพ เด…เดคเดฟเตปเตเดฑเต† เดตเดฟเดฒเดพเดธ เดธเตเดฅเดฒเดคเตเดคเต เดŽเดตเดฟเดŸเต† เดจเดฟเดจเตเดจเตเด‚ เดกเดพเดฑเตเดฑ เด†เด•เตเดธเดธเต เดšเต†เดฏเตเดฏเดพเตป เดธเตŒเดœเดจเตเดฏเดฎเดพเดฃเต. เด…เดคเต‡ เดธเดฎเดฏเด‚, เดžเด™เตเด™เตพ เด‡เดชเตเดชเต‹เตพ เด“เตผเดฎเตเดฎเดฟเดšเตเดšเดคเต เดชเต‹เดฒเต†, เด’เดฐเต เดซเดฏเตฝ เดฑเต€เดกเต-เดฑเตˆเดฑเตเดฑเต เดฎเต‹เดกเดฟเตฝ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเต เด…เตผเดคเตเดฅเดฎเดพเด•เตเด•เตเดจเตเดจเดคเต เดเดคเต เดจเดฟเตผเดฆเตเดฆเต‡เดถเดคเตเดคเดฟเดจเตเด‚ เด…เดคเต เดชเดฐเดฟเดทเตเด•เดฐเดฟเด•เตเด•เดพเดจเดพเด•เตเด‚ เดŽเดจเตเดจเดพเดฃเต. เด…เดตเตพ เด…เดฌเดฆเตเดงเดตเดถเดพเตฝ เด‡เดคเต เดšเต†เดฏเตเดฏเตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดจเดฟเดฒเดตเดฟเดฒเดฟเดฒเตเดฒเดพเดคเตเดค เด’เดฐเต เดธเต‚เดšเดฟเด•เดฏเดฟเตฝ เด’เดฐเต เด…เดฑเต‡ เด˜เดŸเด•เด‚ เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ เดคเดฟเดฐเตเดคเตเดคเดฟเดฏเต†เดดเตเดคเดพเตป เดถเตเดฐเดฎเดฟเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, เด…เดตเตพเด•เตเด•เต เดˆ เดตเดฟเดฒเดพเดธเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเตฝ เด†เด•เดธเตเดฎเดฟเด•เดฎเดพเดฏเดฟ เดฎเดพเดฑเตเดฑเดพเตป เด•เดดเดฟเดฏเตเด‚, เด‡เดคเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตปเตเดฑเต† เด…เดดเดฟเดฎเดคเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดจเดฏเดฟเด•เตเด•เตเด‚. เดซเดฏเตฝ เดฑเต€เดกเต-เด’เตบเดฒเดฟ เดฎเต‹เดกเดฟเตฝ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเดšเตเดšเดพเตฝ, เด…เดจเตเดฌเดจเตเดง เดตเดฟเดฒเดพเดธ เดธเตเดฅเดฒเด‚ เดฎเดพเดฑเตเดฑเดพเดจเตเดณเตเดณ เดถเตเดฐเดฎเด‚ เด’เดฐเต เดธเดฟเด—เตเดจเตฝ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเตปเตเดฑเต† เด…เดŸเดฟเดฏเดจเตเดคเดฐ เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เดฒเดฟเดฒเต‡เด•เตเด•เต เดจเดฏเดฟเด•เตเด•เตเด‚. SIGSEGV, เดซเดฏเตฝ เด•เต‡เดŸเตเด•เต‚เดŸเดพเดคเต†เดฏเดฟเดฐเดฟเด•เตเด•เตเด‚.

เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เด…เดจเดจเตเดคเดฐเดซเดฒเด‚ เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† iOS-เดจเต เดชเตเดฐเดคเตเดฏเต‡เด•เดฎเดพเดฃเต. เดฐเดšเดฏเดฟเดคเดพเดตเต‹ เดฎเดฑเตเดฑเต‡เดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดธเตเดฐเต‹เดคเดธเตเดธเตเด•เดณเต‹ เด‡เดคเต เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ เดชเดฐเดพเดฎเตผเดถเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ, เดŽเดจเตเดจเดพเตฝ เด‡เดคเต เด•เต‚เดŸเดพเดคเต† เดˆ เดฎเตŠเดฌเตˆเตฝ เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป LMDB เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเด•เดฟเดฒเตเดฒ. เด…เดŸเตเดคเตเดค เดญเดพเด—เด‚ เด…เดคเดฟเตปเตเดฑเต† เดชเดฐเดฟเด—เดฃเดจเดฏเตเด•เตเด•เดพเดฏเดฟ เดจเต€เด•เตเด•เดฟเดตเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.

iOS-เดฒเต† เดฎเต†เดฎเตเดฎเดฑเดฟ-เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเดฒเตเด•เดณเตเดŸเต† เดชเตเดฐเดคเตเดฏเต‡เด•เดคเด•เตพ

2018-เตฝ WWDC-เดฏเดฟเตฝ เด’เดฐเต เด…เดคเตเดญเตเดคเด•เดฐเดฎเดพเดฏ เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเต เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเตเดจเตเดจเต "iOS เดฎเต†เดฎเตเดฎเดฑเดฟ เดกเต€เดชเต เดกเตˆเดตเต". iOS-เตฝ, เดซเดฟเดธเดฟเด•เตเด•เตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดธเตเดฅเดฟเดคเดฟเดšเต†เดฏเตเดฏเตเดจเตเดจ เดŽเดฒเตเดฒเดพ เดชเต‡เดœเตเด•เดณเตเด‚ 3 เดคเดฐเด™เตเด™เดณเดฟเตฝ เด’เดจเตเดจเดพเดฃเต: เดตเตƒเดคเตเดคเดฟเด•เต†เดŸเตเดŸเดคเตเด‚ เด•เด‚เดชเตเดฐเดธเต เดšเต†เดฏเตเดคเดคเตเด‚ เดตเตƒเดคเตเดคเดฟเดฏเตเดณเตเดณเดคเตเด‚.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดซเดฟเดธเดฟเด•เตเด•เตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเต‡เดฆเดจเดฏเดฟเดฒเตเดฒเดพเดคเต† เด…เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเดจเตเดจ เดชเต‡เดœเตเด•เดณเตเดŸเต† เด’เดฐเต เดถเต‡เด–เดฐเดฎเดพเดฃเต เด•เตเดฒเต€เตป เดฎเต†เดฎเตเดฎเดฑเดฟ. เด…เดต เด‰เตพเด•เตเด•เตŠเดณเตเดณเตเดจเตเดจ เดกเดพเดฑเตเดฑ เด…เดคเดฟเตปเตเดฑเต† เดฏเดฅเดพเตผเดคเตเดฅ เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เด†เดตเดถเตเดฏเดพเดจเตเดธเดฐเดฃเด‚ เดตเต€เดฃเตเดŸเตเด‚ เดฒเต‹เดกเตเดšเต†เดฏเตเดฏเดพเดจเดพเด•เตเด‚. เดฑเต€เดกเต-เด“เตบเดฒเดฟ เดฎเต†เดฎเตเดฎเดฑเดฟ-เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเดฒเตเด•เตพ เดˆ เดตเดฟเดญเดพเด—เดคเตเดคเดฟเตฝ เดชเต†เดŸเตเดจเตเดจเต. เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เด’เดฐเต เดซเดฏเดฒเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดชเต‡เดœเตเด•เตพ เดŽเดชเตเดชเต‹เตพ เดตเต‡เดฃเดฎเต†เด™เตเด•เดฟเดฒเตเด‚ เด…เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเดพเตป iOS เดญเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเดฟเดฒเตเดฒ, เด•เดพเดฐเดฃเด‚ เด…เดต เดกเดฟเดธเตเด•เดฟเดฒเต† เดซเดฏเดฒเตเดฎเดพเดฏเดฟ เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตเดฎเต†เดจเตเดจเต เด‰เดฑเดชเตเดชเตเดจเตฝเด•เตเดจเตเดจเต.
เดฎเดฏเด•เตเด•เตเดฎเดฐเตเดจเตเดจเต
เดชเดฐเดฟเดทเตโ€Œเด•เตเด•เดฐเดฟเดšเตเดš เดŽเดฒเตเดฒเดพ เดชเต‡เดœเตเด•เดณเตเด‚ เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ เดŽเดตเดฟเดŸเต†เดฏเดพเดฏเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚ เด…เดต เดตเตƒเดคเตเดคเดฟเด•เต†เดŸเตเดŸ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เด…เดตเดธเดพเดจเดฟเด•เตเด•เตเด‚. เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเตเด‚, เด…เดตเดฏเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดŽเดดเตเดคเดฟ เดชเดฐเดฟเดทเตเด•เดฐเดฟเดšเตเดš เดฎเต†เดฎเตเดฎเดฑเดฟ-เดฎเดพเดชเตเดชเต เดซเดฏเดฒเตเด•เตพ เดˆ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดคเดฐเด‚เดคเดฟเดฐเดฟเด•เตเด•เตเด‚. เดซเตเดฒเดพเด—เต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต LMDB เดคเตเดฑเด•เตเด•เตเดจเตเดจเต MDB_WRITEMAP, เด…เดคเดฟเตฝ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดตเดฐเตเดคเตเดคเดฟเดฏ เดถเต‡เดทเด‚, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดคเต เดตเตเดฏเด•เตเดคเดฟเดชเดฐเดฎเดพเดฏเดฟ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เดพเดตเตเดจเตเดจเดคเดพเดฃเต

เด’เดฐเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดตเดณเดฐเต†เดฏเดงเดฟเด•เด‚ เดซเดฟเดธเดฟเด•เตเด•เตฝ เดฎเต†เดฎเตเดฎเดฑเดฟ เดŽเดŸเตเด•เตเด•เดพเตป เดคเตเดŸเด™เตเด™เตเดฎเตเดชเต‹เตพ เดคเดจเตเดจเต†, iOS เด…เดคเดฟเดจเต† เดตเตƒเดคเตเดคเดฟเด•เต†เดŸเตเดŸ เดชเต‡เดœเต เด•เด‚เดชเตเดฐเดทเดจเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเดงเต‡เดฏเดฎเดพเด•เตเด•เตเดจเตเดจเต. เดตเตƒเดคเตเดคเดฟเด•เต†เดŸเตเดŸเดคเตเด‚ เด•เด‚เดชเตเดฐเดธเตเดธเตเดšเต†เดฏเตเดคเดคเตเดฎเดพเดฏ เดชเต‡เดœเตเด•เตพ เด‰เตพเด•เตเด•เตŠเดณเตเดณเตเดจเตเดจ เดฎเตŠเดคเตเดคเดคเตเดคเดฟเดฒเตเดณเตเดณ เดฎเต†เดฎเตเดฎเดฑเดฟ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตปเตเดฑเต† เดฎเต†เดฎเตเดฎเดฑเดฟ เดซเต‚เดŸเตเดŸเตเดชเตเดฐเดฟเตปเตเดฑเต เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต. เด…เดคเต เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดชเดฐเดฟเดงเดฟ เดฎเต‚เดฒเตเดฏเดคเตเดคเดฟเตฝ เดŽเดคเตเดคเดฟเด•เตเด•เดดเดฟเดžเตเดžเดพเตฝ, OOM เด•เดฟเดฒเตเดฒเตผ เดธเดฟเดธเตเดฑเตเดฑเด‚ เดกเต†เดฎเตบ เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเตเด•เตเด•เต เดถเต‡เดทเด‚ เดตเดฐเดฟเด•เดฏเตเด‚ เด…เดคเต เดจเดฟเตผเดฌเดจเตเดงเดฟเดคเดฎเดพเดฏเดฟ เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดกเต†เดธเตเด•เตเดŸเต‹เดชเตเดชเต เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เดณเตเดฎเดพเดฏเดฟ เดคเดพเดฐเดคเดฎเตเดฏเดชเตเดชเต†เดŸเตเดคเตเดคเตเดฎเตเดชเต‹เตพ เด‡เดคเต iOS-เตปเตเดฑเต† เดชเตเดฐเดคเตเดฏเต‡เด•เดคเดฏเดพเดฃเต. เดจเต‡เดฐเต†เดฎเดฑเดฟเดšเตเดšเต, เดซเดฟเดธเดฟเด•เตเด•เตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเดฟเดธเตเด•เดฟเดฒเต‡เด•เตเด•เต เดชเต‡เดœเตเด•เตพ เดธเตเดตเดพเดชเตเดชเต เดšเต†เดฏเตเดคเตเด•เตŠเดฃเตเดŸเต เดฎเต†เดฎเตเดฎเดฑเดฟ เดซเต‚เดŸเตเดŸเตเดชเตเดฐเดฟเตปเตเดฑเต เด•เตเดฑเดฏเตเด•เตเด•เตเดจเตเดจเดคเต iOS-เตฝ เดจเตฝเด•เดฟเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒ.เด•เดพเดฐเดฃเด™เตเด™เตพ เดŠเดนเดฟเด•เตเด•เดพเดตเตเดจเตเดจเดคเต‡เดฏเตเดณเตเดณเต‚. เด’เดฐเตเดชเด•เตเดทเต‡ เดชเต‡เดœเตเด•เตพ เดกเดฟเดธเตเด•เดฟเดฒเต‡เด•เตเด•เตเด‚ เดชเดฟเดจเตเดจเดฟเดฒเต‡เด•เตเด•เตเด‚ เดคเต€เดตเตเดฐเดฎเดพเดฏเดฟ เดจเต€เด•เตเด•เตเดจเตเดจ เดจเดŸเดชเดŸเดฟเด•เตเดฐเดฎเด‚ เดฎเตŠเดฌเตˆเตฝ เด‰เดชเด•เดฐเดฃเด™เตเด™เตพเด•เตเด•เต เดตเดณเดฐเต† เดŠเตผเดœเด‚ เดฆเดนเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดพเดฃเต, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ SSD เดกเตเดฐเตˆเดตเตเด•เดณเดฟเตฝ เดธเต†เดฒเตเดฒเตเด•เตพ เดฑเต€เดฑเตˆเดฑเตเดฑเดฟเด‚เด—เต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด‰เดฑเดตเดฟเดŸเด‚ iOS เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดŽเดฒเตเดฒเดพเด‚ เด‰เดณเตเดณ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตปเตเดฑเต† เดฎเตŠเดคเตเดคเดคเตเดคเดฟเดฒเตเดณเตเดณ เดชเตเดฐเด•เดŸเดจเดคเตเดคเดฟเตฝ เดกเดฟเดธเตˆเดจเตผเดฎเดพเตผ เดคเตƒเดชเตเดคเดฐเดฒเตเดฒเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚. เดจเดฟเดฐเดจเตเดคเดฐเด‚ เดฎเดพเดฑเตเดฑเดฟ. เด…เดคเต†เดจเตเดคเดพเดฏเดพเดฒเตเด‚, เดตเดธเตเดคเตเดค เด’เดฐเต เดตเดธเตเดคเตเดคเดฏเดพเดฏเดฟ เดคเตเดŸเดฐเตเดจเตเดจเต.

เดจเต‡เดฐเดคเตเดคเต† เดธเต‚เดšเดฟเดชเตเดชเดฟเดšเตเดš เดจเดฒเตเดฒ เดตเดพเตผเดคเตเดค, เดซเดฏเดฒเตเด•เตพ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ mmap เดฎเต†เด•เตเด•เดพเดจเดฟเดธเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ เดŽเดจเตเดจเดคเดพเดฃเต. เด‡เดคเดฟเดจเตผเดคเตเดฅเด‚, เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเดšเตเดš เดกเดพเดฑเตเดฑเดฏเต† เดเด’เดŽเดธเต เด•เตเดฒเต€เตป เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดพเดฏเดฟ เดคเดฐเด‚เดคเดฟเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เดฎเต†เดฎเตเดฎเดฑเดฟ เดซเต‚เดŸเตเดŸเตเดชเตเดฐเดฟเตปเตเดฑเดฟเดจเต เดธเด‚เดญเดพเดตเดจ เดจเตฝเด•เตเดจเตเดจเดฟเดฒเตเดฒ เดŽเดจเตเดจเดพเดฃเต. VM เดŸเตเดฐเดพเด•เตเด•เตผ เดŽเดจเตเดจ เด’เดฐเต Xcode เดŸเต‚เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดคเต เดธเตเดฅเดฟเดฐเต€เด•เดฐเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. เดชเตเดฐเดตเตผเดคเตเดคเดจ เดธเดฎเดฏเดคเตเดคเต เด•เตเดฒเต—เดกเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตปเตเดฑเต† iOS เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเตเดŸเต† เด…เดตเดธเตเดฅ เดšเตเดตเดŸเต†เดฏเตเดณเตเดณ เดธเตเด•เตเดฐเต€เตปเดทเต‹เดŸเตเดŸเต เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเต. เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตฝ, 2 LMDB เดธเด‚เดญเดตเด™เตเด™เตพ เด…เดคเดฟเตฝ เด†เดฐเด‚เดญเดฟเดšเตเดšเต. เด†เดฆเตเดฏเดคเตเดคเต‡เดคเต 1GiB เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดคเตปเตเดฑเต† เดซเดฏเตฝ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เด…เดจเตเดตเดฆเดฟเดšเตเดšเต, เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต‡เดคเต - 512MiB. เดฐเดฃเตเดŸเต เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเตเด•เดณเตเด‚ เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เด…เดณเดตเดฟเดฒเตเดณเตเดณ เดฑเดธเดฟเดกเตปเตเดฑเต เดฎเต†เดฎเตเดฎเดฑเดฟ เด•เตˆเดตเดถเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เด™เตเด•เดฟเดฒเตเด‚, เด…เดต เดฐเดฃเตเดŸเตเด‚ เดตเตƒเดคเตเดคเดฟเด•เต†เดŸเตเดŸ เดตเดฒเตเดชเตเดชเด‚ เดธเด‚เดญเดพเดตเดจ เดšเต†เดฏเตเดฏเตเดจเตเดจเดฟเดฒเตเดฒ.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เด‡เดชเตเดชเต‹เตพ เดฎเต‹เดถเด‚ เดตเดพเตผเดคเตเดคเด•เดณเตเดŸเต† เดธเดฎเดฏเดฎเดพเดฃเต. 64-เดฌเดฟเดฑเตเดฑเต เดกเต†เดธเตเด•เตเดŸเต‹เดชเตเดชเต เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เดณเดฟเดฒเต† เดธเตเดตเดพเดชเตเดชเต เดฎเต†เด•เตเด•เดพเดจเดฟเดธเดคเตเดคเดฟเดจเต เดจเดจเตเดฆเดฟ, เด“เดฐเต‹ เดชเตเดฐเต‹เดธเดธเดฟเดจเตเด‚ เด…เดคเดฟเตปเตเดฑเต† เดธเดพเดงเตเดฏเดคเดฏเตเดณเตเดณ เดธเตเดตเดพเดชเตเดชเดฟเดจเตเดณเตเดณ เดธเตŒเดœเดจเตเดฏ เดนเดพเตผเดกเต เดกเดฟเดธเตเด•เต เดธเตเดชเต‡เดธเต เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเดคเตเดฐ เดตเต†เตผเดšเตเดตเตฝ เด…เดกเตเดฐเดธเต เดธเตเดชเต‡เดธเต เดŽเดŸเตเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. iOS-เตฝ เด•เด‚เดชเตเดฐเดทเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดธเตเดตเดพเดชเตเดชเต เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เตเดจเตเดจเดคเต เดธเตˆเดฆเตเดงเดพเดจเตเดคเดฟเด•เดฎเดพเดฏ เดชเดฐเดฎเดพเดตเดงเดฟ เด•เตเดฑเดฏเตเด•เตเด•เตเดจเตเดจเต. เด‡เดชเตเดชเต‹เตพ เดŽเดฒเตเดฒเดพ เดœเต€เดตเดจเตเดณเตเดณ เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เดณเตเด‚ เดชเตเดฐเดงเดพเดจ (เดฑเดพเด‚ เดฑเต€เดกเต) เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดฏเต‹เดœเดฟเดšเตเดšเดคเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚, เด•เต‚เดŸเดพเดคเต† เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดฒเตเดฒเดพเดคเตเดคเดตเดฏเต†เดฒเตเดฒเดพเด‚ เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เดจเดฟเตผเดฌเดจเตเดงเดฟเดคเดฐเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚. เดฎเตเด•เดณเดฟเตฝ เดธเต‚เดšเดฟเดชเตเดชเดฟเดšเตเดšเดคเตเดชเต‹เดฒเต† เด‡เดคเต เดชเตเดฐเดธเตเดคเดพเดตเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเต, เด•เต‚เดŸเดพเดคเต† เด”เดฆเตเดฏเต‹เด—เดฟเด• เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต‡เดทเตป. เด…เดจเดจเตเดคเดฐเดซเดฒเดฎเดพเดฏเดฟ, mmap เดตเดดเดฟเดฏเตเดณเตเดณ เด…เดฒเต‹เด•เตเด•เต‡เดทเดจเต เดฒเดญเตเดฏเดฎเดพเดฏ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเตเดŸเต† เด…เดณเดตเต iOS เด•เด เดฟเดจเดฎเดพเดฏเดฟ เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเต. เด‡เดตเดฟเดŸเต† เด‡เดตเดฟเดŸเต† เดˆ เดธเดฟเดธเตโ€Œเดฑเตเดฑเด‚ เด•เต‹เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดตเตเดฏเดคเตเดฏเดธเตโ€Œเดค เด‰เดชเด•เดฐเดฃเด™เตเด™เดณเดฟเตฝ เด…เดจเตเดตเดฆเดฟเด•เตเด•เดพเดตเตเดจเตเดจ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเตเดŸเต† เด…เดณเดตเดฟเตปเตเดฑเต† เด…เดจเตเดญเดตเดชเดฐเดฎเดพเดฏ เดชเดฐเดฟเดงเดฟเด•เตพ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เดพเด‚. เดเดฑเตเดฑเดตเตเด‚ เด†เดงเตเดจเดฟเด• เดธเตเดฎเดพเตผเดŸเตเดŸเตโ€Œเดซเต‹เตบ เดฎเต‹เดกเดฒเตเด•เดณเดฟเตฝ, iOS 2 เดœเดฟเด—เดพเดฌเตˆเดฑเตเดฑเตเด•เดณเดพเตฝ เด‰เดฆเดพเดฐเดฎเดพเดฏเดฟ เดฎเดพเดฑเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เดเดชเดพเดกเดฟเตปเตเดฑเต† เดฎเดฟเด•เดšเตเดš เดชเดคเดฟเดชเตเดชเตเด•เดณเดฟเตฝ - 4. เดชเตเดฐเดพเดฏเต‹เด—เดฟเด•เดฎเดพเดฏเดฟ, เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, เดจเดฟเด™เตเด™เตพ เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เดชเดฟเดจเตเดคเตเดฃเดฏเตเดณเตเดณ เด‰เดชเด•เดฐเดฃ เดฎเต‹เดกเดฒเตเด•เดณเดฟเตฝ เดถเตเดฐเดฆเตเดง เด•เต‡เดจเตเดฆเตเดฐเต€เด•เดฐเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต, เด…เดตเดฟเดŸเต† เดŽเดฒเตเดฒเดพเด‚ เดตเดณเดฐเต† เดธเด™เตเด•เดŸเด•เดฐเดฎเดพเดฃเต. เด…เดคเดฟเดฒเตเด‚ เดฎเต‹เดถเด‚, เดตเดฟเดŽเด‚ เดŸเตเดฐเดพเด•เตเด•เดฑเดฟเดฒเต† เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตปเตเดฑเต† เดฎเต†เดฎเตเดฎเดฑเดฟ เดจเดฟเดฒ เดจเต‹เด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต†, เดฎเต†เดฎเตเดฎเดฑเดฟ-เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดตเดณเดฐเต† เด…เด•เดฒเต†เดฏเดพเดฃเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด•เดฃเตเดŸเต†เดคเตเดคเตเด‚. เดธเดฟเดธเตเดฑเตเดฑเด‚ เด…เดฒเต‹เด•เตเด•เต‡เดฑเตเดฑเดฑเตเด•เตพ, เดฑเดฟเดธเต‹เดดเตเดธเต เดซเดฏเดฒเตเด•เตพ, เด‡เดฎเต‡เดœเต เดซเตเดฐเต†เดฏเดฟเด‚เดตเตผเด•เตเด•เตเด•เตพ, เดฎเดฑเตเดฑเต เดšเต†เดฑเดฟเดฏ เดตเต‡เดŸเตเดŸเด•เตเด•เดพเตผ เดŽเดจเตเดจเดฟเดตเดฏเดพเตฝ เดจเดฒเตเดฒ เด•เดทเดฃเด™เตเด™เตพ เดคเดฟเดจเตเดจเตเดคเต€เตผเด•เตเด•เตเดจเตเดจเต.

เด•เตเดฒเต—เดกเดฟเดฒเต† เดชเดฐเต€เด•เตเดทเดฃ เดซเดฒเด™เตเด™เดณเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ, เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เด…เดจเตเดตเดฆเดฟเดšเตเดš เดฎเต†เดฎเตเดฎเดฑเดฟเด•เตเด•เดพเดฏเดฟ เดžเด™เตเด™เตพ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดตเดฟเดŸเตเดŸเตเดตเต€เดดเตเดš เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเดฟเดฒเต‡เด•เตเด•เต เดŽเดคเตเดคเดฟ: 384-เดฌเดฟเดฑเตเดฑเต เด‰เดชเด•เดฐเดฃเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ 32 เดฎเต†เด—เดพเดฌเตˆเดฑเตเดฑเตเด‚ 768-เดฌเดฟเดฑเตเดฑเต เด‰เดชเด•เดฐเดฃเด™เตเด™เตพเด•เตเด•เต 64 เด‰เด‚. เดˆ เดตเต‹เดณเดฟเดฏเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดคเดฟเดจเต เดถเต‡เดทเด‚, เดเดคเต เดชเดฐเดฟเดทเตเด•เตเด•เดฐเดฃ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเด‚ เด•เต‹เดกเดฟเตฝ เด…เดตเดธเดพเดจเดฟเด•เตเด•เดพเตป เดคเตเดŸเด™เตเด™เตเด‚ MDB_MAP_FULL. เดžเด™เตเด™เดณเตเดŸเต† เดจเดฟเดฐเต€เด•เตเดทเดฃเดคเตเดคเดฟเตฝ เด…เดคเตเดคเดฐเด‚ เดชเดฟเดถเด•เตเด•เตพ เดžเด™เตเด™เตพ เดจเดฟเดฐเต€เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต, เดชเด•เตเดทเต‡ เด…เดต เดตเดณเดฐเต† เดšเต†เดฑเตเดคเดพเดฃเต, เดˆ เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ เด…เดต เด…เดตเด—เดฃเดฟเด•เตเด•เดพเด‚.

เดธเตโ€Œเดฑเตเดฑเต‹เดฑเต‡เดœเดฟเตปเตเดฑเต† เด…เดฎเดฟเดคเดฎเดพเดฏ เดฎเต†เดฎเตเดฎเดฑเดฟ เด‰เดชเดญเต‹เด—เดคเตเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดตเตเดฏเด•เตเดคเดฎเดฒเตเดฒเดพเดคเตเดค เด•เดพเดฐเดฃเด‚ เดฆเต€เตผเด˜เด•เดพเดฒ เด‡เดŸเดชเดพเดŸเตเด•เดณเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚. เดˆ เดฐเดฃเตเดŸเต เดชเตเดฐเดคเดฟเดญเดพเดธเด™เตเด™เดณเตเด‚ เดŽเด™เตเด™เดจเต† เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดŽเดจเตเดจเต เดฎเดจเดธเดฟเดฒเดพเด•เตเด•เดพเตป, เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดถเต‡เดทเดฟเด•เตเด•เตเดจเตเดจ เดฐเดฃเตเดŸเต เดคเต‚เดฃเตเด•เตพ เดชเดฐเดฟเด—เดฃเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดžเด™เตเด™เดณเต† เดธเดนเดพเดฏเดฟเด•เตเด•เตเด‚.

3.2 เดคเดฟเดฎเดฟเด‚เด—เดฒเด‚ #2. เดฌเดฟ+-เดฎเดฐเด‚

เด’เดฐเต เด•เต€-เดฎเต‚เดฒเตเดฏเด‚ เดธเด‚เดญเดฐเดฃเดคเตเดคเดฟเดจเต เดฎเตเด•เดณเดฟเดฒเตเดณเตเดณ เดชเดŸเตเดŸเดฟเด•เด•เตพ เด…เดจเตเด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เด…เดคเดฟเตปเตเดฑเต† API-เดฏเดฟเตฝ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚:

  1. เด’เดฐเต เดชเตเดคเดฟเดฏ เด˜เดŸเด•เด‚ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเต.
  2. เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด•เต€ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด’เดฐเต เด˜เดŸเด•เดคเตเดคเดฟเดจเดพเดฏเดฟ เดคเดฟเดฐเดฏเตเด•.
  3. เด’เดฐเต เด˜เดŸเด•เด‚ เดจเต€เด•เตเด•เด‚เดšเต†เดฏเตเดฏเตเดจเตเดจเต.
  4. เด•เต€เด•เตพ เด…เดŸเตเด•เตเด•เดฟเดฏ เด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เด…เดตเดฏเตเดŸเต† เด‡เดŸเดตเต‡เดณเด•เดณเดฟเตฝ เด†เดตเตผเดคเตเดคเดฟเด•เตเด•เตเด•.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚เดจเดพเดฒเต เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเด‚ เดŽเดณเตเดชเตเดชเดคเตเดคเดฟเตฝ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดจเตเดจ เดเดฑเตเดฑเดตเตเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏ เดกเดพเดฑเตเดฑเดพ เด˜เดŸเดจ เด’เดฐเต เดฌเตˆเดจเดฑเดฟ เดธเต†เตผเดšเตเดšเต เดŸเตเดฐเต€ เด†เดฃเต. เด…เดคเดฟเตปเตเดฑเต† เด“เดฐเต‹ เดจเต‹เดกเตเด•เดณเตเด‚ เด’เดฐเต เด•เต€ เดชเตเดฐเดคเดฟเดจเดฟเดงเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเต เดšเตˆเตฝเดกเต เด•เต€เด•เดณเตเดŸเต† เดฎเตเดดเตเดตเตป เด‰เดชเดตเดฟเดญเดพเด—เดคเตเดคเต†เดฏเตเด‚ เดฐเดฃเตเดŸเต เดธเดฌเตเดŸเตเดฐเต€เด•เดณเดพเดฏเดฟ เดตเดฟเดญเดœเดฟเด•เตเด•เตเดจเตเดจเต. เด‡เดŸเดคเต เดญเดพเด—เดคเตเดคเต เดฎเดพเดคเดพเดชเดฟเดคเดพเด•เตเด•เดณเต‡เด•เตเด•เดพเตพ เดšเต†เดฑเตเดคเตเด‚ เดตเดฒเดคเตเดตเดถเดคเตเดคเต เดตเดฒเตเดคเตเด‚ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด“เตผเดกเตผ เดšเต†เดฏเตโ€Œเดค เด’เดฐเต เด•เต‚เดŸเตเดŸเด‚ เด•เต€เด•เตพ เดจเต‡เดŸเตเดจเตเดจเดคเต เด•เตเดฒเดพเดธเดฟเด•เต เดŸเตเดฐเต€ เดŸเตเดฐเดพเดตเต‡เดธเดฒเตเด•เดณเดฟเดฒเตŠเดจเตเดจเดฟเดฒเต‚เดŸเต†เดฏเดพเดฃเต

เดฌเตˆเดจเดฑเดฟ เดฎเดฐเด™เตเด™เตพเด•เตเด•เต เดฐเดฃเตเดŸเต เด…เดŸเดฟเดธเตเดฅเดพเดจ เดชเดฟเดดเดตเตเด•เตพ เด‰เดฃเตเดŸเต, เด…เดคเต เด’เดฐเต เดกเดฟเดธเตเด•เต เด…เดงเดฟเดทเตเด เดฟเดค เดกเดพเดฑเตเดฑเดพ เด˜เดŸเดจเดฏเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดคเดŸเดฏเตเดจเตเดจเต. เด’เดจเตเดจเดพเดฎเดคเดพเดฏเดฟ, เด…เดตเดฐเตเดŸเต† เดธเดจเตเดคเตเดฒเดฟเดคเดพเดตเดธเตเดฅเดฏเตเดŸเต† เด…เดณเดตเต เดชเตเดฐเดตเดšเดจเดพเดคเต€เดคเดฎเดพเดฃเต. เดตเตƒเด•เตเดทเด™เตเด™เตพ เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด—เดฃเตเดฏเดฎเดพเดฏ เด…เดชเด•เดŸเดธเดพเดงเตเดฏเดคเดฏเตเดฃเตเดŸเต, เด…เดคเดฟเตฝ เดตเตเดฏเดคเตเดฏเดธเตเดค เดถเดพเด–เด•เดณเตเดŸเต† เด‰เดฏเดฐเด‚ เดตเดณเดฐเต† เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚, เด‡เดคเต เดชเตเดฐเดคเต€เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต‡เด•เตเด•เดพเตพ เดคเดฟเดฐเดฏเดฒเดฟเตปเตเดฑเต† เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดคเดฏเต† เด—เดฃเตเดฏเดฎเดพเดฏเดฟ เดตเดทเดณเดพเด•เตเด•เตเดจเตเดจเต. เดฐเดฃเตเดŸเดพเดฎเดคเดพเดฏเดฟ, เดจเต‹เดกเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเดฒเตเดณเตเดณ เด•เตเดฐเต‹เดธเต-เดฒเดฟเด™เตเด•เตเด•เดณเตเดŸเต† เดธเดฎเตƒเดฆเตเดงเดฟ เดฌเตˆเดจเดฑเดฟ เดŸเตเดฐเต€เด•เตพเด•เตเด•เต เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเต† เดชเตเดฐเดพเดฆเต‡เดถเดฟเด•เดคเตเดตเด‚ เดจเดทเตเดŸเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเต, เด•เตเดฒเต‹เดธเต เดจเต‹เดกเตเด•เตพ (เด…เดต เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เด•เดฃเด•เตเดทเดจเตเด•เดณเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ) เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเต† เดคเดฟเด•เดšเตเดšเตเด‚ เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏ เดชเต‡เดœเตเด•เดณเดฟเตฝ เดธเตเดฅเดฟเดคเดฟเดšเต†เดฏเตเดฏเดพเด‚. เด…เดจเดจเตเดคเดฐเดซเดฒเดฎเดพเดฏเดฟ, เด’เดฐเต เดŸเตเดฐเต€เดฏเดฟเดฒเต† เดจเดฟเดฐเดตเดงเดฟ เด…เดฏเตฝเดชเด•เตเด• เดจเต‹เดกเตเด•เดณเตเดŸเต† เดฒเดณเดฟเดคเดฎเดพเดฏ เดฏเดพเดคเตเดฐเดฏเตเด•เตเด•เต เดชเต‹เดฒเตเด‚, เดคเดพเดฐเดคเดฎเตเดฏเดชเตเดชเต†เดŸเตเดคเตเดคเดพเดตเตเดจเตเดจ เดŽเดฃเตเดฃเด‚ เดชเต‡เดœเตเด•เตพ เดธเดจเตเดฆเตผเดถเดฟเด•เตเด•เต‡เดฃเตเดŸเดฟ เดตเดจเตเดจเต‡เด•เตเด•เดพเด‚. เด‡เตป-เดฎเต†เดฎเตเดฎเดฑเดฟ เดกเดพเดฑเตเดฑเดพ เด˜เดŸเดจ เดŽเดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ เดฌเตˆเดจเดฑเดฟ เดฎเดฐเด™เตเด™เดณเตเดŸเต† เดซเดฒเดชเตเดฐเดพเดชเตเดคเดฟเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดจเดฎเตเดฎเตพ เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดชเต‹เดฒเตเด‚ เด‡เดคเต เด’เดฐเต เดชเตเดฐเดถเตเดจเดฎเดพเดฃเต, เด•เดพเดฐเดฃเด‚ เดชเตเดฐเต‹เดธเดธเตผ เด•เดพเดทเต†เดฏเดฟเตฝ เดชเต‡เดœเตเด•เตพ เดจเดฟเดฐเดจเตเดคเดฐเด‚ เดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต เดตเดฟเดฒเด•เตเดฑเดžเตเดž เด†เดจเดจเตเดฆเดฎเดฒเตเดฒ. เดกเดฟเดธเตเด•เดฟเตฝ เดจเดฟเดจเตเดจเต เดจเต‹เดกเตเด•เดณเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดชเต‡เดœเตเด•เตพ เด‡เดŸเดฏเตเด•เตเด•เดฟเดŸเต† เดตเต€เดฃเตเดŸเต†เดŸเตเด•เตเด•เตเดฎเตเดชเต‹เตพ, เดธเดพเดนเดšเดฐเตเดฏเด‚ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดฎเดพเดฑเตเดจเตเดจเต เดชเดฐเดฟเดคเดพเดชเด•เดฐเด‚.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚เดฌเดฟ-เดŸเตเดฐเต€เด•เตพ, เดฌเตˆเดจเดฑเดฟ เดฎเดฐเด™เตเด™เดณเตเดŸเต† เดชเดฐเดฟเดฃเดพเดฎเดฎเดพเดฏเดคเดฟเดจเดพเตฝ, เดฎเตเดฎเตเดชเดคเตเดคเต† เด–เดฃเตเดกเดฟเด•เดฏเดฟเตฝ เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด’เดจเตเดจเดพเดฎเดคเดพเดฏเดฟ, เด…เดตเตผ เดธเตเดตเดฏเด‚ เดฌเดพเดฒเตปเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดฐเดฃเตเดŸเดพเดฎเดคเดพเดฏเดฟ, เด…เดตเดฐเตเดŸเต† เด“เดฐเต‹ เดจเต‹เดกเตเด•เดณเตเด‚ เดšเตˆเตฝเดกเต เด•เต€เด•เดณเตเดŸเต† เดธเต†เดฑเตเดฑเดฟเดจเต† 2 เด†เดฏเดฟ เดตเดฟเดญเดœเดฟเด•เตเด•เตเดจเตเดจเต, เดฎเดฑเดฟเดšเตเดšเต M เด“เตผเดกเตผ เดšเต†เดฏเตเดค เด‰เดชเดธเต†เดฑเตเดฑเตเด•เดณเดพเดฏเดฟ เดตเดฟเดญเดœเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† M เดŽเดจเตเดจ เดธเด‚เด–เตเดฏ เดจเต‚เดฑเตเด•เดฃเด•เตเด•เดฟเดจเต เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด†เดฏเดฟเดฐเด•เตเด•เดฃเด•เตเด•เดฟเดจเต เด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เดตเดณเดฐเต† เดตเดฒเตเดคเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚.

เด…เดคเตเดตเดดเดฟ:

  1. เด“เดฐเต‹ เดจเต‹เดกเดฟเดฒเตเด‚ เด‡เดคเดฟเดจเด•เด‚ เด“เตผเดกเตผ เดšเต†เดฏเตเดค เดงเดพเดฐเดพเดณเด‚ เด•เต€เด•เตพ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เดฎเดฐเด™เตเด™เตพ เดตเดณเดฐเต† เดšเต†เดฑเตเดคเดพเดฃเต.
  2. เดฎเดฐเดคเตเดคเดฟเดจเต เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเต† เดธเตเดฅเดฒเดคเตเดคเดฟเตปเตเดฑเต† เดธเตเดตเดคเตเดคเต เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเต, เด•เดพเดฐเดฃเด‚ เดฎเต‚เดฒเตเดฏเดคเตเดคเดฟเตฝ เด…เดŸเตเดคเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด•เต€เด•เตพ เดธเตเดตเดพเดญเดพเดตเดฟเด•เดฎเดพเดฏเตเด‚ เด’เดฐเต‡ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด…เดฏเตฝ เดจเต‹เดกเตเด•เดณเดฟเตฝ เดชเดฐเดธเตเดชเดฐเด‚ เด…เดŸเตเดคเตเดคเดพเดฏเดฟ เดธเตเดฅเดฟเดคเดฟเดšเต†เดฏเตเดฏเตเดจเตเดจเต.
  3. เด’เดฐเต เดคเดฟเดฐเดšเตเดšเดฟเตฝ เด“เดชเตเดชเดฑเต‡เดทเตป เดธเดฎเดฏเดคเตเดคเต เด’เดฐเต เดฎเดฐเดคเตเดคเดฟเตฝ เด‡เดฑเด™เตเด™เตเดฎเตเดชเต‹เตพ เดŸเตเดฐเดพเตปเดธเดฟเดฑเตเดฑเต เดจเต‹เดกเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เด•เตเดฑเดฏเตเดจเตเดจเต.
  4. เดถเตเดฐเต‡เดฃเดฟ เด…เดจเตเดตเต‡เดทเดฃเด™เตเด™เดณเดฟเตฝ เดตเดพเดฏเดฟเด•เตเด•เตเดจเตเดจ เดŸเดพเตผเด—เต†เดฑเตเดฑเต เดจเต‹เดกเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เด•เตเดฑเดฏเตเดจเตเดจเต, เด•เดพเดฐเดฃเด‚ เด…เดตเดฏเดฟเตฝ เด“เดฐเต‹เดจเตเดจเดฟเดจเตเด‚ เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† เดงเดพเดฐเดพเดณเด‚ เด“เตผเดกเตผ เดšเต†เดฏเตเดค เด•เต€เด•เตพ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดกเดพเดฑเตเดฑ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดฌเดฟ-เดŸเตเดฐเต€เดฏเตเดŸเต† เด’เดฐเต เดตเตเดฏเดคเดฟเดฏเดพเดจเด‚ เดฌเดฟ+ เดŸเตเดฐเต€ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เดฎเตเด•เดณเดฟเดฒเตเดณเตเดณ เดกเดฏเด—เตเดฐเด‚ เด…เดคเดฟเตฝ เดจเดฟเดฒเดจเดฟเตฝเด•เตเด•เตเดจเตเดจ เดฎเต‚เดจเตเดจเต เดคเดฐเด‚ เดจเต‹เดกเตเด•เตพ เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเต:

  1. เดฎเตเด•เดณเดฟเตฝ เดฑเต‚เดŸเตเดŸเต เด†เดฃเต. เด’เดฐเต เดตเต†เดฏเตผเดนเต—เดธเดฟเดจเตเดณเตเดณเดฟเดฒเต† เด’เดฐเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเดจเตเดจ เด†เดถเดฏเดฎเดฒเตเดฒเดพเดคเต† เดฎเดฑเตเดฑเตŠเดจเตเดจเตเด‚ เด‡เดคเต เดฏเดพเดฅเดพเตผเดคเตเดฅเตเดฏเดฎเดพเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ. เด’เดฐเต LMDB เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเตเดณเตเดณเดฟเตฝ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฎเดพเดชเตเดชเต เดšเต†เดฏเตโ€Œเดค เดตเต†เตผเดšเตเดตเตฝ เดตเดฟเดฒเดพเดธ เด‡เดŸเด‚ เดชเด™เตเด•เดฟเดŸเตเดจเตเดจ เดจเดฟเดฐเดตเดงเดฟ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. เด…เดต เด“เดฐเต‹เดจเตเดจเตเด‚ เดธเตเดตเดจเตเดคเด‚ เดตเต‡เดฐเดฟเตฝ เดจเดฟเดจเตเดจเดพเดฃเต เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเดคเต.
  2. เดเดฑเตเดฑเดตเตเด‚ เดคเดพเดดเตเดจเตเดจ เดจเดฟเดฒเดฏเดฟเดฒเดพเดฃเต เด‡เดฒเด•เตพ. เด…เดตเดฏเดฟเตฝ เดฎเดพเดคเตเดฐเด‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตฝ เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด•เต€-เดฎเต‚เดฒเตเดฏเด‚ เดœเต‹เดกเดฟเด•เตพ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดตเดดเดฟเดฏเดฟเตฝ, เด‡เดคเดพเดฃเต เดฌเดฟ+-เดฎเดฐเด™เตเด™เดณเตเดŸเต† เดชเตเดฐเดคเตเดฏเต‡เด•เดค. เด’เดฐเต เดธเดพเดงเดพเดฐเดฃ เดฌเดฟ-เดŸเตเดฐเต€ เดŽเดฒเตเดฒเดพ เดฒเต†เดตเดฒเตเด•เดณเตเดŸเต†เดฏเตเด‚ เดจเต‹เดกเตเด•เดณเดฟเตฝ เดฎเต‚เดฒเตเดฏเดฎเตเดณเตเดณ เดญเดพเด—เด™เตเด™เตพ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เด™เตเด•เดฟเตฝ, B+ เดตเตเดฏเดคเดฟเดฏเดพเดจเด‚ เดเดฑเตเดฑเดตเตเด‚ เดคเดพเดดเตเดจเตเดจเดคเดฟเตฝ เดฎเดพเดคเตเดฐเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚. เดˆ เดตเดธเตเดคเตเดค เดชเดฐเดฟเดนเดฐเดฟเดšเตเดš เดถเต‡เดทเด‚, เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเดฟเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดŸเตเดฐเต€เดฏเตเดŸเต† เด‰เดชเดตเดฟเดญเดพเด—เดคเตเดคเต† เดžเด™เตเด™เตพ เดฌเดฟ-เดŸเตเดฐเต€ เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเด‚.
  3. เดฑเต‚เดŸเตเดŸเดฟเดจเตเด‚ เด‡เดฒเด•เตพเด•เตเด•เตเด‚ เด‡เดŸเดฏเดฟเตฝ เดจเดพเดตเดฟเด—เต‡เดทเตป (เดถเดพเด–) เดจเต‹เดกเตเด•เดณเตเดณเตเดณ 0 เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด…เดคเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ เดธเดพเด™เตเด•เต‡เดคเดฟเด• เดคเดฒเด™เตเด™เดณเตเดฃเตเดŸเต. เด•เตเดฐเดฎเต€เด•เดฐเดฟเดšเตเดš เด•เต€เด•เตพ เด‡เดฒเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เดตเดฟเดญเดœเดฟเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต เด…เดตเดฐเตเดŸเต† เดšเตเดฎเดคเดฒ.

เดญเต—เดคเดฟเด•เดฎเดพเดฏเดฟ, เดจเต‹เดกเตเด•เตพ เด’เดฐเต เดฎเตเตปเด•เต‚เดŸเตเดŸเดฟ เดจเดฟเดถเตเดšเดฏเดฟเดšเตเดš เดฆเตˆเตผเด˜เตเดฏเดคเตเดคเดฟเตปเตเดฑเต† เดฎเต†เดฎเตเดฎเดฑเดฟ เดฌเตเดฒเต‹เด•เตเด•เตเด•เดณเดพเดฃเต. เด…เดตเดฏเตเดŸเต† เดตเดฒเตเดชเตเดชเด‚ เดžเด™เตเด™เตพ เดฎเตเด•เดณเดฟเตฝ เดšเตผเดšเตเดš เดšเต†เดฏเตเดค เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดฒเต† เดฎเต†เดฎเตเดฎเดฑเดฟ เดชเต‡เดœเตเด•เดณเตเดŸเต† เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเตปเตเดฑเต† เด—เตเดฃเดฟเดคเดฎเดพเดฃเต. เดจเต‹เดกเต เด˜เดŸเดจ เดคเดพเดดเต† เด•เดพเดฃเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดคเดฒเด•เตเด•เต†เดŸเตเดŸเดฟเตฝ เดฎเต†เดฑเตเดฑเดพ เดตเดฟเดตเดฐเด™เตเด™เตพ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเดฟเตฝ เดเดฑเตเดฑเดตเตเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดคเต เดšเต†เด•เตเด•เตเดธเด‚ เด†เดฃเต. เดกเดพเดฑเตเดฑเดฏเตเดณเตเดณ เดธเต†เดฒเตเดฒเตเด•เตพ เดธเตเดฅเดฟเดคเดฟเดšเต†เดฏเตเดฏเตเดจเตเดจ เด“เดซเตโ€Œเดธเต†เดฑเตเดฑเตเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดตเดฟเดตเดฐเด™เตเด™เตพ เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ เดตเดฐเตเดจเตเดจเต. เดจเดพเดตเดฟเด—เต‡เดทเตป เดจเต‹เดกเตเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเดพเดฃเต เดจเดฎเตเดฎเตพ เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต†เด™เตเด•เดฟเตฝ, เดกเดพเดฑเตเดฑ เด’เดจเตเดจเตเด•เดฟเตฝ เด•เต€เด•เดณเดพเด•เดพเด‚, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด‡เดฒเด•เดณเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ เดฎเตเดดเตเดตเตป เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดœเต‹เดกเดฟเด•เดณเดพเด•เดพเด‚. เดธเตƒเดทเตเดŸเดฟเดฏเดฟเดฒเต† เดชเต‡เดœเตเด•เดณเตเดŸเต† เด˜เดŸเดจเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เต‚เดŸเตเดคเตฝ เดตเดพเดฏเดฟเด•เตเด•เดพเด‚. "เด‰เดฏเตผเดจเตเดจ เดชเต†เตผเดซเต‹เดฎเตปเดธเต เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดธเตเดฑเตเดฑเต‹เดฑเตเด•เดณเตเดŸเต† เดตเดฟเดฒเดฏเดฟเดฐเตเดคเตเดคเตฝ".

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดชเต‡เดœเต เดจเต‹เดกเตเด•เดณเตเดŸเต† เด†เดจเตเดคเดฐเดฟเด• เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดค เดถเต‡เดทเด‚, เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดฐเต‚เดชเดคเตเดคเดฟเตฝ เดžเด™เตเด™เตพ เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดฌเดฟ-เดŸเตเดฐเต€เดฏเต† เดฒเดณเดฟเดคเดฎเดพเดฏ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดชเตเดฐเดคเดฟเดจเดฟเดงเต€เด•เดฐเดฟเด•เตเด•เตเด‚.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดจเต‹เดกเตเด•เดณเตเดณเตเดณ เดชเต‡เดœเตเด•เตพ เดกเดฟเดธเตเด•เดฟเตฝ เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏเดฟ เดธเตเดฅเดฟเดคเดฟเดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดซเดฏเดฒเดฟเตปเตเดฑเต† เด…เดฑเตเดฑเดคเตเดคเดพเดฃเต เด•เต‚เดŸเตเดคเตฝ เด…เด•เตเด•เดฎเดฟเดŸเตเดŸ เดชเต‡เดœเตเด•เตพ เดธเตเดฅเดฟเดคเดฟ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต. เดฎเต†เดฑเตเดฑเดพ เดชเต‡เดœเต เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเดคเดฟเตฝ เดŽเดฒเตเดฒเดพ เดฎเดฐเด™เตเด™เดณเตเดŸเต†เดฏเตเด‚ เดตเต‡เดฐเตเด•เตพ เด•เดฃเตเดŸเต†เดคเตเดคเดพเตป เด•เดดเดฟเดฏเตเดจเตเดจ เด“เดซเตโ€Œเดธเต†เดฑเตเดฑเตเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดตเดฟเดตเดฐเด™เตเด™เตพ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด’เดฐเต เดซเดฏเตฝ เดคเตเดฑเด•เตเด•เตเดฎเตเดชเต‹เตพ, เดธเดพเดงเตเดตเดพเดฏ เด’เดฐเต เดฎเต†เดฑเตเดฑเดพ เดชเต‡เดœเต เดคเดฟเดฐเดฏเตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ LMDB เดซเดฏเตฝ เดชเต‡เดœเต เด…เดตเดธเดพเดจเด‚ เดฎเตเดคเตฝ เดคเตเดŸเด•เตเด•เด‚ เดตเดฐเต† เดธเตเด•เดพเตป เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด…เดคเดฟเดฒเต‚เดŸเต† เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เด•เดฃเตเดŸเต†เดคเตเดคเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เด‡เดชเตเดชเต‹เตพ, เดกเดพเดฑเตเดฑเดพ เด“เตผเด—เดจเตˆเดธเต‡เดทเตปเตเดฑเต† เดฒเต‹เดœเดฟเด•เตเด•เตฝ, เดซเดฟเดธเดฟเด•เตเด•เตฝ เด˜เดŸเดจเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เด’เดฐเต เด†เดถเดฏเด‚ เด‰เดณเตเดณเดคเดฟเดจเดพเตฝ, เดจเดฎเตเด•เตเด•เต LMDB เดฏเตเดŸเต† เดฎเต‚เดจเตเดจเดพเดฎเดคเตเดคเต† เดธเตเดคเด‚เดญเด‚ เดชเดฐเดฟเด—เดฃเดฟเด•เตเด•เดพเด‚. เด…เดคเดฟเตปเตเดฑเต† เดธเดนเดพเดฏเดคเตเดคเต‹เดŸเต†เดฏเดพเดฃเต เดŽเดฒเตเดฒเดพ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เดชเดฐเดฟเดทเตโ€Œเด•เตเด•เดฐเดฃเด™เตเด™เดณเตเด‚ เด‡เดŸเดชเดพเดŸเตเด•เดณเดพเดฏเตเด‚ เดชเดฐเดธเตเดชเดฐเด‚ เด’เดฑเตเดฑเดชเตเดชเต†เดŸเตเดŸเตเด‚ เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจเดคเต, เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดจเต เดฎเตŠเดคเตเดคเดคเตเดคเดฟเตฝ เดฎเตพเดŸเตเดŸเดฟเดตเต‡เตผเดทเตปเตเดฑเต† เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟ เดจเตฝเด•เตเดจเตเดจเต.

3.3 เดคเดฟเดฎเดฟเด‚เด—เดฒเด‚ #3. เด•เต‹เดชเตเดชเดฟ-เด“เตบ-เดฑเตˆเดฑเตเดฑเต

เดšเดฟเดฒ เดฌเดฟ-เดŸเตเดฐเต€ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเดฟเตฝ เด…เดคเดฟเตปเตเดฑเต† เดจเต‹เดกเตเด•เดณเดฟเตฝ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดตเดฐเตเดคเตเดคเตเดจเตเดจเดคเต เด‰เตพเดชเตเดชเต†เดŸเตเดจเตเดจเต. เด’เดฐเต เดจเต‹เดกเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เดชเตเดคเดฟเดฏ เด•เต€ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเดคเต เด’เดฐเต เด‰เดฆเดพเดนเดฐเดฃเดฎเดพเดฃเต, เด…เดคเต เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† เด…เดคเดฟเตปเตเดฑเต† เดชเดฐเดฎเดพเดตเดงเดฟ เดถเต‡เดทเดฟเดฏเดฟเตฝ เดŽเดคเตเดคเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เด’เดจเตเดจเดพเดฎเดคเดพเดฏเดฟ, เดจเต‹เดกเต เดฐเดฃเตเดŸเดพเดฏเดฟ เดตเดฟเดญเดœเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต, เดฐเดฃเตเดŸเดพเดฎเดคเดพเดฏเดฟ, เดชเตเดคเดฟเดฏ เดฌเดกเตเดกเดฟเด‚เด—เต เดšเตˆเตฝเดกเต เดจเต‹เดกเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เดฒเดฟเด™เตเด•เต เดšเต‡เตผเด•เตเด•เตเด•. เดˆ เดจเดŸเดชเดŸเดฟเด•เตเดฐเดฎเด‚ เดตเดณเดฐเต† เด…เดชเด•เดŸเด•เดฐเดฎเดพเดฃเต. เดšเดฟเดฒ เด•เดพเดฐเดฃเด™เตเด™เดณเดพเตฝ (เดคเด•เตผเดšเตเดš, เดตเตˆเดฆเตเดฏเตเดคเดฟ เดคเดŸเดธเตเดธเด‚ เดฎเตเดคเดฒเดพเดฏเดต) เดชเดฐเดฎเตเดชเดฐเดฏเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดฎเดพเดฑเตเดฑเด™เตเด™เดณเตเดŸเต† เด’เดฐเต เดญเดพเด—เด‚ เดฎเดพเดคเตเดฐเดฎเต‡ เดธเด‚เดญเดตเดฟเด•เตเด•เตเด•เดฏเตเดณเตเดณเต‚เดตเต†เด™เตเด•เดฟเตฝ, เดฎเดฐเด‚ เด’เดฐเต เด…เดธเตเดฅเดฟเดฐเดฎเดพเดฏ เด…เดตเดธเตเดฅเดฏเดฟเตฝ เดคเตเดŸเดฐเตเด‚.

เด’เดฐเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดคเต†เดฑเตเดฑเต-เดธเดนเดฟเดทเตเดฃเตเดค เด‰เดฃเตเดŸเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดชเดฐเดฎเตเดชเดฐเดพเด—เดค เดชเดฐเดฟเดนเดพเดฐเด‚ เดฌเดฟ-เดŸเตเดฐเต€เดฏเตเดŸเต† เด…เดŸเตเดคเตเดคเดพเดฏเดฟ เด’เดฐเต เด…เดงเดฟเด• เด“เตบ-เดกเดฟเดธเตโ€Œเด•เต เดกเดพเดฑเตเดฑ เด˜เดŸเดจ เดšเต‡เตผเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต - เด’เดฐเต เด‡เดŸเดชเดพเดŸเต เดฒเต‹เด—เต, เด‡เดคเต เดฑเตˆเดฑเตเดฑเต-เดŽเดนเต†เดกเต เดฒเต‹เด—เต (WAL) เดŽเดจเตเดจเตเด‚ เด…เดฑเดฟเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเต. เดฌเดฟ-เดŸเตเดฐเต€ เดคเดจเตเดจเต† เดชเดฐเดฟเดทเตเด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเต เด‰เดฆเตเดฆเต‡เดถเดฟเดšเตเดš เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เด•เตผเดถเดจเดฎเดพเดฏเดฟ เดŽเดดเตเดคเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดซเดฏเดฒเดพเดฃเดฟเดคเต. เด…เดคเดฟเดจเดพเตฝ, เดธเตเดตเดฏเด‚ เดฐเต‹เด—เดจเดฟเตผเดฃเตเดฃเดฏ เดธเดฎเดฏเดคเตเดคเต เดกเดพเดฑเตเดฑ เด…เดดเดฟเดฎเดคเดฟ เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏเดพเตฝ, เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดธเตเดตเดฏเด‚ เด•เตเดฐเดฎเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเต เดฒเต‹เด—เต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเต.

เด•เต‹เดชเตเดชเดฟ-เด“เตบ-เดฑเตˆเดฑเตเดฑเต เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจ เด’เดฐเต เดคเต†เดฑเตเดฑเต เดธเดนเดฟเดทเตเดฃเตเดค เดฎเต†เด•เตเด•เดพเดจเดฟเดธเดฎเดพเดฏเดฟ เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดฎเดฑเตเดฑเตŠเดฐเต เดฐเต€เดคเดฟ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเต. เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เด’เดฐเต เดชเต‡เดœเดฟเดฒเต† เดกเดพเดฑเตเดฑ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดชเด•เดฐเด‚, เด…เดคเต เด†เดฆเตเดฏเด‚ เด…เดคเต เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดชเด•เตผเดคเตเดคเตเด•เดฏเตเด‚ เดชเด•เตผเดชเตเดชเดฟเตฝ เดŽเดฒเตเดฒเดพ เดฎเดพเดฑเตเดฑเด™เตเด™เดณเตเด‚ เดตเดฐเตเดคเตเดคเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต เดŽเดจเตเดจเดคเดพเดฃเต เด‡เดคเดฟเตปเตเดฑเต† เดธเดพเดฐเด‚.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตโ€Œเดค เดกเดพเดฑเตเดฑ เดฒเดญเตเดฏเดฎเดพเด•เตเดจเตเดจเดคเดฟเดจเต, เด…เดคเดฟเตปเตเดฑเต† เดชเดพเดฐเตปเตเดฑเต เดจเต‹เดกเดฟเตฝ เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เดจเต‹เดกเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดฒเดฟเด™เตเด•เต เดฎเดพเดฑเตเดฑเต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เด‡เดคเดฟเดจเตเด‚ เดฎเดพเดฑเตเดฑเด‚ เดตเดฐเตเดคเตเดคเต‡เดฃเตเดŸเดคเดฟเดจเดพเตฝ เด…เดคเตเด‚ เดฎเตเตปเดชเต‡ เดชเด•เตผเดคเตเดคเดฟ. เดˆ เดชเตเดฐเด•เตเดฐเดฟเดฏ เดฑเต‚เดŸเตเดŸเต เดตเดฐเต† เด†เดตเตผเดคเตเดคเดฟเดšเตเดšเต เดคเตเดŸเดฐเตเดจเตเดจเต. เด…เดตเดธเดพเดจเดฎเดพเดฏเดฟ เดฎเดพเดฑเตเดฑเต‡เดฃเตเดŸเดคเต เดฎเต†เดฑเตเดฑเดพ เดชเต‡เดœเดฟเดฒเต† เดกเดพเดฑเตเดฑเดฏเดพเดฃเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดจเดŸเดชเดŸเดฟเด•เตเดฐเดฎเดคเตเดคเดฟเดจเดฟเดŸเดฏเดฟเตฝ เดชเต†เดŸเตเดŸเต†เดจเตเดจเต เดชเตเดฐเต‹เดธเดธเตเดธเต เดคเด•เดฐเดพเดฑเดฟเดฒเดพเดฏเดพเตฝ, เด’เดจเตเดจเตเด•เดฟเตฝ เด’เดฐเต เดชเตเดคเดฟเดฏ เดฎเต†เดฑเตเดฑเดพ เดชเต‡เดœเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดชเตเดชเต†เดŸเดฟเดฒเตเดฒ, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด…เดคเต เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดกเดฟเดธเตเด•เดฟเดฒเต‡เด•เตเด•เต เดŽเดดเตเดคเดชเตเดชเต†เดŸเดฟเดฒเตเดฒ, เด•เต‚เดŸเดพเดคเต† เด…เดคเดฟเตปเตเดฑเต† เดšเต†เด•เตเด•เตเดธเด‚ เดคเต†เดฑเตเดฑเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚. เดˆ เดฐเดฃเตเดŸเต เดธเดพเดนเดšเดฐเตเดฏเด™เตเด™เดณเดฟเดฒเตเด‚, เดชเตเดคเดฟเดฏ เดชเต‡เดœเตเด•เตพ เดฒเดญเตเดฏเดฎเดฒเตเดฒ, เดŽเดจเตเดจเดพเตฝ เดชเดดเดฏ เดชเต‡เดœเตเด•เดณเต† เดฌเดพเดงเดฟเด•เตเด•เดฟเดฒเตเดฒ. เดกเดพเดฑเตเดฑเดพ เดธเตเดฅเดฟเดฐเดค เดจเดฟเดฒเดจเดฟเตผเดคเตเดคเดพเตป เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดฐเต‡เด–เดพเดฎเต‚เดฒเด‚ เดŽเดดเตเดคเต‡เดฃเตเดŸเดคเดฟเตปเตเดฑเต† เด†เดตเดถเตเดฏเด•เดค เด‡เดคเต เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเดจเตเดจเต. เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ, เดฎเตเด•เดณเดฟเตฝ เดตเดฟเดตเดฐเดฟเดšเตเดš เดกเดฟเดธเตเด•เดฟเดฒเต† เดกเดพเดฑเตเดฑ เดธเด‚เดญเดฐเดฃเดคเตเดคเดฟเตปเตเดฑเต† เด˜เดŸเดจ เด’เดฐเต‡เดธเดฎเดฏเด‚ เด…เดคเดฟเตปเตเดฑเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดเดฑเตเดฑเต†เดŸเตเด•เตเด•เตเดจเตเดจเต. เดตเตเดฏเด•เตเดคเดฎเดพเดฏ เด‡เดŸเดชเดพเดŸเต เดฒเต‹เด—เดฟเตปเตเดฑเต† เด…เดญเดพเดตเด‚ เด‰เดฏเตผเดจเตเดจ เดกเดพเดฑเตเดฑ เดฑเต€เดกเดฟเด‚เด—เต เดตเต‡เด—เดค เดจเตฝเด•เตเดจเตเดจ เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดธเดตเดฟเดถเต‡เดทเดคเด•เดณเดฟเดฒเตŠเดจเตเดจเดพเดฃเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดคเดคเตเดซเดฒเดฎเดพเดฏเตเดฃเตเดŸเดพเด•เตเดจเตเดจ เดกเดฟเดธเตˆเตป, เด†เดชเตเดชเตปเดกเต-เด’เตบเดฒเดฟ เดฌเดฟ-เดŸเตเดฐเต€ เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต, เดธเตเดตเดพเดญเดพเดตเดฟเด•เดฎเดพเดฏเตเด‚ เด‡เดŸเดชเดพเดŸเต เด’เดฑเตเดฑเดชเตเดชเต†เดŸเดฒเตเด‚ เดฎเตพเดŸเตเดŸเดฟ-เดตเต‡เตผเดทเดจเดฟเด‚เด—เตเด‚ เดจเตฝเด•เตเดจเตเดจเต. LMDB-เดฏเดฟเตฝ, เด“เดฐเต‹ เด“เดชเตเดชเตบ เด‡เดŸเดชเดพเดŸเตเด•เดณเตเด‚ เดจเดฟเดฒเดตเดฟเตฝ เดชเตเดฐเดธเด•เตเดคเดฎเดพเดฏ เดŸเตเดฐเต€ เดฑเต‚เดŸเตเดŸเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด‡เดŸเดชเดพเดŸเต เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเดจเตเดจเดคเตเดตเดฐเต†, เด…เดคเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดŸเตเดฐเต€เดฏเตเดŸเต† เดชเต‡เดœเตเด•เตพ เด’เดฐเดฟเด•เตเด•เดฒเตเด‚ เดฎเดพเดฑเตเดฑเตเด•เดฏเต‹ เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เดชเตเดคเดฟเดฏ เดชเดคเดฟเดชเตเดชเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดตเต€เดฃเตเดŸเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•เดฏเต‹ เดšเต†เดฏเตเดฏเดฟเดฒเตเดฒ. เด…เดคเดฟเดจเดพเตฝ, เด† เดธเดฎเดฏเดคเตเดคเต เดชเตเดฐเดธเด•เตเดคเดฎเดพเดฏเดฟเดฐเตเดจเตเดจ เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เดธเต†เดฑเตเดฑเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดทเตเดŸเดฎเตเดณเตเดณเดฟเดŸเดคเตเดคเต‹เดณเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. เดˆ เดธเดฎเดฏเดคเตเดคเต เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เดธเดœเต€เดตเดฎเดพเดฏเดฟ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดคเตเดŸเดฐเตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝเดชเตเดชเต‹เดฒเตเด‚, เด‡เดŸเดชเดพเดŸเต เดคเตเดฑเดจเตเดจเต. เด‡เดคเดพเดฃเต เดฎเตพเดŸเตเดŸเดฟเดตเต‡เตผเดทเตปเตเดฑเต† เดธเดคเตเดค, เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเต† เดจเดฎเตเดฎเตเดŸเต† เดชเตเดฐเดฟเดฏเดชเตเดชเต†เดŸเตเดŸเดตเตผเด•เตเด•เต เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฏ เด’เดฐเต เดกเดพเดฑเตเดฑเดพ เด‰เดฑเดตเดฟเดŸเดฎเดพเด•เตเด•เดฟ เดฎเดพเดฑเตเดฑเตเดจเตเดจเต UICollectionView. เด’เดฐเต เดŸเตเดฐเดพเตปเดธเดพเด•เตเดทเตป เดคเตเดฑเดจเตเดจเต เด•เดดเดฟเดžเตเดžเดพเตฝ, เด’เดจเตเดจเตเด‚ เดฌเดพเด•เตเด•เดฟเดฏเดพเด•เตเดฎเต‹ เดŽเดจเตเดจ เดญเดฏเดคเตเดคเดพเตฝ, เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เดกเดพเดฑเตเดฑ เดšเดฟเดฒ เด‡เตป-เดฎเต†เดฎเตเดฎเดฑเดฟ เด˜เดŸเดจเดฏเดฟเดฒเต‡เด•เตเด•เต เดตเต‡เด—เดคเตเดคเดฟเตฝ เดชเดฎเตเดชเต เดšเต†เดฏเตเดคเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตปเตเดฑเต† เดฎเต†เดฎเตเดฎเดฑเดฟ เดซเตเดŸเตโ€Œเดชเตเดฐเดฟเตปเตเดฑเต เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เต‡เดฃเตเดŸ เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ. เดˆ เดธเดตเดฟเดถเต‡เดทเดค เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเต† เด…เดคเต‡ SQLite-เตฝ เดจเดฟเดจเตเดจเต เดตเต‡เตผเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด‡เดคเต เด…เดคเตเดคเดฐเด‚ เดฎเตŠเดคเตเดคเดคเตเดคเดฟเดฒเตเดณเตเดณ เด’เดฑเตเดฑเดชเตเดชเต†เดŸเดฒเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เด…เดญเดฟเดฎเดพเดจเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ. เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต‡เดคเดฟเตฝ เดฐเดฃเตเดŸเต เด‡เดŸเดชเดพเดŸเตเด•เตพ เดคเตเดฑเด•เตเด•เตเด•เดฏเตเด‚ เด…เดตเดฏเดฟเดฒเตŠเดจเตเดจเดฟเตฝ เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดฑเต†เด•เตเด•เต‹เตผเดกเต เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตโ€Œเดคเดพเตฝ, เดถเต‡เดทเดฟเด•เตเด•เตเดจเตเดจ เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต‡เดคเดฟเตฝ เด…เดคเต‡ เดฑเต†เด•เตเด•เต‹เตผเดกเต เด‡เดจเดฟ เดฒเดญเดฟเด•เตเด•เดฟเดฒเตเดฒ.

เดจเดพเดฃเดฏเดคเตเดคเดฟเตปเตเดฑเต† เดฎเดฑเตเดตเดถเด‚ เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเตเดŸเต† เด‰เดฏเตผเดจเตเดจ เด‰เดชเดญเต‹เด—เดฎเดพเดฃเต. เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตปเตเดฑเต† เดตเตเดฏเดคเตเดฏเดธเตเดค เดชเดคเดฟเดชเตเดชเตเด•เตพ เดจเต‹เด•เตเด•เดฟ 3 เด“เดชเตเดชเตบ เดฑเต€เดกเต เดŸเตเดฐเดพเตปเดธเดพเด•เตเดทเดจเตเด•เตพเด•เตเด•เตŠเดชเตเดชเด‚ เด’เดฐเต‡เดธเดฎเดฏเด‚ เดชเดฐเดฟเดทเตเด•เดฐเดฟเดšเตเดšเดพเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เด˜เดŸเดจ เดŽเด™เตเด™เดจเต†เดฏเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเดฎเต†เดจเตเดจเต เดธเตเดฒเตˆเดกเต เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเต. เดจเดฟเดฒเดตเดฟเดฒเต† เด‡เดŸเดชเดพเดŸเตเด•เดณเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดฑเต‚เดŸเตเดŸเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดฒเดญเตเดฏเดฎเดพเด•เตเดจเตเดจ เดจเต‹เดกเตเด•เตพ เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเด•เตเด•เต เดตเต€เดฃเตเดŸเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเดพเดคเตเดคเดคเดฟเดจเดพเตฝ, เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดฎเดฑเตเดฑเตŠเดฐเต เดจเดพเดฒเดพเดฎเดคเตเดคเต† เดฑเต‚เดŸเตเดŸเต เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด…เดคเดฟเดจเต เด•เต€เดดเดฟเดฒเตเดณเตเดณ เดชเดฐเดฟเดทเตเด•เดฐเดฟเดšเตเดš เดชเต‡เดœเตเด•เตพ เดตเต€เดฃเตเดŸเตเด‚ เด•เตเดฒเต‹เตบ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด•เดฏเดฒเตเดฒเดพเดคเต† เดธเตเดฑเตเดฑเต‹เดฑเดฟเดจเต เดฎเดฑเตเดฑเต เดฎเดพเตผเด—เดฎเดฟเดฒเตเดฒ.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เด‡เดตเดฟเดŸเต† เดฎเต†เดฎเตเดฎเดฑเดฟ-เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดค เดซเดฏเดฒเตเด•เดณเตเดŸเต† เดตเดฟเดญเดพเด—เด‚ เดคเดฟเดฐเดฟเดšเตเดšเตเดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเดคเต เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเด•เตเด‚. เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเตเดŸเต† เด…เดงเดฟเด• เด‰เดชเดญเต‹เด—เด‚ เดžเด™เตเด™เดณเต† เดตเดณเดฐเต†เดฏเดงเดฟเด•เด‚ เดตเดฟเดทเดฎเดฟเดชเตเดชเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒเต†เดจเตเดจเต เดคเต‹เดจเตเดจเตเดจเตเดจเต, เด•เดพเดฐเดฃเด‚ เด‡เดคเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตปเตเดฑเต† เดฎเต†เดฎเตเดฎเดฑเดฟ เดซเตเดŸเตโ€Œเดชเตเดฐเดฟเตปเตเดฑเดฟเดฒเต‡เด•เตเด•เต เดธเด‚เดญเดพเดตเดจ เดšเต†เดฏเตเดฏเตเดจเตเดจเดฟเดฒเตเดฒ. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เด…เดคเต‡ เดธเดฎเดฏเด‚, เด…เดคเต เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเตฝ iOS เดตเดณเดฐเต† เดชเดฟเดถเตเด•เตเด•เต เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเตเด‚, เด’เดฐเต เดธเต†เตผเดตเดฑเดฟเดฒเต‹ เดกเต†เดธเตเด•เตเดŸเต‹เดชเตเดชเดฟเดฒเต‹ เด‰เดณเตเดณเดคเตเดชเต‹เดฒเต†, 1 เดŸเต†เดฑเดพเดฌเตˆเดฑเตเดฑเดฟเตปเตเดฑเต† LMDB เดฎเต‡เด–เดฒ เดจเตฝเด•เดพเตป เดžเด™เตเด™เตพเด•เตเด•เต เด•เดดเดฟเดฏเดฟเดฒเตเดฒเต†เดจเตเดจเตเด‚ เดˆ เดธเดตเดฟเดถเต‡เดทเดคเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดšเดฟเดจเตเดคเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒเต†เดจเตเดจเตเด‚ เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดŸเต. เดธเดพเดงเตเดฏเดฎเต†เด™เตเด•เดฟเตฝ, เด‡เดŸเดชเดพเดŸเตเด•เดณเตเดŸเต† เด†เดฏเตเดธเตเดธเต เด•เดดเดฟเดฏเตเดจเตเดจเดคเตเดฐ เดšเต†เดฑเตเดคเดพเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เตพ เดถเตเดฐเดฎเดฟเด•เตเด•เดฃเด‚.

4. เด•เต€-เดตเดพเดฒเตเดฏเต‚ API-เดฏเตเดŸเต† เดฎเตเด•เดณเดฟเตฝ เด’เดฐเต เดกเดพเดฑเตเดฑเดพ เดธเตเด•เต€เดฎ เดฐเต‚เดชเด•เตฝเดชเตเดชเดจ เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดจเตฝเด•เตเดจเตเดจ เด…เดŸเดฟเดธเตเดฅเดพเดจ เดธเด‚เด—เตเดฐเดนเด™เตเด™เตพ เดจเต‹เด•เตเด•เดฟ เดจเดฎเตเด•เตเด•เต เดžเด™เตเด™เดณเตเดŸเต† API เดตเดฟเดถเด•เดฒเดจเด‚ เด†เดฐเด‚เดญเดฟเด•เตเด•เดพเด‚: เดชเดฐเดฟเดธเตเดฅเดฟเดคเดฟเดฏเตเด‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เดณเตเด‚, เด•เต€เด•เดณเตเด‚ เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเตเด‚, เด‡เดŸเดชเดพเดŸเตเด•เดณเตเด‚ เด•เดดเตโ€Œเดธเดฑเตเด•เดณเตเด‚.

เด•เต‹เดกเต เดฒเดฟเดธเตเดฑเตเดฑเดฟเด‚เด—เตเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เด’เดฐเต เด•เตเดฑเดฟเดชเตเดชเต

เดชเตŠเดคเต LMDB API-เดฏเดฟเดฒเต† เดŽเดฒเตเดฒเดพ เดซเด‚เด—เตโ€Œเดทเดจเตเด•เดณเตเด‚ เด…เดตเดฐเตเดŸเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเตปเตเดฑเต† เดซเดฒเด‚ เด’เดฐเต เดชเดฟเดถเด•เต เด•เต‹เดกเดฟเตปเตเดฑเต† เดฐเต‚เดชเดคเตเดคเดฟเตฝ เดจเตฝเด•เตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ เดคเตเดŸเตผเดจเตเดจเตเดณเตเดณ เดŽเดฒเตเดฒเดพ เดฒเดฟเดธเตเดฑเตเดฑเดฟเด‚เด—เตเด•เดณเดฟเดฒเตเด‚ เด…เดคเดฟเตปเตเดฑเต† เดธเตเดฅเดฟเดฐเต€เด•เดฐเดฃเด‚ เดธเด‚เด•เตเดทเดฟเดชเตโ€Œเดคเดคเดฏเตโ€Œเด•เตเด•เดพเดฏเดฟ เด’เดดเดฟเดตเดพเด•เตเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดชเตเดฐเดพเดฏเต‹เด—เดฟเด•เดฎเดพเดฏเดฟ, เดถเต‡เด–เดฐเดตเตเดฎเดพเดฏเดฟ เดธเด‚เดตเดฆเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพ เดžเด™เตเด™เดณเตเดŸเต‡เดคเต เดชเต‹เดฒเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต. เดจเดพเตฝเด•เตเด•เดตเดฒ เดธเดฟ++ เดฑเดพเดชเตเดชเดฑเตเด•เตพ lmdbxx, เด‡เดคเดฟเตฝ เดชเดฟเดถเด•เตเด•เตพ C++ เด’เดดเดฟเดตเดพเด•เตเด•เดฒเตเด•เดณเดพเดฏเดฟ เดตเดธเตเดคเตเดจเดฟเดทเตเด เดฎเดพเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต.

iOS เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ macOS-เดจเตเดณเตเดณ เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต LMDB เด•เดฃเด•เตเดฑเตเดฑเตเดšเต†เดฏเตเดฏเดพเดจเตเดณเตเดณ เดเดฑเตเดฑเดตเตเด‚ เดตเต‡เด—เดคเดฏเต‡เดฑเดฟเดฏ เดฎเดพเตผเด—เดฎเต†เดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ, เดžเดพเตป เดŽเตปเตเดฑเต† CocoaPod เดจเดฟเตผเดฆเตเดฆเต‡เดถเดฟเด•เตเด•เตเดจเตเดจเต POSLMDB.

4.1. เด…เดŸเดฟเดธเตเดฅเดพเดจ เดธเด‚เด—เตเดฐเดนเด™เตเด™เตพ

เดชเดฐเดฟเดธเตเดฅเดฟเดคเดฟ

เด˜เดŸเดจ MDB_env LMDB เดฏเตเดŸเต† เด†เดจเตเดคเดฐเดฟเด• เด…เดตเดธเตเดฅเดฏเตเดŸเต† เดถเต‡เด–เดฐเดฎเดพเดฃเต. เดชเตเดฐเดฟเดซเดฟเด•เตเดธเดกเต เดซเด‚เด—เตเดทเตป เดซเดพเดฎเดฟเดฒเดฟ mdb_env เด…เดคเดฟเตปเตเดฑเต† เดšเดฟเดฒ เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟเด•เตพ เด•เตเดฐเดฎเต€เด•เดฐเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. เดเดฑเตเดฑเดตเตเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดŽเดžเตเดšเดฟเตป เดธเดฎเดพเดฐเด‚เดญเด‚ เด‡เดคเตเดชเต‹เดฒเต† เด•เดพเดฃเดชเตเดชเต†เดŸเตเดจเตเดจเต.

mdb_env_create(env);โ€‹
mdb_env_set_map_size(*env, 1024 * 1024 * 512)โ€‹
mdb_env_open(*env, path.UTF8String, MDB_NOTLS, 0664);

Mail.ru เด•เตเดฒเต—เดกเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเดฟเตฝ, เดžเด™เตเด™เตพ เดฐเดฃเตเดŸเต เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เดณเตเดŸเต† เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟ เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดฎเดพเดคเตเดฐเด‚ เดฎเดพเดฑเตเดฑเดฟ.

เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เดซเดฏเตฝ เดฎเดพเดชเตเดชเต เดšเต†เดฏเตโ€Œเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดตเต†เตผเดšเตเดตเตฝ เด…เดกเตเดฐเดธเต เดธเตโ€Œเดชเต†เดฏเตโ€Œเดธเดฟเตปเตเดฑเต† เดตเดฒเตเดชเตเดชเดฎเดพเดฃเต เด†เดฆเตเดฏเดคเตเดคเต‡เดคเต. เดจเดฟเตผเดญเดพเด—เตเดฏเดตเดถเดพเตฝ, เด’เดฐเต‡ เด‰เดชเด•เดฐเดฃเดคเตเดคเดฟเตฝ เดชเต‹เดฒเตเด‚, เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ เดฎเต‚เดฒเตเดฏเด‚ เดฑเตบ เดฎเตเดคเตฝ เดฑเตบ เดตเดฐเต† เด—เดฃเตเดฏเดฎเดพเดฏเดฟ เดตเตเดฏเดคเตเดฏเดพเดธเดชเตเดชเต†เดŸเดพเด‚. IOS-เตปเตเดฑเต† เดˆ เดธเดตเดฟเดถเต‡เดทเดค เด•เดฃเด•เตเด•เดฟเดฒเต†เดŸเตเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดชเดฐเดฎเดพเดตเดงเดฟ เดธเด‚เดญเดฐเดฃ โ€‹โ€‹เดตเต‹เดณเดฟเดฏเด‚ เดšเดฒเดจเดพเดคเตเดฎเด•เดฎเดพเดฏเดฟ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดฎเต‚เดฒเตเดฏเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เด†เดฐเด‚เดญเดฟเดšเตเดšเต, เด…เดคเต เดซเด‚เด—เตเดทเตป เดตเดฐเต† เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏเดฟ เดชเด•เตเดคเดฟเดฏเดพเดฏเดฟ เด•เตเดฑเดฏเตเด•เตเด•เตเดจเตเดจเต mdb_env_open เด‡เดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏ เด’เดฐเต เดซเดฒเด‚ เดจเตฝเด•เดฟเดฒเตเดฒ ENOMEM. เดธเดฟเดฆเตเดงเดพเดจเตเดคเดคเตเดคเดฟเตฝ, เดตเดฟเดชเดฐเต€เดค เดฎเดพเตผเด—เดตเตเดฎเตเดฃเตเดŸเต - เด†เดฆเตเดฏเด‚ เดŽเดžเตเดšเดฟเดจเดฟเดฒเต‡เด•เตเด•เต เด•เตเดฑเดžเตเดžเดคเต เดฎเต†เดฎเตเดฎเดฑเดฟ เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด•, เดคเตเดŸเตผเดจเตเดจเต เดชเดฟเดถเด•เตเด•เตพ เดฒเดญเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, MDB_MAP_FULL, เด…เดคเต เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเด•. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เด‡เดคเต เด•เต‚เดŸเตเดคเตฝ เดฎเตเดณเตเดณเตเดณเตเดณเดคเดพเดฃเต. เด•เดพเดฐเดฃเด‚, เดซเด‚เด—เตเดทเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฎเต†เดฎเตเดฎเดฑเดฟ (เดฑเต€เดฎเดพเดชเตเดชเต) เดตเต€เดฃเตเดŸเตเด‚ เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดจเดŸเดชเดŸเดฟเด•เตเดฐเดฎเด‚ mdb_env_set_map_size เดŽเดžเตเดšเดฟเดจเดฟเตฝ เดจเดฟเดจเตเดจเต เดฎเตเดฎเตเดชเต เดฒเดญเดฟเดšเตเดš เดŽเดฒเตเดฒเดพ เดŽเตปเตเดฑเดฟเดฑเตเดฑเดฟเด•เดณเต†เดฏเตเด‚ (เด•เตผเดธเดฑเตเด•เตพ, เด‡เดŸเดชเดพเดŸเตเด•เตพ, เด•เต€เด•เตพ, เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ) เด…เดธเดพเดงเตเดตเดพเด•เตเด•เตเดจเตเดจเต. เด•เต‹เดกเดฟเดฒเต† เดธเด‚เดญเดตเด™เตเด™เดณเตเดŸเต† เดˆ เดตเดดเดฟเดคเตเดคเดฟเดฐเดฟเดตเต เด•เดฃเด•เตเด•เดฟเดฒเต†เดŸเตเด•เตเด•เตเดจเตเดจเดคเต เด…เดคเดฟเตปเตเดฑเต† เด—เตเดฐเตเดคเดฐเดฎเดพเดฏ เดธเด™เตเด•เต€เตผเดฃเดคเดฏเดฟเดฒเต‡เด•เตเด•เต เดจเดฏเดฟเด•เตเด•เตเด‚. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเดณเดฐเต† เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต†เด™เตเด•เดฟเตฝ, เด‡เดคเต เดตเดณเดฐเต† เดฎเตเดจเตเดจเต‹เดŸเตเดŸเต เดชเต‹เดฏ เดซเต‹เตผเด•เตเด•เต เดธเต‚เด•เตเดทเตเดฎเดฎเดพเดฏเดฟ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เด’เดฐเต เด•เดพเดฐเดฃเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚. MDBX, เดชเตเดฐเด–เตเดฏเดพเดชเดฟเดšเตเดš เดซเต€เดšเตเดšเดฑเตเด•เดณเดฟเตฝ "เด“เดŸเตเดŸเต‹เดฎเดพเดฑเตเดฑเดฟเด•เต เด“เตบ-เดฆเดฟ-เดซเตเดฒเตˆ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดธเตˆเดธเต เด…เดกเตเดœเดธเตเดฑเตเดฑเตเดฎเต†เตปเตเดฑเต" เด‰เดฃเตเดŸเต.

เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเตผ, เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟ เดฎเต‚เดฒเตเดฏเด‚ เดžเด™เตเด™เตพเด•เตเด•เต เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดฒเตเดฒ, เดคเตเดฐเต†เดกเต เดธเตเดฐเด•เตเดท เด‰เดฑเดชเตเดชเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฎเต†เด•เตเด•เดพเดจเดฟเด•เตเดธเดฟเดจเต† เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดจเดฟเตผเดญเดพเด—เตเดฏเดตเดถเดพเตฝ, เดคเตเดฐเต†เดกเต เดฒเต‹เด•เตเด•เตฝ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเดฟเดจเตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃเดฏเตเดฎเดพเดฏเดฟ เด•เตเดฑเดžเตเดžเดคเต iOS 10-เดจเต เดชเตเดฐเดถเตโ€Œเดจเด™เตเด™เดณเตเดฃเตเดŸเต. เด‡เด•เตเด•เดพเดฐเดฃเดคเตเดคเดพเตฝ, เดฎเตเด•เดณเดฟเดฒเตเดณเตเดณ เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ, เดถเต‡เด–เดฐเด‚ เดซเตเดฒเดพเด—เต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดคเตเดฑเด•เตเด•เตเดจเตเดจเต MDB_NOTLS. เด‡เดคเตเด•เต‚เดŸเดพเดคเต†, เด…เดคเต เด†เดตเดถเตเดฏเดฎเดพเดฏเดฟเดฐเตเดจเตเดจเต เดจเดพเตฝเด•เตเด•เดตเดฒ C++ เดฑเดพเดชเตเดชเตผ lmdbxxเดˆ เด†เดŸเตเดฐเดฟเดฌเตเดฏเต‚เดŸเตเดŸเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เดฎเตเดฑเดฟเด•เตเด•เดพเดจเตเด‚ เด…เดคเดฟเตฝ.

เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ

เดžเด™เตเด™เตพ เดฎเตเด•เดณเดฟเตฝ เดšเตผเดšเตเดš เดšเต†เดฏเตเดค เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดฌเดฟ-เดŸเตเดฐเต€ เด‰เดฆเดพเดนเดฐเดฃเดฎเดพเดฃเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต. เด…เดคเดฟเตปเตเดฑเต† เด“เดชเตเดชเดฃเดฟเด‚เด—เต เด’เดฐเต เด‡เดŸเดชเดพเดŸเดฟเดจเตเดณเตเดณเดฟเตฝ เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเต เด†เดฆเตเดฏเด‚ เด…เตฝเดชเตเดชเด‚ เดตเดฟเดšเดฟเดคเตเดฐเดฎเดพเดฏเดฟ เดคเต‹เดจเตเดจเดฟเดฏเต‡เด•เตเด•เดพเด‚.

MDB_txn *txn;โ€‹
MDB_dbi dbi;โ€‹
mdb_txn_begin(env, NULL, MDB_RDONLY, &txn);โ€‹
mdb_dbi_open(txn, NULL, MDB_CREATE, &dbi);โ€‹
mdb_txn_abort(txn);

เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, LMDB-เดฏเดฟเดฒเต† เด’เดฐเต เด‡เดŸเดชเดพเดŸเต เด’เดฐเต เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เดŽเตปเตเดฑเดฟเดฑเตเดฑเดฟเดฏเดพเดฃเต, เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตปเตเดฑเดฟเดฑเตเดฑเดฟเดฏเดฒเตเดฒ. เดตเตเดฏเดคเตเดฏเดธเตเดค เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เดณเดฟเตฝ เดธเตเดฅเดฟเดคเดฟเดšเต†เดฏเตเดฏเตเดจเตเดจ เดŽเตปเตเดฑเดฟเดฑเตเดฑเดฟเด•เดณเดฟเตฝ เด†เดฑเตเดฑเต‹เดฎเดฟเด•เต เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดจเดŸเดคเตเดคเดพเตป เดˆ เด†เดถเดฏเด‚ เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. เดธเดฟเดฆเตเดงเดพเดจเตเดคเดคเตเดคเดฟเตฝ, เดตเตเดฏเดคเตเดฏเดธเตเดค เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เดณเตเดŸเต† เดฐเต‚เดชเดคเตเดคเดฟเตฝ เดชเดŸเตเดŸเดฟเด•เด•เตพ เดฎเต‹เดกเดฒเดฟเด‚เด—เต เดšเต†เดฏเตเดฏเดพเดจเตเดณเตเดณ เดธเดพเดงเตเดฏเดค เด‡เดคเต เดคเตเดฑเด•เตเด•เตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ เด’เดฐเต เดธเดฎเดฏเดคเตเดคเต เดžเดพเตป เดฎเดฑเตเดฑเตŠเดฐเต เดชเดพเดค เดธเตเดตเต€เด•เดฐเดฟเดšเตเดšเต, เดšเตเดตเดŸเต† เดตเดฟเดถเดฆเดฎเดพเดฏเดฟ เดตเดฟเดตเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.

เด•เต€เด•เดณเตเด‚ เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเตเด‚

เด˜เดŸเดจ MDB_val เด•เต€เดฏเตเดŸเต†เดฏเตเด‚ เดฎเต‚เดฒเตเดฏเดคเตเดคเดฟเตปเตเดฑเต†เดฏเตเด‚ เด†เดถเดฏเด‚ เดฎเดพเดคเตƒเด•เดฏเดพเด•เตเด•เตเดจเตเดจเต. เดถเต‡เด–เดฐเดคเตเดคเดฟเดจเต เด…เดตเดฏเตเดŸเต† เด…เตผเดคเตเดฅเดถเดพเดธเตเดคเตเดฐเดคเตเดคเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดฏเดพเดคเตŠเดฐเต เดงเดพเดฐเดฃเดฏเตเดฎเดฟเดฒเตเดฒ. เด…เดตเดณเต† เดธเด‚เดฌเดจเตเดงเดฟเดšเตเดšเดฟเดŸเดคเตเดคเต‹เดณเด‚, เดฎเดฑเตเดฑเต†เดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเดฒเตเดณเตเดณ เดฌเตˆเดฑเตเดฑเตเด•เดณเตเดŸเต† เด’เดฐเต เดจเดฟเดฐ เดฎเดพเดคเตเดฐเดฎเดพเดฃเต. เดชเดฐเดฎเดพเดตเดงเดฟ เด•เต€ เดตเดฒเตเดชเตเดชเด‚ 512 เดฌเตˆเดฑเตเดฑเตเด•เตพ เด†เดฃเต.

typedef struct MDB_val {โ€‹
    size_t mv_size;โ€‹
    void *mv_data;โ€‹
} MDB_val;โ€‹โ€‹

เด’เดฐเต เด•เด‚เดชเดพเดฑเต‡เดฑเตเดฑเตผ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เดธเตเดฑเตเดฑเต‹เตผ เด•เต€เด•เตพ เด†เดฐเต‹เดนเดฃ เด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เด…เดŸเตเด•เตเด•เตเดจเตเดจเต. เดจเดฟเด™เตเด™เดณเดคเต เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดกเดฟเดซเต‹เตพเดŸเตเดŸเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด‚, เด…เดคเต เด…เดตเดฏเต† เดฌเตˆเดฑเตเดฑเต-เดฌเตˆ-เดฌเตˆเดฑเตเดฑเต เดŽเดจเตเดจ เด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เดจเดฟเด˜เดฃเตเดŸเต เด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เด…เดŸเตเด•เตเด•เตเดจเตเดจเต.

เด‡เดŸเดชเดพเดŸเตเด•เตพ

เด‡เดŸเดชเดพเดŸเต เด˜เดŸเดจ เดตเดฟเดถเดฆเดฎเดพเดฏเดฟ เดตเดฟเดตเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดฎเตเตป เด…เดงเตเดฏเดพเดฏเด‚, เด…เดคเดฟเดจเดพเตฝ เด‡เดตเดฟเดŸเต† เดžเดพเตป เด…เดตเดฏเตเดŸเต† เดชเตเดฐเดงเดพเดจ เดธเดตเดฟเดถเต‡เดทเดคเด•เตพ เดšเตเดฐเตเด•เตเด•เดฎเดพเดฏเดฟ เด†เดตเตผเดคเตเดคเดฟเด•เตเด•เตเด‚:

  1. เดŽเดฒเตเดฒเดพ เด…เดŸเดฟเดธเตเดฅเดพเดจ เด—เตเดฃเด™เตเด™เดณเต†เดฏเตเด‚ เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเต เดŽเดธเดฟเดเดกเดฟ: เด†เดฑเตเดฑเต‹เดฎเดฟเดธเดฟเดฑเตเดฑเดฟ, เดธเตเดฅเดฟเดฐเดค, เด’เดฑเตเดฑเดชเตเดชเต†เดŸเตฝ, เดตเดฟเดถเตเดตเดพเดธเตเดฏเดค. MDBX-เตฝ เดชเดฐเดฟเดนเดฐเดฟเดšเตเดš MacOS-เดฒเตเด‚ iOS-เดฒเตเด‚ เดกเตเดฏเต‚เดฑเดฌเดฟเดฒเดฟเดฑเตเดฑเดฟเดฏเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ เด’เดฐเต เดฌเด—เต เด‰เดฃเตเดŸเต†เดจเตเดจเต เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เดพเดคเดฟเดฐเดฟเด•เตเด•เดพเตป เดŽเดจเดฟเด•เตเด•เต เด•เดดเดฟเดฏเดฟเดฒเตเดฒ. เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด…เดตเดฏเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ เดตเดพเดฏเดฟเด•เตเด•เดพเด‚ เดตเดพเดฏเดฟเด•เตเด•เตเด•.
  2. เดฎเตพเดŸเตเดŸเดฟ เดคเตเดฐเต†เดกเดฟเด‚เด—เดฟเตปเตเดฑเต† เดธเดฎเต€เดชเดจเด‚ "เด’เดฑเตเดฑ เดŽเดดเตเดคเตเดคเตเด•เดพเดฐเตป / เด’เดจเตเดจเดฟเดฒเดงเดฟเด•เด‚ เดตเดพเดฏเดจเด•เตเด•เดพเตผ" เดธเตเด•เต€เด‚ เดตเดฟเดตเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดŽเดดเตเดคเตเดคเตเด•เดพเตผ เดชเดฐเดธเตเดชเดฐเด‚ เดคเดŸเดฏเตเดจเตเดจเต, เดชเด•เตเดทเต‡ เดตเดพเดฏเดจเด•เตเด•เดพเดฐเต† เดคเดŸเดฏเดฐเตเดคเต. เดตเดพเดฏเดจเด•เตเด•เดพเตผ เดŽเดดเตเดคเตเดคเตเด•เดพเดฐเต†เดฏเต‹ เดชเดฐเดธเตเดชเดฐเด‚ เดคเดŸเดฏเตเดจเตเดจเดฟเดฒเตเดฒ.
  3. เดจเต†เดธเตเดฑเตเดฑเดกเต เด‡เดŸเดชเดพเดŸเตเด•เตพเด•เตเด•เตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ.
  4. เดฎเตพเดŸเตเดŸเดฟเดตเต‡เตผเดทเตป เดชเดฟเดจเตเดคเตเดฃ.

เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเดฟเดฒเต† เดฎเตพเดŸเตเดŸเดฟเดตเต‡เตผเดทเตป เดตเดณเดฐเต† เดฎเดฟเด•เดšเตเดšเดคเดพเดฃเต, เด…เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเตฝ เดชเตเดฐเด•เดŸเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เดžเดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต. เดคเดพเดดเต†เดฏเตเดณเตเดณ เด•เต‹เดกเดฟเตฝ เดจเดฟเดจเตเดจเต, เด“เดฐเต‹ เด‡เดŸเดชเดพเดŸเตเด‚ เด…เดคเต เดคเตเดฑเดจเตเดจ เดธเดฎเดฏเดคเตเดคเต เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตปเตเดฑเต† เดชเดคเดฟเดชเตเดชเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เดพเดฃเดพเตป เด•เดดเดฟเดฏเตเด‚, เดคเตเดŸเตผเดจเตเดจเตเดณเตเดณ เดŽเดฒเตเดฒเดพ เดฎเดพเดฑเตเดฑเด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเตเด‚ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เด’เดฑเตเดฑเดชเตเดชเต†เดŸเตเดŸเต. เดธเด‚เดญเดฐเดฃเด‚ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเดคเตเด‚ เด…เดคเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เดŸเต†เดธเตเดฑเตเดฑเต เดฑเต†เด•เตเด•เต‹เตผเดกเต เดšเต‡เตผเด•เตเด•เตเดจเตเดจเดคเตเด‚ เดฐเดธเด•เดฐเดฎเดพเดฏ เด’เดจเตเดจเตเด‚ เดชเตเดฐเดคเดฟเดจเดฟเดงเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ, เด…เดคเดฟเดจเดพเตฝ เดˆ เด†เดšเดพเดฐเด™เตเด™เตพ เดธเตโ€Œเดชเต‹เดฏเดฟเดฒเดฑเดฟเดจเต เด•เต€เดดเดฟเตฝ เด…เดตเดถเต‡เดทเดฟเด•เตเด•เตเดจเตเดจเต.

เด’เดฐเต เดŸเต†เดธเตเดฑเตเดฑเต เดŽเตปเดŸเตเดฐเดฟ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเต

MDB_env *env;
MDB_dbi dbi;
MDB_txn *txn;

mdb_env_create(&env);
mdb_env_open(env, "./testdb", MDB_NOTLS, 0664);

mdb_txn_begin(env, NULL, 0, &txn);
mdb_dbi_open(txn, NULL, 0, &dbi);
mdb_txn_abort(txn);

char k = 'k';
MDB_val key;
key.mv_size = sizeof(k);
key.mv_data = (void *)&k;

int v = 997;
MDB_val value;
value.mv_size = sizeof(v);
value.mv_data = (void *)&v;

mdb_txn_begin(env, NULL, 0, &txn);
mdb_put(txn, dbi, &key, &value, MDB_NOOVERWRITE);
mdb_txn_commit(txn);

MDB_txn *txn1, *txn2, *txn3;
MDB_val val;

// ะžั‚ะบั€ั‹ะฒะฐะตะผ 2 ั‚ั€ะฐะฝะทะฐะบั†ะธะธ, ะบะฐะถะดะฐั ะธะท ะบะพั‚ะพั€ั‹ั… ัะผะพั‚ั€ะธั‚
// ะฝะฐ ะฒะตั€ัะธัŽ ะฑะฐะทั‹ ะดะฐะฝะฝั‹ั… ั ะพะดะฝะพะน ะทะฐะฟะธััŒัŽ.
mdb_txn_begin(env, NULL, 0, &txn1); // read-write
mdb_txn_begin(env, NULL, MDB_RDONLY, &txn2); // read-only

// ะ’ ั€ะฐะผะบะฐั… ะฟะตั€ะฒะพะน ั‚ั€ะฐะฝะทะฐะบั†ะธะธ ัƒะดะฐะปัะตะผ ะธะท ะฑะฐะทั‹ ะดะฐะฝะฝั‹ั… ััƒั‰ะตัั‚ะฒัƒัŽั‰ัƒัŽ ะฒ ะฝะตะน ะทะฐะฟะธััŒ.
mdb_del(txn1, dbi, &key, NULL);
// ะคะธะบัะธั€ัƒะตะผ ัƒะดะฐะปะตะฝะธะต.
mdb_txn_commit(txn1);

// ะžั‚ะบั€ั‹ะฒะฐะตะผ ั‚ั€ะตั‚ัŒัŽ ั‚ั€ะฐะฝะทะฐะบั†ะธัŽ, ะบะพั‚ะพั€ะฐั ัะผะพั‚ั€ะธั‚ ะฝะฐ
// ะฐะบั‚ัƒะฐะปัŒะฝัƒัŽ ะฒะตั€ัะธัŽ ะฑะฐะทั‹ ะดะฐะฝะฝั‹ั…, ะณะดะต ะทะฐะฟะธัะธ ัƒะถะต ะฝะตั‚.
mdb_txn_begin(env, NULL, MDB_RDONLY, &txn3);
// ะฃะฑะตะถะดะฐะตะผัั, ั‡ั‚ะพ ะทะฐะฟะธััŒ ะฟะพ ะธัะบะพะผะพะผัƒ ะบะปัŽั‡ัƒ ัƒะถะต ะฝะต ััƒั‰ะตัั‚ะฒัƒะตั‚.
assert(mdb_get(txn3, dbi, &key, &val) == MDB_NOTFOUND);
// ะ—ะฐะฒะตั€ัˆะฐะตะผ ั‚ั€ะฐะฝะทะฐะบั†ะธัŽ.
mdb_txn_abort(txn3);

// ะฃะฑะตะถะดะฐะตะผัั, ั‡ั‚ะพ ะฒ ั€ะฐะผะบะฐั… ะฒั‚ะพั€ะพะน ั‚ั€ะฐะฝะทะฐะบั†ะธะธ, ะพั‚ะบั€ั‹ั‚ะพะน ะฝะฐ ะผะพะผะตะฝั‚
// ััƒั‰ะตัั‚ะฒะพะฒะฐะฝะธั ะทะฐะฟะธัะธ ะฒ ะฑะฐะทะต ะดะฐะฝะฝั‹ั…, ะตั‘ ะฒัั‘ ะตั‰ั‘ ะผะพะถะฝะพ ะฝะฐะนั‚ะธ ะฟะพ ะบะปัŽั‡ัƒ.
assert(mdb_get(txn2, dbi, &key, &val) == MDB_SUCCESS);
// ะŸั€ะพะฒะตั€ัะตะผ, ั‡ั‚ะพ ะฟะพ ะบะปัŽั‡ัƒ ะฟะพะปัƒั‡ะตะฝ ะฝะต ะฐะฑั‹ ะบะฐะบะพะน ะผัƒัะพั€, ะฐ ะฒะฐะปะธะดะฝั‹ะต ะดะฐะฝะฝั‹ะต.
assert(*(int *)val.mv_data == 997);
// ะ—ะฐะฒะตั€ัˆะฐะตะผ ั‚ั€ะฐะฝะทะฐะบั†ะธัŽ, ั€ะฐะฑะพั‚ะฐัŽั‰ะตะน ั…ะพั‚ัŒ ะธ ั ัƒัั‚ะฐั€ะตะฒัˆะตะน, ะฝะพ ะบะพะฝัะธัั‚ะตะฝั‚ะฝะพะน ะฑะฐะทะพะน ะดะฐะฝะฝั‹ั….
mdb_txn_abort(txn2);

SQLite-เดฒเตเด‚ เด‡เดคเต‡ เดŸเตเดฐเดฟเด•เตเด•เต เดชเดฐเต€เด•เตเดทเดฟเดšเตเดšเต เดŽเดจเตเดคเดพเดฃเต เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจเดคเต†เดจเตเดจเต เด•เดพเดฃเดพเตป เดžเดพเตป เดถเตเดชเดพเตผเดถ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เดฎเตพเดŸเตเดŸเดฟเดตเต‡เตผเดทเตป เด’เดฐเต iOS เดกเต†เดตเดฒเดชเตเดชเดฑเตเดŸเต† เดœเต€เดตเดฟเดคเดคเตเดคเดฟเดจเต เดตเดณเดฐเต† เดจเดฒเตเดฒ เด†เดจเตเด•เต‚เดฒเตเดฏเด™เตเด™เตพ เดจเตฝเด•เตเดจเตเดจเต. เดˆ เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เด‰เดชเดฏเต‹เด•เตเดคเตƒ เด…เดจเตเดญเดตเดชเดฐเดฟเด—เดฃเดจเด•เดณเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดธเตโ€Œเด•เตเดฐเต€เตป เดซเต‹เดฎเตเด•เตพเด•เตเด•เดพเดฏเตเดณเตเดณ เดกเดพเดฑเตเดฑ เด‰เดฑเดตเดฟเดŸเดคเตเดคเดฟเตปเตเดฑเต† เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดจเดฟเดฐเด•เตเด•เต เดŽเดณเตเดชเตเดชเดคเตเดคเดฟเดฒเตเด‚ เดธเตเดตเดพเดญเดพเดตเดฟเด•เดฎเดพเดฏเตเด‚ เด•เตเดฐเดฎเต€เด•เดฐเดฟเด•เตเด•เดพเดจเดพเด•เตเด‚. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฎเต€เดกเดฟเดฏ เด—เดพเดฒเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เดธเตเดตเดฏเดฎเต‡เดต เดฒเต‹เดกเตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดชเต‹เดฒเต†เดฏเตเดณเตเดณ Mail.ru เด•เตเดฒเต—เดกเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตปเตเดฑเต† เด’เดฐเต เดธเดตเดฟเดถเต‡เดทเดค เดŽเดŸเตเด•เตเด•เดพเด‚. เด’เดฐเต เดจเดฒเตเดฒ เด•เดฃเด•เตเดทเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เดธเต†เตผเดตเดฑเดฟเดฒเต‡เด•เตเด•เต เดธเต†เด•เตเด•เตปเดกเดฟเตฝ เดจเดฟเดฐเดตเดงเดฟ เดซเต‹เดŸเตเดŸเต‹เด•เตพ เดšเต‡เตผเด•เตเด•เดพเตป เด•เตเดฒเดฏเตปเตเดฑเดฟเดจเต เด•เดดเดฟเดฏเตเด‚. เด“เดฐเต‹ เดกเต—เตบเดฒเต‹เดกเดฟเดจเตเด‚ เดถเต‡เดทเด‚ เดจเดฟเด™เตเด™เตพ เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ UICollectionView เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเตปเตเดฑเต† เด•เตเดฒเต—เดกเดฟเดฒเต† เดฎเต€เดกเดฟเดฏ เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เดˆ เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 60 เดŽเดซเตเดชเดฟเดŽเดธเตเด•เดณเตเด‚ เดธเตเด—เดฎเดฎเดพเดฏ เดธเตเด•เตเดฐเต‹เดณเดฟเด‚เด—เตเด‚ เดฎเดฑเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. เด‡เดŸเดฏเตโ€Œเด•เตเด•เดฟเดŸเต†เดฏเตเดณเตเดณ เดธเตโ€Œเด•เตเดฐเต€เตป เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเตเด•เตพ เดคเดŸเดฏเดพเตป, เด…เดŸเดฟเดธเตเดฅเดพเดจเดคเตเดคเดฟเดฒเตเดณเตเดณ เดกเดพเดฑเตเดฑ เดฎเดพเดฑเตเดจเตเดจ เดจเดฟเดฐเด•เตเด•เต เดจเดฟเด™เตเด™เตพ เดŽเด™เตเด™เดจเต†เดฏเต†เด™เตเด•เดฟเดฒเตเด‚ เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเต†เดŸเตเดคเตเดคเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต UICollectionViewDataSource.

เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดฎเตพเดŸเตเดŸเดฟเดตเต‡เตผเดทเดจเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเดฒเดตเดฟเดฒเต† เดจเดฟเดฒเดตเดฟเดฒเต† เด…เดตเดธเตเดฅเดฏเดฟเตฝ เดฎเดพเดคเตเดฐเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เดธเดฎเดฏ-เดธเตเดฅเดฟเดฐเดคเดฏเตเดณเตเดณ เดธเตเดจเดพเดชเตเดชเตเดทเต‹เดŸเตเดŸเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพ เด…เดคเต เดšเดฟเดฒ เด‡เตป-เดฎเต†เดฎเตเดฎเดฑเดฟ เดกเดพเดฑเตเดฑเดพ เด˜เดŸเดจเดฏเดฟเดฒเต‡เด•เตเด•เต‹ เดคเดพเตฝเด•เตเด•เดพเดฒเดฟเด• เดชเดŸเตเดŸเดฟเด•เดฏเดฟเดฒเต‡เด•เตเด•เต‹ เดชเด•เตผเดคเตเดคเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เดˆ เดธเดฎเต€เดชเดจเด™เตเด™เดณเดฟเตฝ เดเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดตเดณเดฐเต† เดšเต†เดฒเดตเต‡เดฑเดฟเดฏเดคเดพเดฃเต. เด‡เตป-เดฎเต†เดฎเตเดฎเดฑเดฟ เดธเตโ€Œเดฑเตเดฑเต‹เดฑเต‡เดœเดฟเตปเตเดฑเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดจเดฟเตผเดฎเตเดฎเดฟเดšเตเดš เด’เดฌเตโ€Œเดœเด•เตโ€Œเดฑเตเดฑเตเด•เตพ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เด‰เดฃเตเดŸเดพเด•เตเดจเตเดจ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเตเด‚ เด•เดพเดฒเด•เตเดฐเดฎเต‡เดฃ, เด…เดจเดพเดตเดถเตเดฏ ORM เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸเตเด‚ เดžเด™เตเด™เตพเด•เตเด•เต เดšเดฟเดฒเดตเต เดฒเดญเดฟเด•เตเด•เตเด‚. เดคเดพเตฝเด•เตเด•เดพเดฒเดฟเด• เดชเดŸเตเดŸเดฟเด•เดฏเต† เดธเด‚เดฌเดจเตเดงเดฟเดšเตเดšเดฟเดŸเดคเตเดคเต‹เดณเด‚, เด‡เดคเต เด•เต‚เดŸเตเดคเตฝ เดšเต†เดฒเดตเต‡เดฑเดฟเดฏ เด†เดจเดจเตเดฆเดฎเดพเดฃเต, เดจเดฟเดธเตเดธเดพเดฐเดฎเดฒเตเดฒเดพเดคเตเดค เด•เต‡เดธเตเด•เดณเดฟเตฝ เดฎเดพเดคเตเดฐเด‚ เด…เตผเดคเตเดฅเดฎเดพเด•เตเด•เตเดจเตเดจเต.

เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดฎเตพเดŸเตเดŸเดฟเดตเต‡เตผเดทเตป เดธเตŠเดฒเตเดฏเต‚เดทเตป เดตเดณเดฐเต† เด—เด‚เดญเต€เดฐเดฎเดพเดฏ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดธเตเดฅเดฟเดฐเดคเดฏเตเดณเตเดณ เดกเดพเดฑเตเดฑเดพ เด‰เดฑเดตเดฟเดŸเด‚ เดจเดฟเดฒเดจเดฟเตผเดคเตเดคเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดถเตเดจเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด’เดฐเต เด‡เดŸเดชเดพเดŸเตเด‚ เดตเต‹เดฏเดฟเดฒเดฏเตเด‚ เดคเตเดฑเดจเตเดจเดพเตฝ เดฎเดพเดคเตเดฐเด‚ เดฎเดคเดฟ - เดžเด™เตเด™เตพ เด…เดคเต เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเด•เตเดจเตเดจเดคเต เดตเดฐเต†, เดกเดพเดฑเตเดฑ เดธเต†เดฑเตเดฑเต เดถเดฐเดฟเดฏเดพเด•เตเด•เตเดฎเต†เดจเตเดจเต เด‰เดฑเดชเตเดชเตเดจเตฝเด•เตเดจเตเดจเต. เด…เดคเดฟเตปเตเดฑเต† เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดตเต‡เด—เดคเดฏเตเดŸเต† เดฏเตเด•เตเดคเดฟ เด‡เดชเตเดชเต‹เตพ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เด…เดตเดคเดฐเดฃ เดชเดพเดณเดฟเดฏเตเดŸเต† เด•เตˆเด•เดณเดฟเดฒเดพเดฃเต, เด•เดพเดฐเตเดฏเดฎเดพเดฏ เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเตŠเดจเตเดจเตเดฎเดฟเดฒเตเดฒ.

เด•เดดเตโ€Œเดธเดฑเตเด•เตพ

เดฌเดฟ-เดŸเตเดฐเต€ เดŸเตเดฐเดพเดตเต†เตผเดธเดฒเดฟเดฒเต‚เดŸเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดœเต‹เดกเดฟเด•เดณเดฟเตฝ เด•เตเดฐเดฎเดพเดจเตเด—เดคเดฎเดพเดฏเดฟ เด†เดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดธเด‚เดตเดฟเดงเดพเดจเด‚ เด•เดดเตโ€Œเดธเดฑเตเด•เตพ เดจเตฝเด•เตเดจเตเดจเต. เด…เดตเดฏเดฟเดฒเตเดฒเดพเดคเต†, เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดฒเต† เดชเดŸเตเดŸเดฟเด•เด•เตพ เดซเดฒเดชเตเดฐเดฆเดฎเดพเดฏเดฟ เดฎเดพเดคเตƒเด•เดฏเดพเด•เตเด•เตเดจเตเดจเดคเต เด…เดธเดพเดงเตเดฏเดฎเดพเดฃเต, เด…เดคเต เดžเด™เตเด™เตพ เด‡เดชเตเดชเต‹เตพ เดคเดฟเดฐเดฟเดฏเตเดจเตเดจเต.

4.2 เดŸเต‡เดฌเดฟเตพ เดฎเต‹เดกเดฒเดฟเด‚เด—เต

เด…เดŸเดฟเดธเตเดฅเดพเดจ เด…เดฎเต‚เตผเดคเตเดคเดคเด•เตพเด•เตเด•เต เดฎเตเด•เดณเดฟเตฝ เด’เดฐเต เดŸเต‡เดฌเดฟเตพ เดชเต‹เดฒเต†เดฏเตเดณเตเดณ เด‰เดฏเตผเดจเตเดจ เดคเดฒเดคเตเดคเดฟเดฒเตเดณเตเดณ เด…เดฎเต‚เตผเดคเตเดคเต€เด•เดฐเดฃเด‚ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเตป เด•เต€ เด“เตผเดกเดฑเดฟเด‚เด—เดฟเตปเตเดฑเต† เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟ เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. เด•เตเดฒเต—เดกเต เด•เตเดฒเดฏเตปเตเดฑเดฟเตปเตเดฑเต† เดชเตเดฐเดงเดพเดจ เดชเดŸเตเดŸเดฟเด•เดฏเตเดŸเต† เด‰เดฆเดพเดนเดฐเดฃเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดˆ เดชเตเดฐเด•เตเดฐเดฟเดฏ เดชเดฐเดฟเด—เดฃเดฟเด•เตเด•เดพเด‚, เด…เดคเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเตปเตเดฑเต† เดŽเดฒเตเดฒเดพ เดซเดฏเดฒเตเด•เดณเต†เดฏเตเด‚ เดซเต‹เตพเดกเดฑเตเด•เดณเต†เดฏเตเด‚ เด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดตเดฟเดตเดฐเด™เตเด™เตพ เด•เดพเดทเต† เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เดŸเต‡เดฌเดฟเตพ เดธเตเด•เต€เดฎ

เด’เดฐเต เดซเต‹เตพเดกเตผ เดŸเตเดฐเต€ เด‰เดณเตเดณ เด’เดฐเต เดŸเต‡เดฌเดฟเตพ เดธเตเดŸเตเดฐเด•เตเดšเตผ เด•เตเดฐเดฎเต€เด•เดฐเดฟเด•เตเด•เต‡เดฃเตเดŸ เด’เดฐเต เดชเตŠเดคเต เดธเดพเดนเดšเดฐเตเดฏเดฎเดพเดฃเต เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดกเดฏเดฑเด•เตโ€ŒเดŸเดฑเดฟเดฏเดฟเตฝ เดธเตเดฅเดฟเดคเดฟเดšเต†เดฏเตเดฏเตเดจเตเดจ เดŽเดฒเตเดฒเดพ เด˜เดŸเด•เด™เตเด™เดณเตเดŸเต†เดฏเตเด‚ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดชเตเดชเต. เด‡เดคเตเดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณ เด•เดพเดฐเตเดฏเด•เตเดทเดฎเดฎเดพเดฏ เด…เดจเตเดตเต‡เดทเดฃเด™เตเด™เตพเด•เตเด•เตเดณเตเดณ เด’เดฐเต เดจเดฒเตเดฒ เดกเดพเดฑเตเดฑเดพ เด“เตผเด—เดจเตˆเดธเต‡เดทเตป เดฎเดพเดคเตƒเด•เดฏเดพเดฃเต เดคเตŠเดŸเตเดŸเดŸเตเดคเตเดคเตเดณเตเดณ เดฒเดฟเดธเตเดฑเตเดฑเต. เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเดฟเดจเต เดฎเตเด•เดณเดฟเตฝ เด‡เดคเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป, เดชเดพเดฐเตปเตเดฑเต เดกเดฏเดฑเด•เตโ€ŒเดŸเดฑเดฟเดฏเดฟเดฒเต† เด…เด‚เด—เดคเตเดตเดคเตเดคเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เด—เตเดฐเต‚เดชเตเดชเตเดšเต†เดฏเตเดฏเตเดจเตเดจ เดคเดฐเดคเตเดคเดฟเตฝ เดซเดฏเดฒเตเด•เดณเตเดŸเต†เดฏเตเด‚ เดซเต‹เตพเดกเดฑเตเด•เดณเตเดŸเต†เดฏเตเด‚ เด•เต€เด•เตพ เด…เดŸเตเด•เตเด•เต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เด•เต‚เดŸเดพเดคเต†, เด’เดฐเต เดตเดฟเตปเดกเต‹เดธเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต เดชเดฐเดฟเดšเดฟเดคเดฎเดพเดฏ เดฐเต‚เดชเดคเตเดคเดฟเตฝ เดกเดฏเดฑเด•เตโ€ŒเดŸเดฑเดฟเดฏเดฟเดฒเต† เด‰เดณเตเดณเดŸเด•เตเด•เด™เตเด™เตพ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต (เด†เดฆเตเดฏเด‚ เดซเต‹เตพเดกเดฑเตเด•เตพ, เดคเตเดŸเตผเดจเตเดจเต เดซเดฏเดฒเตเด•เตพ, เดฐเดฃเตเดŸเตเด‚ เด…เด•เตเดทเดฐเดฎเดพเดฒเดพเด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เด…เดŸเตเด•เตเด•เตเดจเตเดจเต), เด•เต€เดฏเดฟเตฝ เด…เดจเตเดฌเดจเตเดง เด…เดงเดฟเด• เดซเต€เตฝเดกเตเด•เตพ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต.

เด•เตˆเดฏเดฟเดฒเตเดณเตเดณ เดŸเดพเดธเตโ€Œเด•เตเด•เดฟเดจเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ, เด’เดฐเต เดฌเตˆเดฑเตเดฑเต เด…เดฑเต‡เดฏเตเดŸเต† เดฐเต‚เดชเดคเตเดคเดฟเดฒเตเดณเตเดณ เด•เต€เด•เดณเตเดŸเต† เดชเตเดฐเดพเดคเดฟเดจเดฟเดงเตเดฏเด‚ เดŽเด™เตเด™เดจเต†เดฏเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเดฎเต†เดจเตเดจเต เดšเตเดตเดŸเต†เดฏเตเดณเตเดณ เดšเดฟเดคเตเดฐเด‚ เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเต. เดชเดพเดฐเตปเตเดฑเต เดกเดฏเดฑเด•เตโ€ŒเดŸเดฑเดฟเดฏเตเดŸเต† (เดšเตเดตเดชเตเดชเต) เดเดกเตปเตเดฑเดฟเดซเดฏเตผ เด‰เดณเตเดณ เดฌเตˆเดฑเตเดฑเตเด•เตพ เด†เดฆเตเดฏเด‚ เดธเตเดฅเดพเดชเดฟเด•เตเด•เตเดจเตเดจเต, เดคเตเดŸเตผเดจเตเดจเต เดคเดฐเด‚ (เดชเดšเตเดš) เด’เดชเตเดชเด‚ เดตเดพเดฒเดฟเตฝ เดชเต‡เดฐเต (เดจเต€เดฒ). เดกเดฟเดซเต‹เตพเดŸเตเดŸเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เด•เด‚เดชเดพเดฑเต‡เดฑเตเดฑเตผ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด˜เดฃเตเดŸเต เด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เด…เดŸเตเด•เตเด•เดฟ, เด…เดต เด•เตเดฐเดฎเต€เด•เดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฏ เดฐเต€เดคเดฟเดฏเดฟเตฝ. เด’เดฐเต‡ เดšเตเดตเดจเตเดจ เดชเตเดฐเดฟเดซเดฟเด•เตโ€Œเดธเตเดณเตเดณ เด•เต€เด•เตพ เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏเดฟ เดธเดžเตเดšเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต, เด…เดงเดฟเด• เดชเต‹เดธเตเดฑเตเดฑเต-เดชเตเดฐเต‹เดธเดธเตเดธเดฟเด‚เด—เต เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒเดพเดคเต†, เด‰เดชเดฏเต‹เด•เตเดคเตƒ เด‡เตปเตเดฑเตผเดซเต‡เดธเดฟเตฝ (เดตเดฒเดคเตเดตเดถเดคเตเดคเต) เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เต‡เดฃเตเดŸ เด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เด…เดตเดฏเตเดŸเต† เด…เดจเตเดฌเดจเตเดง เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดžเด™เตเด™เตพเด•เตเด•เต เดจเตฝเด•เตเดจเตเดจเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เด•เต€เด•เดณเตเด‚ เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเตเด‚ เดธเต€เดฐเดฟเดฏเดฒเตˆเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เดตเดธเตเดคเตเด•เตเด•เดณเต† เดธเต€เดฐเดฟเดฏเดฒเตˆเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดจเดฟเดฐเดตเดงเดฟ เดฐเต€เดคเดฟเด•เตพ เดฒเต‹เด•เดคเตเดคเต เด•เดฃเตเดŸเตเดชเดฟเดŸเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต. เดตเต‡เด—เดคเดฏเดฒเตเดฒเดพเดคเต† เดฎเดฑเตเดฑเตŠเดฐเต เด†เดตเดถเตเดฏเดตเตเดฎเดฟเดฒเตเดฒเดพเดคเตเดคเดคเดฟเดจเดพเตฝ, เดžเด™เตเด™เตพ เดธเตเดตเดฏเด‚ เดธเดพเดงเตเดฏเดฎเดพเดฏ เดเดฑเตเดฑเดตเตเด‚ เดตเต‡เด—เดคเดฏเต‡เดฑเดฟเดฏเดคเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเต - เดธเดฟ เดญเดพเดทเดพ เด˜เดŸเดจเดฏเตเดŸเต† เด’เดฐเต เด‰เดฆเดพเดนเดฐเดฃเด‚ เด‰เตพเด•เตเด•เตŠเดณเตเดณเตเดจเตเดจ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเตเดŸเต† เด’เดฐเต เดกเด‚เดชเต เด…เด™เตเด™เดจเต†, เด’เดฐเต เดกเดฏเดฑเด•เตเดŸเดฑเดฟ เดŽเดฒเดฎเต†เตปเตเดฑเดฟเตปเตเดฑเต† เด•เต€ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เด˜เดŸเดจ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฎเดพเดคเตƒเด•เดฏเดพเด•เตเด•เดพเด‚. NodeKey.

typedef struct NodeKey {โ€‹
    EntityId parentId;โ€‹
    uint8_t type;โ€‹
    uint8_t nameBuffer[256];โ€‹
} NodeKey;

เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เดพเตป NodeKey เด’เดฌเตเดœเด•เตเดฑเตเดฑเดฟเตฝ เด†เดตเดถเตเดฏเดฎเดพเดฏ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเดฟเตฝ MDB_val เด˜เดŸเดจเดฏเตเดŸเต† เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตปเตเดฑเต† เดตเดฟเดฒเดพเดธเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดกเดพเดฑเตเดฑ เดชเต‹เดฏเดฟเตปเตเดฑเตผ เดธเตเดฅเดพเดชเดฟเด•เตเด•เตเด•, เดซเด‚เด—เตเดทเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด…เดตเดฏเตเดŸเต† เดตเดฒเตเดชเตเดชเด‚ เด•เดฃเด•เตเด•เดพเด•เตเด•เตเด• sizeof.

MDB_val serialize(NodeKey * const key) {
    return MDB_val {
        .mv_size = sizeof(NodeKey),
        .mv_data = (void *)key
    };
}

เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตฝ เดฎเดพเดจเดฆเดฃเตเดกเดคเตเดคเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เด†เดฆเตเดฏ เด…เดงเตเดฏเดพเดฏเดคเตเดคเดฟเตฝ, CRUD เด“เดชเตเดชเดฑเต‡เดทเดจเตเด•เตพเด•เตเด•เตเดณเตเดณเดฟเดฒเต† เดกเตˆเดจเดพเดฎเดฟเด•เต เด…เดฒเต‹เด•เตเด•เต‡เดทเดจเตเด•เตพ เด’เดฐเต เดชเตเดฐเดงเดพเดจ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตฝ เด˜เดŸเด•เดฎเดพเดฏเดฟ เด•เตเดฑเดฏเตเด•เตเด•เตเดจเตเดจเดคเต เดžเดพเตป เดชเดฐเดพเดฎเตผเดถเดฟเดšเตเดšเต. เดซเด‚เด—เตเดทเตป เด•เต‹เดกเต serialize เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดฒเต‡เด•เตเด•เต เดชเตเดคเดฟเดฏ เดฑเต†เด•เตเด•เต‹เตผเดกเตเด•เตพ เดšเต‡เตผเด•เตเด•เตเดฎเตเดชเต‹เตพ เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ เด…เดต เดŽเด™เตเด™เดจเต† เดชเต‚เตผเดฃเดฎเดพเดฏเตเด‚ เด’เดดเดฟเดตเดพเด•เตเด•เดพเด‚ เดŽเดจเตเดจเต เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเต. เดธเต†เตผเดตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด‡เตปเด•เดฎเดฟเด‚เด—เต เดฌเตˆเดฑเตเดฑเต เด…เดฑเต‡ เด†เดฆเตเดฏเด‚ เดธเตเดฑเตเดฑเดพเด•เตเด•เต เดธเตเดŸเตเดฐเด•เตเดšเดฑเตเด•เดณเดพเดฏเดฟ เดฐเต‚เดชเดพเดจเตเดคเดฐเดชเตเดชเต†เดŸเตเดจเตเดจเต, เดคเตเดŸเตผเดจเตเดจเต เด…เดต เดจเดฟเดธเตเดธเดพเดฐเดฎเดพเดฏเดฟ เดธเด‚เดญเดฐเดฃเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดตเดฒเดฟเดšเตเดšเต†เดฑเดฟเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเต. เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเดฟเตฝ เดกเตˆเดจเดพเดฎเดฟเด•เต เด…เดฒเต‹เด•เตเด•เต‡เดทเดจเตเด•เดณเตŠเดจเตเดจเตเด‚ เด‡เดฒเตเดฒเต†เดจเตเดจเดคเต เด•เดฃเด•เตเด•เดฟเดฒเต†เดŸเตเด•เตเด•เตเดฎเตเดชเต‹เตพ, iOS เดฎเดพเดจเดฆเดฃเตเดกเด™เตเด™เตพเด•เตเด•เดจเตเดธเตƒเดคเดฎเดพเดฏเดฟ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดฎเดฟเด•เดšเตเดš เดธเดพเดนเดšเดฐเตเดฏเด‚ เดฒเดญเดฟเด•เตเด•เตเด‚ - เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เดฟเตฝ เดจเดฟเดจเตเดจเต เดกเดฟเดธเตเด•เดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดฎเตเดดเตเดตเตป เดชเดพเดคเดฏเดฟเดฒเตเด‚ เดกเดพเดฑเตเดฑเดฏเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป เดธเตเดฑเตเดฑเดพเด•เตเด•เต เดฎเต†เดฎเตเดฎเดฑเดฟ เดฎเดพเดคเตเดฐเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•!

เด’เดฐเต เดฌเตˆเดจเดฑเดฟ เด•เด‚เดชเดพเดฑเต‡เดฑเตเดฑเตผ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เต€เด•เตพ เด“เตผเดกเตผ เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เด’เดฐเต เด•เด‚เดชเดพเดฑเต‡เดฑเตเดฑเตผ เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดซเด‚เด—เตเดทเดจเดพเดฃเต เด•เต€ เด“เตผเดกเตผ เดฌเดจเตเดงเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจเดคเต. เดŽเดžเตเดšเดฟเดจเต เด…เดตเดฏเดฟเตฝ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดฌเตˆเดฑเตเดฑเตเด•เดณเตเดŸเต† เดธเต†เดฎเดพเตปเตเดฑเดฟเด•เตโ€Œเดธเดฟเดจเต† เด•เตเดฑเดฟเดšเตเดšเต เด’เดจเตเดจเตเด‚ เด…เดฑเดฟเดฏเดพเดคเตเดคเดคเดฟเดจเดพเตฝ, เดธเตเดตเดคเดตเต‡เดฏเตเดณเตเดณ เดคเดพเดฐเดคเดฎเตเดฏเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดฏเดพเตพเด•เตเด•เต เด’เดฐเต เดฌเตˆเดฑเตเดฑเต-เดฌเตˆ-เดฌเตˆเดฑเตเดฑเต เดคเดพเดฐเดคเดฎเตเดฏเดคเตเดคเดฟเดฒเต‚เดŸเต† เด•เต€เด•เตพ เดฒเต†เด•เตเดธเดฟเด•เตเด•เต‹เด—เตเดฐเดพเดซเดฟเด•เต เด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เด•เตเดฐเดฎเต€เด•เดฐเดฟเด•เตเด•เตเด•เดฏเดฒเตเดฒเดพเดคเต† เดฎเดฑเตเดฑเต เดฎเดพเตผเด—เดฎเดฟเดฒเตเดฒ. เด˜เดŸเดจเด•เตพ เดธเด‚เด˜เดŸเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด‡เดคเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต เดตเต†เดŸเตเดŸเดฟเดฏ เด•เต‹เดŸเดพเดฒเดฟ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดทเต‡เดตเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต เดธเดฎเดพเดจเดฎเดพเดฃเต. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดฒเดณเดฟเดคเดฎเดพเดฏ เดธเดจเตเดฆเตผเดญเด™เตเด™เดณเดฟเตฝ เดˆ เดฐเต€เดคเดฟ เดธเตเดตเต€เด•เดพเดฐเตเดฏเดฎเดพเดฃเต†เดจเตเดจเต เดžเดพเตป เด•เดพเดฃเตเดจเตเดจเต. เดฌเดฆเตฝ เดšเตเดตเดŸเต† เดตเดฟเดตเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ เดˆ เดชเดพเดคเดฏเดฟเตฝ เดšเดฟเดคเดฑเดฟเด•เตเด•เดฟเดŸเด•เตเด•เตเดจเตเดจ เดฐเดฃเตเดŸเต เดฑเต‡เด•เตเด•เตเด•เตพ เดžเดพเตป เด‡เดตเดฟเดŸเต† เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด‚.

เด†เดฆเตเดฏเด‚ เด“เตผเดฎเตเดฎเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเต เดชเตเดฐเดพเด•เตƒเดค เดกเดพเดฑเตเดฑเดพ เดคเดฐเด™เตเด™เดณเตเดŸเต† เดฎเต†เดฎเตเดฎเดฑเดฟ เดชเตเดฐเดพเดคเดฟเดจเดฟเดงเตเดฏเดฎเดพเดฃเต. เด…เด™เตเด™เดจเต†, เดŽเดฒเตเดฒเดพ Apple เด‰เดชเด•เดฐเดฃเด™เตเด™เดณเดฟเดฒเตเด‚, เดชเต‚เตผเดฃเตเดฃเดธเด‚เด–เตเดฏ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเตฝ เดธเต‚เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต เดฒเดฟเดฑเตเดฑเดฟเตฝ เดŽเตปโ€Œเดกเดฟเดฏเตป. เด‡เดคเดฟเดจเตผเดคเตเดฅเด‚ เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เดชเตเดฐเดพเดงเดพเดจเตเดฏเดฎเตเดณเตเดณ เดฌเตˆเดฑเตเดฑเต เด‡เดŸเดคเตเดตเดถเดคเตเดคเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚, เด•เต‚เดŸเดพเดคเต† เดฌเตˆเดฑเตเดฑเต-เดฌเตˆ-เดฌเตˆเดฑเตเดฑเต เดคเดพเดฐเดคเดฎเตเดฏเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเต‚เตผเดฃเตเดฃเดธเด‚เด–เตเดฏเด•เตพ เด…เดŸเตเด•เตเด•เดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, 0 เดฎเตเดคเตฝ 511 เดตเดฐเต†เดฏเตเดณเตเดณ เด’เดฐเต เด•เต‚เดŸเตเดŸเด‚ เดธเด‚เด–เตเดฏเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด‡เดคเต เดšเต†เดฏเตเดฏเดพเตป เดถเตเดฐเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเต เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดซเดฒเด‚ เดจเตฝเด•เตเด‚.

// value (hex dump)
000 (0000)
256 (0001)
001 (0100)
257 (0101)
...
254 (fe00)
510 (fe01)
255 (ff00)
511 (ff01)

เดˆ เดชเตเดฐเดถเตเดจเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดพเตป, เดฌเตˆเดฑเตเดฑเต-เดฌเตˆเดฑเตเดฑเต เด•เด‚เดชเดพเดฑเต‡เดฑเตเดฑเดฑเดฟเดจเต เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฏ เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเตฝ เดชเต‚เตผเดฃเตเดฃเดธเด‚เด–เตเดฏเด•เตพ เด•เต€เดฏเดฟเตฝ เดธเต‚เด•เตเดทเดฟเด•เตเด•เดฃเด‚. เด•เตเดŸเตเด‚เดฌเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เด†เดตเดถเตเดฏเดฎเดพเดฏ เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดจเดŸเดคเตเดคเดพเตป เดจเดฟเด™เตเด™เดณเต† เดธเดนเดพเดฏเดฟเด•เตเด•เตเด‚ hton* (เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเต htons เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด‡เดฐเดŸเตเดŸ-เดฌเตˆเดฑเตเดฑเต เดจเดฎเตเดชเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ).

เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเด‚เด—เดฟเดฒเต† เดธเตเดŸเตเดฐเดฟเด‚เด—เตเด•เดณเต† เดชเตเดฐเดคเดฟเดจเดฟเดงเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดซเต‹เตผเดฎเดพเดฑเตเดฑเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เดฑเดฟเดฏเดพเดตเตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เดฎเตŠเดคเตเดคเดคเตเดคเดฟเดฒเตเดณเตเดณเดคเดพเดฃเต เดšเดฐเดฟเดคเตเดฐเด‚. เดธเตโ€ŒเดŸเตเดฐเดฟเด‚เด—เตเด•เดณเตเดŸเต† เดธเต†เดฎเดพเตปเตเดฑเดฟเด•เตโ€Œเดธเตเด‚ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เด…เดตเดฏเต† เดชเตเดฐเดคเดฟเดจเดฟเดงเต€เด•เดฐเดฟเด•เตเด•เดพเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดŽเตปเด•เต‹เดกเดฟเด‚เด—เตเด‚ เด’เดฐเต เดชเตเดฐเดคเต€เด•เดคเตเดคเดฟเดจเต เด’เดจเตเดจเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ เดฌเตˆเดฑเตเดฑเตเด•เตพ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเดฎเต†เดจเตเดจเต เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เด™เตเด•เดฟเตฝ, เด’เดฐเต เดกเดฟเดซเต‹เตพเดŸเตเดŸเต เด•เด‚เดชเดพเดฑเต‡เดฑเตเดฑเตผ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เด†เดถเดฏเด‚ เด‰เดŸเดจเดŸเดฟ เด‰เดชเต‡เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒเดคเต.

เดฎเดจเดธเตเดธเดฟเตฝ เดธเต‚เด•เตเดทเดฟเด•เตเด•เต‡เดฃเตเดŸ เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เด•เดพเดฐเตเดฏเด‚ เดตเดฟเดจเตเดฏเดพเดธ เดคเดคเตเดตเด™เตเด™เตพ เด˜เดŸเดจ เดซเต€เตฝเดกเต เด•เด‚เดชเตˆเดฒเตผ. เด…เดต เด•เดพเดฐเดฃเด‚, เดซเต€เตฝเดกเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเดฒเตเดณเตเดณ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดฎเดพเดฒเดฟเดจเตเดฏ เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเตเดณเตเดณ เดฌเตˆเดฑเตเดฑเตเด•เตพ เดฐเต‚เดชเต€เด•เดฐเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚, เด‡เดคเต เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚ เดฌเตˆเดฑเตเดฑเต-เดฌเตˆเดฑเตเดฑเต เดธเต‹เตผเดŸเตเดŸเดฟเด‚เด—เดฟเดจเต† เดคเด•เตผเด•เตเด•เตเดจเตเดจเต. เดฎเดพเดฒเดฟเดจเตเดฏเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดพเตป, เด’เดจเตเดจเตเด•เดฟเตฝ เดจเดฟเด™เตเด™เตพ เดซเต€เตฝเดกเตเด•เตพ เด•เตผเดถเดจเดฎเดพเดฏเดฟ เดจเดฟเตผเดตเดšเดฟเดšเตเดš เด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เดชเตเดฐเด–เตเดฏเดพเดชเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต, เดตเดฟเดจเตเดฏเดพเดธ เดจเดฟเดฏเดฎเด™เตเด™เตพ เดฎเดจเดธเตเดธเดฟเตฝ เดตเดฏเตเด•เตเด•เตเด• เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด˜เดŸเดจเดพ เดชเตเดฐเด–เตเดฏเดพเดชเดจเดคเตเดคเดฟเดฒเต† เด†เดŸเตเดฐเดฟเดฌเตเดฏเต‚เดŸเตเดŸเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด• packed.

เด’เดฐเต เดฌเดพเดนเตเดฏ เดคเดพเดฐเดคเดฎเตเดฏเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เต€เด•เตพ เด“เตผเดกเตผ เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เด’เดฐเต เดฌเตˆเดจเดฑเดฟ เดคเดพเดฐเดคเดฎเตเดฏเดคเตเดคเดฟเดจเต เด•เต€ เดคเดพเดฐเดคเดฎเตเดฏ เดฏเตเด•เตเดคเดฟ เดตเดณเดฐเต† เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏเต‡เด•เตเด•เดพเด‚. เด˜เดŸเดจเด•เตพเด•เตเด•เตเดณเตเดณเดฟเดฒเต† เดธเดพเด™เตเด•เต‡เดคเดฟเด• เดฎเต‡เด–เดฒเด•เดณเตเดŸเต† เดธเดพเดจเตเดจเดฟเดงเตเดฏเดฎเดพเดฃเต เดชเดฒ เด•เดพเดฐเดฃเด™เตเด™เดณเดฟเดฒเตŠเดจเตเดจเต. เดจเดฎเตเด•เตเด•เต เด‡เดคเดฟเดจเด•เด‚ เดชเดฐเดฟเดšเดฟเดคเดฎเดพเดฏ เด’เดฐเต เดกเดฏเดฑเด•เตโ€ŒเดŸเดฑเดฟ เด˜เดŸเด•เดคเตเดคเดฟเดจเดพเดฏเตเดณเตเดณ เด’เดฐเต เด•เต€เดฏเตเดŸเต† เด‰เดฆเดพเดนเดฐเดฃเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด…เดตเดฐเตเดŸเต† เดธเด‚เดญเดตเด‚ เดžเดพเตป เดšเดฟเดคเตเดฐเต€เด•เดฐเดฟเด•เตเด•เตเด‚.

typedef struct NodeKey {โ€‹
    EntityId parentId;โ€‹
    uint8_t type;โ€‹
    uint8_t nameBuffer[256];โ€‹
} NodeKey;

เดฒเดพเดณเดฟเดคเตเดฏเด‚ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเตเดจเตเดจเดฟเดŸเตเดŸเตเด‚, เดฎเดฟเด•เตเด• เด•เต‡เดธเตเด•เดณเดฟเดฒเตเด‚ เด‡เดคเต เดตเดณเดฐเต†เดฏเดงเดฟเด•เด‚ เดฎเต†เดฎเตเดฎเดฑเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เดชเต‡เดฐเดฟเตปเตเดฑเต† เดฌเดซเตผ 256 เดฌเตˆเดฑเตเดฑเตเด•เตพ เดŽเดŸเตเด•เตเด•เตเดจเตเดจเต, เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚ เดถเดฐเดพเดถเดฐเดฟ เดซเดฏเดฒเตเด•เดณเตเดŸเต†เดฏเตเด‚ เดซเต‹เตพเดกเดฑเดฟเตปเตเดฑเต†เดฏเตเด‚ เดชเต‡เดฐเตเด•เตพ เด…เดชเต‚เตผเดตเตเดตเดฎเดพเดฏเดฟ 20-30 เดชเตเดฐเดคเต€เด•เด™เตเด™เตพ เด•เดตเดฟเดฏเตเดจเตเดจเต.

เด’เดฐเต เดฑเต†เด•เตเด•เต‹เตผเดกเดฟเตปเตเดฑเต† เดตเดฒเตเดชเตเดชเด‚ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต เดŸเต†เด•เตเดจเดฟเด•เตเด•เตเด•เดณเดฟเดฒเตŠเดจเตเดจเต เด…เดคเต เดฏเดฅเดพเตผเดคเตเดฅ เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต "เดŸเตเดฐเดฟเด‚" เดšเต†เดฏเตเดฏเตเด• เดŽเดจเตเดจเดคเดพเดฃเต. เดŽเดฒเตเดฒเดพ เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ-เดฒเต†เด™เตเดคเต เดซเต€เตฝเดกเตเด•เดณเตเดŸเต†เดฏเตเด‚ เด‰เดณเตเดณเดŸเด•เตเด•เด™เตเด™เตพ เด˜เดŸเดจเดฏเตเดŸเต† เด…เดฑเตเดฑเดคเตเดคเตเดณเตเดณ เด’เดฐเต เดฌเดซเดฑเดฟเตฝ เดธเต‚เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดตเดฏเตเดŸเต† เดจเต€เดณเด‚ เดชเตเดฐเดคเตเดฏเต‡เด• เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เดณเดฟเตฝ เดธเต‚เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต เดŽเดจเตเดจเดคเดพเดฃเต เด‡เดคเดฟเตปเตเดฑเต† เดธเดพเดฐเด‚. เดˆ เดธเดฎเต€เดชเดจเด‚ เด…เดจเตเดธเดฐเดฟเดšเตเดšเต, เด•เต€ NodeKey เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดฐเต‚เดชเดพเดจเตเดคเดฐเดชเตเดชเต†เดŸเตเดจเตเดจเต.

typedef struct NodeKey {โ€‹
    EntityId parentId;โ€‹
    uint8_t type;โ€‹
    uint8_t nameLength;โ€‹
    uint8_t nameBuffer[256];โ€‹
} NodeKey;

เด•เต‚เดŸเดพเดคเต†, เดธเต€เดฐเดฟเดฏเดฒเตˆเดธเต เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ, เดกเดพเดฑเตเดฑ เดตเดฒเตเดชเตเดชเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒ sizeof เดฎเตเดดเตเดตเตป เด˜เดŸเดจเดฏเตเด‚, เดŽเดฒเตเดฒเดพ เดซเต€เตฝเดกเตเด•เดณเตเดŸเต†เดฏเตเด‚ เดตเดฒเตเดชเตเดชเด‚ เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดจเต€เดณเดตเตเด‚ เดฌเดซเดฑเดฟเตปเตเดฑเต† เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดญเดพเด—เดคเตเดคเดฟเตปเตเดฑเต† เดตเดฒเตเดชเตเดชเดตเตเดฎเดพเดฃเต.

MDB_val serialize(NodeKey * const key) {
    return MDB_val {
        .mv_size = offsetof(NodeKey, nameBuffer) + key->nameLength,
        .mv_data = (void *)key
    };
}

เดฑเต€เดซเดพเด•เตโ€ŒเดŸเดฑเดฟเด‚เด—เดฟเตปเตเดฑเต† เดซเดฒเดฎเดพเดฏเดฟ, เด•เต€เด•เตพ เด•เตˆเดตเดถเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏ เดธเตเดฅเดฒเดคเตเดคเต เดžเด™เตเด™เตพเด•เตเด•เต เด•เดพเดฐเตเดฏเดฎเดพเดฏ เดฒเดพเดญเด‚ เดฒเดญเดฟเดšเตเดšเต. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดธเดพเด™เตเด•เต‡เดคเดฟเด• เดฎเต‡เด–เดฒ เด•เดพเดฐเดฃเด‚ nameLength, เดกเดฟเดซเต‹เตพเดŸเตเดŸเต เดฌเตˆเดจเดฑเดฟ เด•เด‚เดชเดพเดฑเต‡เดฑเตเดฑเตผ เด‡เดจเดฟ เด•เต€ เดคเดพเดฐเดคเดฎเตเดฏเดคเตเดคเดฟเดจเต เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดฒเตเดฒ. เดจเดพเดฎเดคเต เดจเดฎเตเดฎเตเดŸเต‡เดคเดพเดฏเดฟ เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดชเต‡เดฐเดฟเตปเตเดฑเต† เดฆเตˆเตผเด˜เตเดฏเด‚ เดชเต‡เดฐเดฟเดจเต‡เด•เตเด•เดพเตพ เด•เต‚เดŸเตเดคเตฝ เดฎเตเตปเด—เดฃเดจเดพ เด˜เดŸเด•เดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚.

เด“เดฐเต‹ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดจเตเด‚ เด…เดคเดฟเตปเตเดฑเต‡เดคเดพเดฏ เด•เต€ เดคเดพเดฐเดคเดฎเตเดฏ เดซเด‚เด—เตโ€Œเดทเตป เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเตป LMDB เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. เดซเด‚เด—เตเดทเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดพเดฃเต เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต mdb_set_compare เดคเตเดฑเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเต เด•เตผเดถเดจเดฎเดพเดฏเดฟ. เดตเตเดฏเด•เตเดคเดฎเดพเดฏ เด•เดพเดฐเดฃเด™เตเด™เดณเดพเตฝ, เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตปเตเดฑเต† เดœเต€เดตเดฟเดคเดคเตเดคเดฟเดฒเตเดŸเดจเต€เดณเด‚ เด‡เดคเต เดฎเดพเดฑเตเดฑเดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ. เดฌเตˆเดจเดฑเดฟ เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเดฒเตเดณเตเดณ เดฐเดฃเตเดŸเต เด•เต€เด•เตพ เด‡เตปเดชเตเดŸเตเดŸเดพเดฏเดฟ เดคเดพเดฐเดคเดฎเตเดฏเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดฏเดพเตพเด•เตเด•เต เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเต, เด”เดŸเตเดŸเตเดชเตเดŸเตเดŸเดฟเตฝ เด…เดคเต เดคเดพเดฐเดคเดฎเตเดฏ เดซเดฒเด‚ เดจเตฝเด•เตเดจเตเดจเต: (-1) เตฝ เด•เตเดฑเดตเต), (1) เดจเต‡เด•เตเด•เดพเตพ เดตเดฒเตเดคเต‹ (0) เดจเต เดคเตเดฒเตเดฏเดฎเต‹. เด‡เดคเดฟเดจเดพเดฏเดฟ เดธเตเดฏเต‚เดกเต‹เด•เต‹เดกเต NodeKey เด…เดคเต เดชเต‹เดฒเต† เดคเต‹เดจเตเดจเตเดจเตเดจเต.

int compare(MDB_val * const a, MDB_val * const b) {โ€‹
    NodeKey * const aKey = (NodeKey * const)a->mv_data;โ€‹
    NodeKey * const bKey = (NodeKey * const)b->mv_data;โ€‹
    return // ...
}โ€‹

เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดฒเต† เดŽเดฒเตเดฒเดพ เด•เต€เด•เดณเตเด‚ เด’เดฐเต‡ เดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณเดคเดพเดฃเต†เด™เตเด•เดฟเตฝ, เด…เดตเดฏเตเดŸเต† เดฌเตˆเดฑเตเดฑเต เดชเตเดฐเดพเดคเดฟเดจเดฟเดงเตเดฏเด‚ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เด•เต€ เด˜เดŸเดจเดฏเตเดŸเต† เดคเดฐเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดจเดฟเดฐเตเดชเดพเดงเดฟเด•เด‚ เด•เดพเดธเตเดฑเตเดฑเตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดจเดฟเดฏเดฎเดชเดฐเดฎเดพเดฃเต. เด‡เดตเดฟเดŸเต† เด’เดฐเต เดจเตเดฏเต‚เดจเตปเดธเต เด‰เดฃเตเดŸเต, เดŽเดจเตเดจเดพเตฝ เด…เดคเต "เดฑเต€เดกเดฟเด‚เด—เต เดฑเต†เด•เตเด•เต‹เตผเดกเตเดธเต" เด‰เดชเดตเดฟเดญเดพเด—เดคเตเดคเดฟเตฝ เดคเดพเดดเต† เดšเตผเดšเตเดš เดšเต†เดฏเตเดฏเตเด‚.

เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เด•เตเดฐเดฎเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเต

เดธเต‚เด•เตเดทเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดฐเต‡เด–เด•เดณเตเดŸเต† เด•เต€เด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดตเดณเดฐเต† เดคเต€เดตเตเดฐเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต. เด…เดต เดชเดฐเดธเตเดชเดฐเด‚ เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดชเตเดฐเดฏเต‹เด—เดฟเดšเตเดš เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเตปเตเดฑเต† เดšเดŸเตเดŸเด•เตเด•เต‚เดŸเดฟเดจเตเดณเตเดณเดฟเตฝ เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เดฎเตเดดเตเดตเตป เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเตปเตเดฑเต†เดฏเตเด‚ เดชเตเดฐเด•เดŸเดจเด‚ เดคเดพเดฐเดคเดฎเตเดฏเดคเตเดคเดฟเตปเตเดฑเต† เดตเต‡เด—เดคเดฏเต† เด†เดถเตเดฐเดฏเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด’เดฐเต เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฏ เดฒเต‹เด•เดคเตเดคเต, เด•เต€เด•เตพ เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดฏเดพเตป เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟ เดฌเตˆเดจเดฑเดฟ เดคเดพเดฐเดคเดฎเตเดฏเดชเตเดชเต†เดŸเตเดคเตเดคเตฝ เดฎเดคเดฟเดฏเดพเด•เตเด‚, เดŽเดจเตเดจเดพเตฝ เดจเดฟเด™เตเด™เดณเตเดŸเต‡เดคเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฃเดฎเต†เด™เตเด•เดฟเตฝ, เด…เดคเดฟเดฒเต† เด•เต€เด•เตพ เดกเต€เดธเดฟเดฏเดฒเตˆเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดจเดŸเดชเดŸเดฟเด•เตเดฐเดฎเด‚ เด•เดดเดฟเดฏเตเดจเตเดจเดคเตเดฐ เดตเต‡เด—เดคเตเดคเดฟเดฒเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚.

เดฑเต†เด•เตเด•เต‹เตผเดกเดฟเตปเตเดฑเต† (เดฎเต‚เดฒเตเดฏเด‚) เดฎเต‚เดฒเตเดฏ เดญเดพเด—เดคเตเดคเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดจเต เดชเตเดฐเดคเตเดฏเต‡เด• เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเดฟเดฒเตเดฒ. เด’เดฐเต เดฌเตˆเดฑเตเดฑเต เดชเตเดฐเดพเดคเดฟเดจเดฟเดงเตเดฏเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เด’เดฐเต เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด…เดคเดฟเตปเตเดฑเต† เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจเดคเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เด•เต‹เดกเดฟเดจเต เด‡เดคเดฟเดจเด•เด‚ เด†เดตเดถเตเดฏเดฎเตเดณเตเดณเดชเตเดชเต‹เตพ เดฎเดพเดคเตเดฐเดฎเดพเดฃเต, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด…เดคเต เดธเตเด•เตเดฐเต€เดจเดฟเตฝ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต. เด‡เดคเต เดคเดพเดฐเดคเดฎเตเดฏเต‡เดจ เด…เดชเต‚เตผเดตเตเดตเดฎเดพเดฏเดฟ เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเตฝ, เดˆ เดจเดŸเดชเดŸเดฟเด•เตเดฐเดฎเดคเตเดคเดฟเดจเตเดณเตเดณ เดตเต‡เด—เดค เด†เดตเดถเตเดฏเด•เดคเด•เตพ เด…เดคเตเดฐ เดจเดฟเตผเดฃเดพเดฏเด•เดฎเดฒเตเดฒ, เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ เด‡เดคเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเตฝ เดจเดฎเตเด•เตเด•เต เดธเต—เด•เดฐเตเดฏเด™เตเด™เดณเดฟเตฝ เดถเตเดฐเดฆเตเดง เด•เต‡เดจเตเดฆเตเดฐเต€เด•เดฐเดฟเด•เตเด•เดพเตป เด•เต‚เดŸเตเดคเตฝ เดธเตเดตเดพเดคเดจเตเดคเตเดฐเตเดฏเดฎเตเดฃเตเดŸเต.เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด‡เดคเตเดตเดฐเต† เดกเต—เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเดพเดคเตเดค เดซเดฏเดฒเตเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดฎเต†เดฑเตเดฑเดพเดกเดพเดฑเตเดฑ เดธเต€เดฐเดฟเดฏเดฒเตˆเดธเต เดšเต†เดฏเตเดฏเดพเตป เดžเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. NSKeyedArchiver.

NSData *data = serialize(object);โ€‹
MDB_val value = {โ€‹
    .mv_size = data.length,โ€‹
    .mv_data = (void *)data.bytesโ€‹
};

เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดชเตเดฐเด•เดŸเดจเด‚ เด‡เดชเตเดชเต‹เดดเตเด‚ เดชเตเดฐเดพเดงเดพเดจเตเดฏเดฎเตเดณเตเดณ เดธเดฎเดฏเด™เตเด™เดณเตเดฃเตเดŸเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด’เดฐเต เด‰เดชเดฏเต‹เด•เตเดคเตƒ เด•เตเดฒเต—เดกเดฟเตปเตเดฑเต† เดซเดฏเตฝ เด˜เดŸเดจเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดฎเต†เดฑเตเดฑเตˆเตปเดซเต‹เตผเดฎเต‡เดทเตป เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, เด’เดฌเตเดœเด•เตเดฑเตเดฑเตเด•เดณเตเดŸเต† เด…เดคเต‡ เดฎเต†เดฎเตเดฎเดฑเดฟ เดกเด‚เดชเต เดžเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เด’เดฐเต เดกเดฏเดฑเด•เตโ€ŒเดŸเดฑเดฟเดฏเดฟเดฒเต† เด˜เดŸเด•เด™เตเด™เตพ เด•เตเดฒเดพเดธเตเด•เดณเตเดŸเต† เด’เดฐเต เดถเตเดฐเต‡เดฃเดฟเดฏเดพเดฃเต เดฎเดพเดคเตƒเด•เดฏเดพเด•เตเด•เตเดจเตเดจเดคเต เดŽเดจเตเดจเดคเดพเดฃเต เด…เดตเดฏเตเดŸเต† เด’เดฐเต เดธเต€เดฐเดฟเดฏเดฒเตˆเดธเตเดกเต เดชเตเดฐเดพเดคเดฟเดจเดฟเดงเตเดฏเด‚ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เดšเตเดฎเดคเดฒเดฏเตเดŸเต† เดนเตˆเดฒเตˆเดฑเตเดฑเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดธเดฟ เดญเดพเดทเดฏเดฟเตฝ เด‡เดคเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป, เด…เดตเด•เดพเดถเดฟเด•เดณเตเดŸเต† เดชเตเดฐเดคเตเดฏเต‡เด• เดซเต€เตฝเดกเตเด•เตพ เดชเตเดฐเดคเตเดฏเต‡เด• เด˜เดŸเดจเด•เดณเดฟเตฝ เดธเตเดฅเดพเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดตเตเดฎเดพเดฏเตเดณเตเดณ เด…เดตเดฐเตเดŸเต† เดฌเดจเตเดงเด‚ เดŸเตˆเดชเตเดชเต เดฏเต‚เดฃเดฟเดฏเตป เดซเต€เตฝเดกเต เดตเดดเดฟ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจเต. เดฏเต‚เดฃเดฟเดฏเตปเตเดฑเต† เดฏเดฅเดพเตผเดคเตเดฅ เด‰เดณเตเดณเดŸเด•เตเด•เด™เตเด™เตพ เดธเดพเด™เตเด•เต‡เดคเดฟเด• เด†เดŸเตเดฐเดฟเดฌเตเดฏเต‚เดŸเตเดŸเต เดคเดฐเด‚ เดตเดดเดฟเดฏเดพเดฃเต เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต.

typedef struct NodeValue {โ€‹
    EntityId localId;โ€‹
    EntityType type;โ€‹
    union {โ€‹
        FileInfo file;โ€‹
        DirectoryInfo directory;โ€‹
    } info;โ€‹
    uint8_t nameLength;โ€‹
    uint8_t nameBuffer[256];โ€‹
} NodeValue;โ€‹

เดฐเต‡เด–เด•เตพ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเดคเตเด‚ เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเตเด‚

เดธเต€เดฐเดฟเดฏเดฒเตˆเดธเต เดšเต†เดฏเตเดค เด•เต€เดฏเตเด‚ เดฎเต‚เดฒเตเดฏเดตเตเด‚ เดธเตเดฑเตเดฑเต‹เดฑเดฟเตฝ เดšเต‡เตผเด•เตเด•เดพเด‚. เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดซเด‚เด—เตเดทเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด• mdb_put.

// key ะธ value ะธะผะตัŽั‚ ั‚ะธะฟ MDB_valโ€‹
mdb_put(..., &key, &value, MDB_NOOVERWRITE);

เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ, เด’เดฐเต‡ เด•เต€ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด’เดจเตเดจเดฟเดฒเดงเดฟเด•เด‚ เดฑเต†เด•เตเด•เต‹เตผเดกเตเด•เตพ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดธเด‚เดญเดฐเดฃเด‚ เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด•เดฏเต‹ เดจเดฟเดฐเต‹เดงเดฟเด•เตเด•เตเด•เดฏเต‹ เดšเต†เดฏเตเดฏเดพเด‚. เด•เต€เด•เดณเตเดŸเต† เดคเดจเดฟเดชเตเดชเด•เตผเดชเตเดชเต เดจเดฟเดฐเต‹เดงเดฟเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, เด’เดฐเต เดฑเต†เด•เตเด•เต‹เตผเดกเต เดšเต‡เตผเด•เตเด•เตเดฎเตเดชเต‹เตพ, เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เด’เดฐเต เดฑเต†เด•เตเด•เต‹เตผเดกเต เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เด…เดจเตเดตเดฆเดจเต€เดฏเดฎเดพเดฃเต‹ เด…เดฒเตเดฒเดฏเต‹ เดŽเดจเตเดจเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เดพเดจเดพเด•เตเด‚. เด•เต‹เดกเดฟเดฒเต† เด’เดฐเต เดชเดฟเดถเด•เดฟเตปเตเดฑเต† เดซเดฒเดฎเดพเดฏเดฟ เดฎเดพเดคเตเดฐเดฎเต‡ เดซเตเดฐเต‡เดฏเดฟเด‚เด—เต เดธเด‚เดญเดตเดฟเด•เตเด•เตเด•เดฏเตเดณเตเดณเต‚ เดŽเด™เตเด•เดฟเตฝ, เดชเดคเดพเด• เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด…เดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดธเตเดตเดฏเด‚ เดชเดฐเดฟเดฐเด•เตเดทเดฟเด•เตเด•เดพเด‚ NOOVERWRITE.

เดŽเตปเดŸเตเดฐเดฟเด•เตพ เดตเดพเดฏเดฟเด•เตเด•เตเดจเตเดจเต

LMDB-เดฏเดฟเดฒเต† เดฑเต†เด•เตเด•เต‹เตผเดกเตเด•เตพ เดตเดพเดฏเดฟเด•เตเด•เดพเตป, เดซเด‚เด—เตเดทเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด• mdb_get. เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดœเต‹เดกเดฟเดฏเต† เดฎเตเดฎเตเดชเต เดกเด‚เดชเต เดšเต†เดฏเตเดค เด˜เดŸเดจเด•เดณเดพเดฃเต เดชเตเดฐเดคเดฟเดจเดฟเดงเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต†เด™เตเด•เดฟเตฝ, เดˆ เดจเดŸเดชเดŸเดฟเด•เตเดฐเดฎเด‚ เด‡เดคเตเดชเต‹เดฒเต† เด•เดพเดฃเดชเตเดชเต†เดŸเตเดจเตเดจเต.

NodeValue * const readNode(..., NodeKey * const key) {โ€‹
    MDB_val rawKey = serialize(key);โ€‹
    MDB_val rawValue;โ€‹
    mdb_get(..., &rawKey, &rawValue);โ€‹
    return (NodeValue * const)rawValue.mv_data;โ€‹
}

เดธเตเดŸเตเดฐเด•เตเดšเตผ เดกเด‚เดชเดฟเดฒเต‚เดŸเต†เดฏเตเดณเตเดณ เดธเต€เดฐเดฟเดฏเดฒเตˆเดธเต‡เดทเตป เดŽเดดเตเดคเตเดฎเตเดชเต‹เตพ เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดกเดพเดฑเตเดฑ เดตเดพเดฏเดฟเด•เตเด•เตเดฎเตเดชเต‹เดดเตเด‚ เดกเตˆเดจเดพเดฎเดฟเด•เต เด…เดฒเต‹เด•เตเด•เต‡เดทเดจเตเด•เตพ เด’เดดเดฟเดตเดพเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เดŽเด™เตเด™เดจเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเต เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเดšเตเดš เดฒเดฟเดธเตเดฑเตเดฑเดฟเด‚เด—เต เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเต. เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เด‰เดฐเตเดคเตเดคเดฟเดฐเดฟเดžเตเดžเดคเต mdb_get เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเดฟเตปเตเดฑเต† เดฌเตˆเดฑเตเดฑเต เดชเตเดฐเดพเดคเดฟเดจเดฟเดงเตเดฏเด‚ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจ เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดฎเตเดฎเดฑเดฟ เดตเดฟเดฒเดพเดธเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เดฏเดฟเตปเตเดฑเตผ เด•เตƒเดคเตเดฏเดฎเดพเดฏเดฟ เดจเต‹เด•เตเด•เตเดจเตเดจเต. เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ, เดžเด™เตเด™เตพเด•เตเด•เต เดตเดณเดฐเต† เด‰เดฏเตผเดจเตเดจ เดกเดพเดฑเตเดฑ เดฑเต€เดกเดฟเด‚เด—เต เดตเต‡เด—เดค เดจเตฝเด•เตเดจเตเดจ เด’เดฐเต เดคเดฐเด‚ ORM เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเต. เดธเดฎเต€เดชเดจเดคเตเดคเดฟเตปเตเดฑเต† เดŽเดฒเตเดฒเดพ เดธเต—เดจเตเดฆเดฐเตเดฏเดตเตเด‚ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเตเดจเตเดจเดฟเดŸเตเดŸเตเด‚, เด…เดคเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดจเดฟเดฐเดตเดงเดฟ เดธเดตเดฟเดถเต‡เดทเดคเด•เตพ เด“เตผเดฎเตเดฎเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต.

  1. เดตเดพเดฏเดฟเด•เตเด•เดพเตป เดฎเดพเดคเตเดฐเดฎเตเดณเตเดณ เด‡เดŸเดชเดพเดŸเดฟเดจเต, เด‡เดŸเดชเดพเดŸเต เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเต เดตเดฐเต† เดฎเต‚เดฒเตเดฏ เด˜เดŸเดจเดฏเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดชเต‹เดฏเดฟเตปเตเดฑเตผ เดธเดพเดงเตเดตเดพเดฏเดฟ เดคเตเดŸเดฐเตเดฎเต†เดจเตเดจเต เด‰เดฑเดชเตเดชเตเดจเตฝเด•เตเดจเตเดจเต. เดจเต‡เดฐเดคเตเดคเต† เดธเต‚เดšเดฟเดชเตเดชเดฟเดšเตเดšเดคเตเดชเต‹เดฒเต†, เด’เดฐเต เด’เดฌเตโ€Œเดœเด•เตโ€Œเดฑเตเดฑเต เดธเตเดฅเดฟเดคเดฟเดšเต†เดฏเตเดฏเตเดจเตเดจ เดฌเดฟ-เดŸเตเดฐเต€ เดชเต‡เดœเตเด•เตพ, เด•เต‹เดชเตเดชเดฟ-เด“เตบ-เดฑเตˆเดฑเตเดฑเต เดคเดคเตเดตเดคเตเดคเดฟเดจเต เดจเดจเตเดฆเดฟ, เด•เตเดฑเดžเตเดžเดคเต เด’เดฐเต เด‡เดŸเดชเดพเดŸเดฟเดฒเต‚เดŸเต†เดฏเต†เด™เตเด•เดฟเดฒเตเด‚ เด…เดต เดชเดฐเดพเดฎเตผเดถเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเดฟเดŸเดคเตเดคเต‹เดณเด‚ เดฎเดพเดฑเตเดฑเดฎเดฟเดฒเตเดฒเดพเดคเต† เดคเตเดŸเดฐเตเด‚. เด…เดคเต‡ เดธเดฎเดฏเด‚, เด…เดตเดฏเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เด…เดตเดธเดพเดจ เด‡เดŸเดชเดพเดŸเต เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเดฎเตเดชเต‹เตพ, เดชเตเดคเดฟเดฏ เดกเดพเดฑเตเดฑเดฏเตเด•เตเด•เดพเดฏเดฟ เดชเต‡เดœเตเด•เตพ เดตเต€เดฃเตเดŸเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดจเดพเด•เตเด‚. เดตเดธเตเดคเตเด•เตเด•เตพ เดธเตƒเดทเตเดŸเดฟเดšเตเดš เด‡เดŸเดชเดพเดŸเดฟเดจเต† เด…เดคเดฟเดœเต€เดตเดฟเด•เตเด•เดพเตป เด…เดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต†เด™เตเด•เดฟเตฝ, เด…เดต เด‡เดชเตเดชเต‹เดดเตเด‚ เดชเด•เตผเดคเตเดคเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต.
  2. เด’เดฐเต เดฑเต€เดกเตโ€Œเดฑเตˆเดฑเตเดฑเต เด‡เดŸเดชเดพเดŸเดฟเดจเต, เดซเดฒเดฎเดพเดฏเตเดฃเตเดŸเดพเด•เตเดจเตเดจ เดฎเต‚เดฒเตเดฏ เด˜เดŸเดจเดฏเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดชเต‹เดฏเดฟเตปเตเดฑเตผ เด†เดฆเตเดฏเดคเตเดคเต† เดชเดฐเดฟเดทเตโ€Œเด•เตเด•เดฐเดฃ เดจเดŸเดชเดŸเดฟเด•เตเดฐเดฎเด‚ เดตเดฐเต† เดฎเดพเดคเตเดฐเดฎเต‡ เดธเดพเดงเตเดคเดฏเตเดณเตเดณเต‚ (เดกเดพเดฑเตเดฑ เดŽเดดเตเดคเตเด•เดฏเต‹ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•เดฏเต‹ เดšเต†เดฏเตเดฏเตเด•).
  3. เด˜เดŸเดจ เด†เดฃเต†เด™เตเด•เดฟเดฒเตเด‚ NodeValue เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเดคเดฒเตเดฒ, เดฎเดฑเดฟเดšเตเดšเต เดŸเตเดฐเดฟเด‚ เดšเต†เดฏเตโ€Œเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต (โ€œเด’เดฐเต เดฌเดพเดนเตเดฏ เดคเดพเดฐเดคเดฎเตเดฏเดชเตเดชเต†เดŸเตเดคเตเดคเตฝ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เต€เด•เตพ เด“เตผเดกเตผ เดšเต†เดฏเตเดฏเตเดจเตเดจเตโ€ เดŽเดจเตเดจ เด‰เดชเดตเดฟเดญเดพเด—เด‚ เด•เดพเดฃเตเด•), เดชเต‹เดฏเดฟเตปเตเดฑเดฑเดฟเดฒเต‚เดŸเต† เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดธเตเดฐเด•เตเดทเดฟเดคเดฎเดพเดฏเดฟ เด…เดคเดฟเตปเตเดฑเต† เดซเต€เตฝเดกเตเด•เตพ เด†เด•เตโ€Œเดธเดธเต เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเด‚. เดชเตเดฐเดงเดพเดจ เด•เดพเดฐเตเดฏเด‚ เด…เดคเต เด’เดดเดฟเดตเดพเด•เตเด•เดฐเตเดคเต เดŽเดจเตเดจเดคเดพเดฃเต!
  4. เด’เดฐเต เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเดฒเตเด‚ เดธเตเดตเต€เด•เดฐเดฟเดšเตเดš เดชเต‹เดฏเดฟเตปเตเดฑเดฑเดฟเดฒเต‚เดŸเต† เด˜เดŸเดจเดฏเดฟเตฝ เดฎเดพเดฑเตเดฑเด‚ เดตเดฐเตเดคเตเดคเดฐเตเดคเต. เดŽเดฒเตเดฒเดพ เดฎเดพเดฑเตเดฑเด™เตเด™เดณเตเด‚ เดฐเต€เดคเดฟเดฏเดฟเดฒเต‚เดŸเต† เดฎเดพเดคเตเดฐเดฎเต‡ เดตเดฐเตเดคเตเดคเดพเดตเต‚ mdb_put. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดจเดฟเด™เตเด™เตพ เด‡เดคเต เดšเต†เดฏเตเดฏเดพเตป เดŽเดคเตเดฐ เด•เด เดฟเดจเดฎเดพเดฏเดฟ เด†เด—เตเดฐเดนเดฟเดšเตเดšเดพเดฒเตเด‚, เด‡เดคเต เดธเดพเดงเตเดฏเดฎเดฒเตเดฒ, เด•เดพเดฐเดฃเด‚ เดˆ เด˜เดŸเดจ เดธเตเดฅเดฟเดคเดฟเดšเต†เดฏเตเดฏเตเดจเตเดจ เดฎเต†เดฎเตเดฎเดฑเดฟ เดเดฐเดฟเดฏ เดฑเต€เดกเตบเดฒเดฟ เดฎเต‹เดกเดฟเตฝ เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.
  5. เดซเด‚เด—เตเดทเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเดฐเดฎเดพเดตเดงเดฟ เดธเด‚เดญเดฐเดฃ โ€‹โ€‹เดตเดฒเตเดชเตเดชเด‚ เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดชเตเดฐเต‹เดธเดธเตเดธเต เดตเดฟเดฒเดพเดธ เดธเตเดฅเดฒเดคเตเดคเต‡เด•เตเด•เต เด’เดฐเต เดซเดฏเตฝ เดฑเต€เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดฏเตเด• mdb_env_set_map_size เดชเตŠเดคเตเดตเต† เดŽเดฒเตเดฒเดพ เด‡เดŸเดชเดพเดŸเตเด•เดณเต†เดฏเตเด‚ เด…เดจเตเดฌเดจเตเดง เดธเตเดฅเดพเดชเดจเด™เตเด™เดณเต†เดฏเตเด‚ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เด…เดธเดพเดงเตเดตเดพเด•เตเด•เตเดจเตเดจเต, เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเต เดšเดฟเดฒ เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เดฏเดฟเตปเตเดฑเดฑเตเด•เตพ.

เด…เดตเดธเดพเดจเดฎเดพเดฏเดฟ, เดฎเดฑเตเดฑเตŠเดฐเต เดธเดตเดฟเดถเต‡เดทเดค เดตเดณเดฐเต† เดตเดžเตเดšเดจเดพเดชเดฐเดฎเดพเดฃเต, เด…เดคเดฟเตปเตเดฑเต† เดธเดพเดฐเดพเด‚เดถเด‚ เดตเต†เดณเดฟเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเต เดฎเดฑเตเดฑเตŠเดฐเต เด–เดฃเตเดกเดฟเด•เดฏเตเดฎเดพเดฏเดฟ เดฏเต‹เดœเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ. เดฌเดฟ-เดŸเตเดฐเต€เดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เด…เดงเตเดฏเดพเดฏเดคเตเดคเดฟเตฝ, เด…เดคเดฟเตปเตเดฑเต† เดชเต‡เดœเตเด•เตพ เดŽเด™เตเด™เดจเต† เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เด•เตเดฐเดฎเต€เด•เดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดŽเดจเตเดจเดคเดฟเตปเตเดฑเต† เด’เดฐเต เดกเดฏเด—เตเดฐเด‚ เดžเดพเตป เดจเตฝเด•เดฟ. เดธเต€เดฐเดฟเดฏเดฒเตˆเดธเต เดšเต†เดฏเตเดค เดกเดพเดฑเตเดฑเดฏเตเดณเตเดณ เดฌเดซเดฑเดฟเตปเตเดฑเต† เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตปเตเดฑเต† เดตเดฟเดฒเดพเดธเด‚ เดคเดฟเด•เดšเตเดšเตเด‚ เดเด•เดชเด•เตเดทเต€เดฏเดฎเดพเด•เตเดฎเต†เดจเตเดจเต เด‡เดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเดฟเดจเตเดคเตเดŸเดฐเตเดจเตเดจเต. เด‡เด•เตเด•เดพเดฐเดฃเดคเตเดคเดพเตฝ, เด…เดตเดฏเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดชเต‹เดฏเดฟเตปเตเดฑเตผ เด˜เดŸเดจเดฏเดฟเตฝ เดฒเดญเดฟเดšเตเดšเต MDB_val เด’เดฐเต เด˜เดŸเดจเดฏเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด’เดฐเต เดชเต‹เดฏเดฟเตปเตเดฑเดฑเดฟเดฒเต‡เด•เตเด•เต เดšเตเดฐเตเด•เตเด•เดฟเดฏเดพเตฝ, เดชเตŠเดคเตเดตเดพเดฏ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ เด…เดคเต เดตเดฟเดจเตเดฏเดธเดฟเด•เตเด•เดพเดคเตเดคเดคเดพเดฏเดฟ เดฎเดพเดฑเตเดจเตเดจเต. เด…เดคเต‡ เดธเดฎเดฏเด‚, เดšเดฟเดฒ เดšเดฟเดชเตเดชเตเด•เดณเตเดŸเต† เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเดฑเตเด•เตพเด•เตเด•เต (iOS-เตปเตเดฑเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ เด‡เดคเต armv7 เด†เดฃเต) เดเดคเต เดกเดพเดฑเตเดฑเดฏเตเดŸเต†เดฏเตเด‚ เดตเดฟเดฒเดพเดธเด‚ เดฎเต†เดทเต€เตป เดตเดพเด•เตเด•เดฟเตปเตเดฑเต† เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเตปเตเดฑเต† เด—เตเดฃเดฟเดคเดฎเต‹ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดฎเดฑเตเดฑเตŠเดฐเต เดฐเต€เดคเดฟเดฏเดฟเตฝ เดชเดฑเดžเตเดžเดพเตฝ, เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตปเตเดฑเต† เดฌเดฟเดฑเตเดฑเต เดตเดฒเตเดชเตเดชเดฎเต‹ เด†เดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚ ( armv7-เดจเต เด‡เดคเต 32 เดฌเดฟเดฑเตเดฑเตเด•เดณเดพเดฃเต). เดฎเดฑเตเดฑเตŠเดฐเต เดตเดฟเดงเดคเตเดคเดฟเตฝ เดชเดฑเดžเตเดžเดพเตฝ, เด’เดฐเต เด“เดชเตเดชเดฑเต‡เดทเตป เดชเต‹เดฒเต† *(int *foo)0x800002 เด…เดตเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดฐเด•เตเดทเดชเตเดชเต†เดŸเตเดจเตเดจเดคเดฟเดจเต เดคเตเดฒเตเดฏเดฎเดพเดฃเต, เด…เดคเต เด’เดฐเต เดตเดฟเดงเดฟเดฏเต‹เดŸเต† เดตเดงเดถเดฟเด•เตเดทเดฏเดฟเดฒเต‡เด•เตเด•เต เดจเดฏเดฟเด•เตเด•เตเดจเตเดจเต EXC_ARM_DA_ALIGN. เด…เดคเตเดคเดฐเดฎเตŠเดฐเต เดธเด™เตเด•เดŸเด•เดฐเดฎเดพเดฏ เดตเดฟเดงเดฟ เด’เดดเดฟเดตเดพเด•เตเด•เดพเตป เดฐเดฃเตเดŸเต เดตเดดเดฟเด•เดณเตเดฃเตเดŸเต.

เด†เดฆเตเดฏเดคเตเดคเต‡เดคเต เดตเตเดฏเด•เตเดคเดฎเดพเดฏเตเด‚ เดตเดฟเดจเตเดฏเดธเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด˜เดŸเดจเดฏเดฟเดฒเต‡เด•เตเด•เต เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เดชเตเดฐเดพเดฅเดฎเดฟเด• เดชเด•เตผเดชเตเดชเต†เดŸเตเด•เตเด•เดฒเดฟเดฒเต‡เด•เตเด•เต เดšเตเดฐเตเด™เตเด™เตเดจเตเดจเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด’เดฐเต เด‡เดทเตโ€ŒเดŸเดพเดจเตเดธเตƒเดค เดคเดพเดฐเดคเดฎเตเดฏเดคเตเดคเดฟเตฝ เด‡เดคเต เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดชเตเดฐเดคเดฟเดซเดฒเดฟเด•เตเด•เตเด‚.

int compare(MDB_val * const a, MDB_val * const b) {
    NodeKey aKey, bKey;
    memcpy(&aKey, a->mv_data, a->mv_size);
    memcpy(&bKey, b->mv_data, b->mv_size);
    return // ...
}

เด•เต€-เดฎเต‚เดฒเตเดฏเด‚ เด˜เดŸเดจเด•เตพ เด†เดŸเตเดฐเดฟเดฌเตเดฏเต‚เดŸเตเดŸเต-เด…เดฒเตˆเตป เดšเต†เดฏเตเดคเต‡เด•เตเด•เดฟเดฒเตเดฒ เดŽเดจเตเดจเต เด•เด‚เดชเตˆเดฒเดฑเดฟเดจเต† เดฎเตเตปเด•เต‚เดŸเตเดŸเดฟ เด…เดฑเดฟเดฏเดฟเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต เดฎเดฑเตเดฑเตŠเดฐเต เดฎเดพเตผเด—เด‚ aligned(1). ARM-เดฒเตเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดธเดฎเดพเดจเดฎเดพเดฏ เดชเตเดฐเดญเดพเดตเด‚ เด‰เดฃเตเดŸเดพเด•เตเด‚ เดจเต‡เดŸเดฟเดฏเต†เดŸเตเด•เตเด•เดพเตป เด•เต‚เดŸเดพเดคเต† เดชเดพเด•เตเด•เต เดšเต†เดฏเตเดค เด†เดŸเตเดฐเดฟเดฌเตเดฏเต‚เดŸเตเดŸเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เด˜เดŸเดจเดฏเตเดŸเต† เด•เตˆเดตเดถเดฎเตเดณเตเดณ เด‡เดŸเด‚ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เด‡เดคเต เดธเดนเดพเดฏเดฟเด•เตเด•เตเดจเตเดจเต เดŽเดจเตเดจเดคเต เด•เดฃเด•เตเด•เดฟเดฒเต†เดŸเตเด•เตเด•เตเดฎเตเดชเต‹เตพ, เดˆ เดฐเต€เดคเดฟ เดŽเดจเดฟเด•เตเด•เต เด…เดญเดฟเด•เดพเดฎเตเดฏเดฎเดพเดฃเต†เดจเตเดจเต เดคเต‹เดจเตเดจเตเดจเตเดจเต, เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚ ะฟั€ะธะฒะพะดะธั‚ เดกเดพเดฑเตเดฑ เด†เด•เตเดธเดธเต เด“เดชเตเดชเดฑเต‡เดทเดจเตเด•เดณเตเดŸเต† เดšเต†เดฒเดตเต เดตเตผเดฆเตเดงเดจเดฏเดฟเดฒเต‡เด•เตเด•เต.

typedef struct __attribute__((packed)) NodeKey {
    uint8_t parentId;
    uint8_t type;
    uint8_t nameLength;
    uint8_t nameBuffer[256];
} NodeKey;

เดฑเต‡เดžเตเดšเต เดšเต‹เดฆเตเดฏเด™เตเด™เตพ

เด’เดฐเต เด•เต‚เดŸเตเดŸเด‚ เดฑเต†เด•เตเด•เต‹เตผเดกเตเด•เตพ เด†เดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, LMDB เด’เดฐเต เด•เดดเตโ€Œเดธเตผ เด…เดฌเตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเด•เตเดทเตป เดจเตฝเด•เตเดจเตเดจเต. เดจเดฎเตเด•เตเด•เต เด‡เดคเดฟเดจเด•เด‚ เดชเดฐเดฟเดšเดฟเดคเดฎเดพเดฏ เด‰เดชเดฏเต‹เด•เตเดคเตƒ เด•เตเดฒเต—เดกเต เดฎเต†เดฑเตเดฑเดพเดกเดพเดฑเตเดฑเดฏเตเดณเตเดณ เด’เดฐเต เดชเดŸเตเดŸเดฟเด•เดฏเตเดŸเต† เด‰เดฆเดพเดนเดฐเดฃเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด‡เดคเต เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเดฎเต†เดจเตเดจเต เดจเต‹เด•เตเด•เดพเด‚.

เด’เดฐเต เดกเดฏเดฑเด•เตเดŸเดฑเดฟเดฏเดฟเตฝ เดซเดฏเดฒเตเด•เดณเตเดŸเต† เด’เดฐเต เดฒเดฟเดธเตเดฑเตเดฑเต เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเตปเตเดฑเต† เดญเดพเด—เดฎเดพเดฏเดฟ, เด…เดคเดฟเตปเตเดฑเต† เดšเตˆเตฝเดกเต เดซเดฏเดฒเตเด•เดณเตเด‚ เดซเต‹เตพเดกเดฑเตเด•เดณเตเด‚ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดŽเดฒเตเดฒเดพ เด•เต€เด•เดณเตเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เดฎเตเดฎเตเดชเดคเตเดคเต† เด‰เดชเดตเดฟเดญเดพเด—เด™เตเด™เดณเดฟเตฝ เดžเด™เตเด™เตพ เด•เต€เด•เตพ เด…เดŸเตเด•เตเด•เดฟ NodeKey เด…เดต เดชเตเดฐเดพเดฅเดฎเดฟเด•เดฎเดพเดฏเดฟ เดชเดพเดฐเตปเตเดฑเต เดกเดฏเดฑเด•เตโ€ŒเดŸเดฑเดฟเดฏเตเดŸเต† เดเดกเดฟ เดชเตเดฐเด•เดพเดฐเดฎเดพเดฃเต เด“เตผเดกเตผ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต. เด…เดคเดฟเดจเดพเตฝ, เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดฎเดพเดฏเดฟ, เด’เดฐเต เดซเต‹เตพเดกเดฑเดฟเดฒเต† เด‰เดณเตเดณเดŸเด•เตเด•เด™เตเด™เตพ เดตเต€เดฃเตเดŸเต†เดŸเตเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดšเตเดฎเดคเดฒ, เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดชเตเดฐเดฟเดซเดฟเด•เตโ€Œเดธเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เต€เด•เดณเตเดŸเต† เด—เตเดฐเต‚เดชเตเดชเดฟเตปเตเดฑเต† เดฎเตเด•เดณเดฟเดฒเต† เด…เดคเดฟเตผเดคเตเดคเดฟเดฏเดฟเตฝ เด•เดดเตโ€Œเดธเตผ เดธเตเดฅเดพเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดคเตเดŸเตผเดจเตเดจเต เดคเดพเดดเดคเตเดคเต† เด…เดคเดฟเตผเดคเตเดคเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เด†เดตเตผเดคเตเดคเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏ เดคเดฟเดฐเดฏเดฒเดฟเดฒเต‚เดŸเต† เดฎเตเด•เดณเดฟเดฒเต† เดชเดฐเดฟเดงเดฟ เดจเต‡เดฐเดฟเดŸเตเดŸเต เด•เดฃเตเดŸเต†เดคเตเดคเดพเดจเดพเด•เตเด‚. เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดฒเต† เดฎเตเดดเตเดตเตป เด•เต€เด•เดณเตเดŸเต† เดฒเดฟเดธเตเดฑเตเดฑเดฟเตปเตเดฑเต†เดฏเตเด‚ เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตฝ เด•เดดเตเดธเตผ เดธเตเดฅเดพเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดชเดพเดฐเตปเตเดฑเต เดกเดฏเดฑเด•เตโ€ŒเดŸเดฑเดฟเดฏเตเดŸเต† เดเดกเตปเตเดฑเดฟเดซเดฏเตผ เด‰เดณเตเดณ เด’เดฐเต เด•เต€ เด…เดคเดฟเดจเต เดคเดพเดดเต† เดฆเตƒเดถเตเดฏเดฎเดพเด•เตเดจเตเดจเดคเตเดตเดฐเต† เด•เต‚เดŸเตเดคเตฝ เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดˆ เดธเดฎเต€เดชเดจเดคเตเดคเดฟเดจเต 2 เดตเตเดฏเด•เตเดคเดฎเดพเดฏ เดชเต‹เดฐเดพเดฏเตเดฎเด•เดณเตเดฃเตเดŸเต:

  1. เดฒเต€เดจเดฟเดฏเตผ เดธเต†เตผเดšเตเดšเต เด•เต‹เด‚เดชเตเดฒเด•เตโ€Œเดธเดฟเดฑเตเดฑเดฟ, เด…เดฑเดฟเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเดคเต เดชเต‹เดฒเต†, เดฎเดฐเด™เตเด™เดณเดฟเตฝ เดชเตŠเดคเตเดตเต†เดฏเตเด‚ เดฌเดฟ-เดŸเตเดฐเต€เดฏเดฟเตฝ เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเตเด‚ เด…เดคเต เดฒเต‹เด—เดฐเดฟเดฅเดฎเดฟเด•เต เดธเดฎเดฏเดคเตเดคเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚.
  2. เดตเตเดฏเตผเดคเตเดฅเดฎเดพเดฏเดฟ, เดคเดฟเดฐเดฏเตเดจเตเดจ เดชเต‡เดœเดฟเดจเต เดฎเตเดฎเตเดชเตเดณเตเดณ เดŽเดฒเตเดฒเดพ เดชเต‡เดœเตเด•เดณเตเด‚ เดซเดฏเดฒเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเตเดฐเดงเดพเดจ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เด‰เดฏเตผเดคเตเดคเตเดจเตเดจเต, เด…เดคเต เดตเดณเดฐเต† เดšเต†เดฒเดตเต‡เดฑเดฟเดฏเดคเดพเดฃเต.

เดญเดพเด—เตเดฏเดตเดถเดพเตฝ, LMDB API เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตฝ เด•เดดเตโ€Œเดธเตผ เดธเตเดฅเดพเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดซเดฒเดชเตเดฐเดฆเดฎเดพเดฏ เดฎเดพเตผเด—เตเด—เด‚ เดจเตฝเด•เตเดจเตเดจเต.เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพ เด’เดฐเต เด•เต€ เดœเดจเดฑเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต, เด…เดคเดฟเตปเตเดฑเต† เดฎเต‚เดฒเตเดฏเด‚ เด‡เดŸเดตเต‡เดณเดฏเตเดŸเต† เดฎเตเด•เดณเดฟเดฒเต† เด…เดคเดฟเตผเดคเตเดคเดฟเดฏเดฟเดฒเตเดณเตเดณ เด•เต€เดฏเต‡เด•เตเด•เดพเตพ เด•เตเดฑเดตเต‹ เดคเตเดฒเตเดฏเดฎเต‹ เด†เดฃเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดฎเตเด•เดณเดฟเดฒเต† เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดฒเต† เดชเดŸเตเดŸเดฟเด•เดฏเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸเต, เดจเดฎเตเด•เตเด•เต เด’เดฐเต เด•เต€ เด‰เดฃเตเดŸเดพเด•เตเด•เดพเด‚, เด…เดคเดฟเตฝ เดซเต€เตฝเดกเต parentId 2 เดจเต เดคเตเดฒเตเดฏเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚, เดฌเดพเด•เตเด•เดฟเดฏเตเดณเตเดณเดตเดฏเต†เดฒเตเดฒเดพเด‚ เดชเต‚เดœเตเดฏเด™เตเด™เตพ เด•เตŠเดฃเตเดŸเต เดจเดฟเดฑเดžเตเดžเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด…เดคเตเดคเดฐเดฎเตŠเดฐเต เดญเดพเด—เดฟเด•เดฎเดพเดฏเดฟ เดชเต‚เดฐเดฟเดชเตเดชเดฟเดšเตเดš เด•เต€ เดซเด‚เด—เตเดทเตป เด‡เตปเดชเตเดŸเตเดŸเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต mdb_cursor_get เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเต† เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต MDB_SET_RANGE.

NodeKey upperBoundSearchKey = {โ€‹
    .parentId = 2,โ€‹
    .type = 0,โ€‹
    .nameLength = 0โ€‹
};โ€‹
MDB_val value, key = serialize(upperBoundSearchKey);โ€‹
MDB_cursor *cursor;โ€‹
mdb_cursor_open(..., &cursor);โ€‹
mdb_cursor_get(cursor, &key, &value, MDB_SET_RANGE);

เด’เดฐเต เด•เต‚เดŸเตเดŸเด‚ เด•เต€เด•เดณเตเดŸเต† เดฎเตเด•เดณเดฟเดฒเต† เด…เดคเดฟเดฐเตเด•เตพ เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏเดพเตฝ, เด’เดจเตเดจเตเด•เดฟเตฝ เดžเด™เตเด™เตพ เด•เดฃเตเดŸเตเดฎเตเดŸเตเดŸเตเดจเตเดจเดคเต เดตเดฐเต† เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด•เต€ เดฎเดฑเตเดฑเตŠเดจเตเดจเดฟเดจเต† เด•เดฃเตเดŸเตเดฎเตเดŸเตเดŸเตเดจเตเดจเดคเต เดตเดฐเต† เดžเด™เตเด™เตพ เด…เดคเดฟเดจเต† เด†เดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต. parentId, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดคเดพเด•เตเด•เต‹เดฒเตเด•เตพ เดคเต€เดฐเดฟเดฒเตเดฒ.

do {โ€‹
    rc = mdb_cursor_get(cursor, &key, &value, MDB_NEXT);โ€‹
    // processing...โ€‹
} while (MDB_NOTFOUND != rc && // check end of tableโ€‹
         IsTargetKey(key));    // check end of keys groupโ€‹โ€‹

mdb_cursor_get เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเตเดณเตเดณ เด†เดตเตผเดคเตเดคเดจเดคเตเดคเดฟเตปเตเดฑเต† เดญเดพเด—เดฎเดพเดฏเดฟ เดจเดฎเตเด•เตเด•เต เด•เต€ เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดฎเต‚เดฒเตเดฏเดตเตเด‚ เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเต เดŽเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒ เด•เดพเดฐเตเดฏเด‚. เดธเดพเดฎเตเดชเดฟเตพ เดตเตเดฏเดตเดธเตเดฅเด•เตพ เดจเดฟเดฑเดตเต‡เดฑเตเดฑเตเดจเตเดจเดคเดฟเดจเต, เดฎเดฑเตเดฑเต เด•เดพเดฐเตเดฏเด™เตเด™เดณเดฟเตฝ, เดฑเต†เด•เตเด•เต‹เตผเดกเดฟเตปเตเดฑเต† เดฎเต‚เดฒเตเดฏ เดญเดพเด—เดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดซเต€เตฝเดกเตเด•เตพ เดจเดฟเด™เตเด™เตพ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เด…เดงเดฟเด• เด†เด‚เด—เตเดฏเด™เตเด™เดณเดฟเดฒเตเดฒเดพเดคเต† เด…เดต เดคเดฟเด•เดšเตเดšเตเด‚ เด†เด•เตเดธเดธเต เดšเต†เดฏเตเดฏเดพเดตเตเดจเตเดจเดคเดพเดฃเต.

4.3 เดชเดŸเตเดŸเดฟเด•เด•เตพ เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เดฎเต‹เดกเดฒเดฟเด‚เด—เต เดฌเดจเตเดงเด™เตเด™เตพ

เด‡เดชเตเดชเต‹เตพ, เด’เดฐเต เดธเดฟเด‚เด—เดฟเตพ-เดŸเต‡เดฌเดฟเตพ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดฐเต‚เดชเด•เตฝเดชเตเดชเดจ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดฎเตเดณเตเดณ เดŽเดฒเตเดฒเดพ เดตเดถเด™เตเด™เดณเตเด‚ เดชเดฐเดฟเด—เดฃเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพเด•เตเด•เต เด•เดดเดฟเดžเตเดžเต. เด’เดฐเต‡ เดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณ เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดœเต‹เดกเดฟเด•เตพ เด…เดŸเด™เตเด™เตเดจเตเดจ เด…เดŸเตเด•เตเด•เดฟเดฏ เดฑเต†เด•เตเด•เต‹เตผเดกเตเด•เดณเตเดŸเต† เด’เดฐเต เด•เต‚เดŸเตเดŸเดฎเดพเดฃเต เดชเดŸเตเดŸเดฟเด• เดŽเดจเตเดจเต เดจเดฎเตเด•เตเด•เต เดชเดฑเดฏเดพเด‚. เดจเดฟเด™เตเด™เตพ เด’เดฐเต เด•เต€ เด’เดฐเต เดฆเต€เตผเด˜เดšเดคเตเดฐเดพเดฏเตเด‚ เด…เดจเตเดฌเดจเตเดง เดฎเต‚เดฒเตเดฏเด‚ เด’เดฐเต เดธเดฎเดพเดจเตเดคเดฐ เดชเตˆเดชเตเดชเต เด†เดฏเตเด‚ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตปเตเดฑเต† เด’เดฐเต เดตเดฟเดทเตเดตเตฝ เดกเดฏเด—เตเดฐเด‚ เดฒเดญเดฟเด•เตเด•เตเด‚.

เดฎเดฏเด•เตเด•เตเดฎเดฐเตเดจเตเดจเต

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดฏเดฅเดพเตผเดคเตเดฅ เดœเต€เดตเดฟเดคเดคเตเดคเดฟเตฝ เดตเดณเดฐเต† เด•เตเดฑเดšเตเดšเต เดฐเด•เตเดคเดšเตเดšเตŠเดฐเดฟเดšเตเดšเดฟเดฒเดฟเดฒเต‚เดŸเต† เด…เดคเต เด…เดชเต‚เตผเดตเตเดตเดฎเดพเดฏเดฟ เดฎเดพเดคเตเดฐเดฎเต‡ เดธเดพเดงเตเดฏเดฎเดพเด•เต‚. เดชเดฒเดชเตเดชเต‹เดดเตเด‚ เด’เดฐเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตฝ เด…เดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต, เด’เดจเตเดจเดพเดฎเดคเดพเดฏเดฟ, เดจเดฟเดฐเดตเดงเดฟ เดชเดŸเตเดŸเดฟเด•เด•เตพ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚, เดฐเดฃเตเดŸเดพเดฎเดคเดพเดฏเดฟ, เดชเตเดฐเดพเดฅเดฎเดฟเด• เด•เต€เดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏ เด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เด…เดตเดฏเดฟเตฝ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เดฒเตเด•เตพ เดจเดŸเดคเตเดคเดฃเด‚. เดˆ เด…เดตเดธเดพเดจ เดญเดพเด—เด‚ เด…เดตเดฏเตเดŸเต† เดธเตƒเดทเตเดŸเดฟเดฏเตเดŸเต†เดฏเตเด‚ เดชเดฐเดธเตเดชเดฐ เดฌเดจเตเดงเดคเตเดคเดฟเตปเตเดฑเต†เดฏเตเด‚ เดชเตเดฐเดถเตเดจเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ เดจเต€เด•เตเด•เดฟเดตเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.

เดธเต‚เดšเดฟเด• เดชเดŸเตเดŸเดฟเด•เด•เตพ

เด•เตเดฒเต—เดกเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเต เด’เดฐเต "เด—เดพเดฒเดฑเดฟ" เดตเดฟเดญเดพเด—เดฎเตเดฃเตเดŸเต. เดคเต€เดฏเดคเดฟ เดชเตเดฐเด•เดพเดฐเด‚ เด…เดŸเตเด•เตเด•เดฟเดฏ เดฎเตเดดเตเดตเตป เด•เตเดฒเต—เดกเดฟเตฝ เดจเดฟเดจเตเดจเตเดฎเตเดณเตเดณ เดฎเต€เดกเดฟเดฏ เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เด‡เดคเต เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต. เด…เดคเตเดคเดฐเดฎเตŠเดฐเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดชเตเดชเต เด’เดชเตเดฑเตเดฑเดฟเดฎเตฝ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป, เดชเตเดฐเดงเดพเดจ เดชเดŸเตเดŸเดฟเด•เดฏเตเด•เตเด•เต เด…เดŸเตเดคเตเดคเดพเดฏเดฟ เดจเดฟเด™เตเด™เตพ เด’เดฐเต เดชเตเดคเดฟเดฏ เดคเดฐเด‚ เด•เต€เด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฎเดฑเตเดฑเตŠเดจเตเดจเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เดซเดฏเตฝ เดธเตƒเดทเตเดŸเดฟเดšเตเดš เดคเต€เดฏเดคเดฟเดฏเตเดณเตเดณ เด’เดฐเต เดซเต€เตฝเดกเต เด…เดตเดฏเดฟเตฝ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚, เด…เดคเต เดชเตเดฐเดพเดฅเดฎเดฟเด• เดธเต‹เตผเดŸเตเดŸเดฟเด‚เด—เต เดฎเดพเดจเดฆเดฃเตเดกเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเด‚. เดชเตเดคเดฟเดฏ เด•เต€เด•เตพ เดชเตเดฐเดงเดพเดจ เดชเดŸเตเดŸเดฟเด•เดฏเดฟเดฒเต† เด•เต€เด•เดณเตเดŸเต† เด…เดคเต‡ เดกเดพเดฑเตเดฑเดฏเต† เดชเดฐเดพเดฎเตผเดถเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเตฝ, เด…เดตเดฏเต† เดธเต‚เดšเดฟเด• เด•เต€เด•เตพ เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต. เดšเตเดตเดŸเต†เดฏเตเดณเตเดณ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเตฝ เด…เดต เด“เดฑเดžเตเดšเดฟเตฝ เดนเตˆเดฒเตˆเดฑเตเดฑเต เดšเต†เดฏเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เด’เดฐเต‡ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเตเดฏเดคเตเดฏเดธเตเดค เดชเดŸเตเดŸเดฟเด•เด•เดณเตเดŸเต† เด•เต€เด•เตพ เดชเดฐเดธเตเดชเดฐเด‚ เดตเต‡เตผเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เด…เดตเดฏเดฟเดฒเต†เดฒเตเดฒเดพเด‚ เด’เดฐเต เด…เดงเดฟเด• เดธเดพเด™เตเด•เต‡เดคเดฟเด• เดซเต€เตฝเดกเต เดŸเต‡เดฌเดฟเตพ เดเดกเดฟ เดšเต‡เตผเดคเตเดคเต. เด…เดŸเตเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดเดฑเตเดฑเดตเตเด‚ เด‰เดฏเตผเดจเตเดจ เดฎเตเตปเด—เดฃเดจ เดจเตฝเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต†, เดžเด™เตเด™เตพ เด†เดฆเตเดฏเด‚ เดชเดŸเตเดŸเดฟเด•เด•เตพ เดตเดดเดฟเดฏเตเด‚ เดชเดŸเตเดŸเดฟเด•เด•เตพเด•เตเด•เตเดณเตเดณเดฟเตฝ - เดžเด™เตเด™เดณเตเดŸเต† เดธเตเดตเดจเตเดคเด‚ เดจเดฟเดฏเดฎเด™เตเด™เตพเด•เตเด•เดจเตเดธเดฐเดฟเดšเตเดšเต เด•เต€เด•เดณเตเดŸเต† เด—เตเดฐเต‚เดชเตเดชเดฟเด‚เด—เต เดจเต‡เดŸเตเด‚.

เด‡เตปเดกเต†เด•เตเดธเต เด•เต€ เดชเตเดฐเดพเดฅเดฎเดฟเด• เด•เต€เดฏเตเดŸเต† เด…เดคเต‡ เดกเดพเดฑเตเดฑเดฏเต† เดชเดฐเดพเดฎเตผเดถเดฟเด•เตเด•เตเดจเตเดจเต. เดชเตเดฐเตˆเดฎเดฑเดฟ เด•เต€เดฏเตเดŸเต† เดฎเต‚เดฒเตเดฏ เดญเดพเด—เดคเตเดคเดฟเตปเตเดฑเต† เด’เดฐเต เดชเด•เตผเดชเตเดชเต เด‡เดคเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดˆ เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟ เดจเต‡เดฐเดฟเดŸเตเดŸเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเต เดชเดฒ เดตเต€เด•เตเดทเดฃเด•เต‹เดฃเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเตเด‚ เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดฒเตเดฒ:

  1. เดŽเดŸเตเดคเตเดค เดธเตเดฅเดฒเดคเตเดคเดฟเตปเตเดฑเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดฎเต†เดฑเตเดฑเดพเดกเดพเดฑเตเดฑ เดตเดณเดฐเต† เดธเดฎเตเดชเดจเตเดจเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚.
  2. เด’เดฐเต เดชเตเดฐเด•เดŸเดจ เดตเต€เด•เตเดทเดฃเด•เต‹เดฃเดฟเตฝ เดจเดฟเดจเตเดจเต, เด’เดฐเต เดจเต‹เดกเดฟเตปเตเดฑเต† เดฎเต†เดฑเตเดฑเดพเดกเดพเดฑเตเดฑ เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ, เดฐเดฃเตเดŸเต เด•เต€เด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพ เด…เดคเต เดตเต€เดฃเตเดŸเตเด‚ เดŽเดดเตเดคเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต.
  3. เด•เต‹เดกเต เดชเดฟเดจเตเดคเตเดฃเดฏเตเดŸเต† เดตเต€เด•เตเดทเดฃเด•เต‹เดฃเดฟเตฝ เดจเดฟเดจเตเดจเต, เด’เดฐเต เด•เต€เดฏเตเดŸเต† เดกเดพเดฑเตเดฑ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเดพเตป เดžเด™เตเด™เตพ เดฎเดฑเดจเตเดจเดพเตฝ, เดธเด‚เดญเดฐเดฃเดคเตเดคเดฟเดฒเต† เดกเดพเดฑเตเดฑเดพ เดชเตŠเดฐเตเดคเตเดคเด•เตเด•เต‡เดŸเดฟเตปเตเดฑเต† เด’เดฐเต เด…เดตเตเดฏเด•เตเดคเดฎเดพเดฏ เดฌเด—เต เดจเดฎเตเด•เตเด•เต เดฒเดญเดฟเด•เตเด•เตเด‚.

เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดˆ เด•เตเดฑเดตเตเด•เตพ เดŽเด™เตเด™เดจเต† เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดพเดฎเต†เดจเตเดจเต เดžเด™เตเด™เตพ เดชเดฐเดฟเด—เดฃเดฟเด•เตเด•เตเด‚.

เดชเดŸเตเดŸเดฟเด•เด•เตพ เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เดฌเดจเตเดงเด™เตเด™เตพ เดธเด‚เด˜เดŸเดฟเดชเตเดชเดฟเด•เตเด•เตเด•

เดธเต‚เดšเดฟเด• เดชเดŸเตเดŸเดฟเด•เดฏเต† เดชเตเดฐเดงเดพเดจ เดชเดŸเตเดŸเดฟเด•เดฏเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดชเดพเดฑเตเดฑเต‡เตบ เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฃเต "เดฎเต‚เดฒเตเดฏเดฎเดพเดฏเดฟ เดคเดพเด•เตเด•เต‹เตฝ". เด…เดคเดฟเตปเตเดฑเต† เดชเต‡เดฐเต เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเต เดชเต‹เดฒเต†, เดธเต‚เดšเดฟเด• เดฑเต†เด•เตเด•เต‹เตผเดกเดฟเตปเตเดฑเต† เดฎเต‚เดฒเตเดฏ เดญเดพเด—เด‚ เดชเตเดฐเดพเดฅเดฎเดฟเด• เด•เต€ เดฎเต‚เดฒเตเดฏเดคเตเดคเดฟเตปเตเดฑเต† เด’เดฐเต เดชเด•เตผเดชเตเดชเดพเดฃเต. เดˆ เดธเดฎเต€เดชเดจเด‚ เดชเตเดฐเดพเดฅเดฎเดฟเด• เดฑเต†เด•เตเด•เต‹เตผเดกเดฟเตปเตเดฑเต† เดฎเต‚เดฒเตเดฏ เดญเดพเด—เดคเตเดคเดฟเตปเตเดฑเต† เด’เดฐเต เดชเด•เตผเดชเตเดชเต เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดฎเตเด•เดณเดฟเตฝ เดธเต‚เดšเดฟเดชเตเดชเดฟเดšเตเดš เดŽเดฒเตเดฒเดพ เดฆเต‹เดทเด™เตเด™เดณเตเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเดจเตเดจเต. เด‡เตปเดกเต†เด•เตเดธเต เด•เต€ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด’เดฐเต เดฎเต‚เดฒเตเดฏเด‚ เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดฒเต‡เด•เตเด•เต เด’เดจเตเดจเดฟเดจเต เดชเด•เดฐเด‚ 2 เด…เดจเตเดตเต‡เดทเดฃเด™เตเด™เตพ เดจเดŸเดคเตเดคเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต เดŽเดจเตเดจเดคเดพเดฃเต เดเด• เดšเต†เดฒเดตเต. เดธเตเด•เต€เดฎเดพเดฑเตเดฑเดฟเด•เตเด•เดพเดฏเดฟ, เดคเดคเตเดซเดฒเดฎเดพเดฏเตเดฃเตเดŸเดพเด•เตเดจเตเดจ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดธเตเด•เต€เดฎ เด‡เดคเตเดชเต‹เดฒเต† เด•เดพเดฃเดชเตเดชเต†เดŸเตเดจเตเดจเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดชเดŸเตเดŸเดฟเด•เด•เตพ เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เดฌเดจเตเดงเด™เตเด™เตพ เดธเด‚เด˜เดŸเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฎเดฑเตเดฑเตŠเดฐเต เดฎเดพเดคเตƒเด•เดฏเดพเดฃเต "เด…เดจเดตเดงเดฟ เด•เต€". เด•เต€เดฏเดฟเดฒเต‡เด•เตเด•เต เด…เดงเดฟเด• เด†เดŸเตเดฐเดฟเดฌเตเดฏเต‚เดŸเตเดŸเตเด•เตพ เดšเต‡เตผเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต เด‡เดคเดฟเตปเตเดฑเต† เดธเดพเดฐเดพเด‚เดถเด‚, เด…เดต เดธเต‹เตผเดŸเตเดŸเดฟเด‚เด—เดฟเดจเดฒเตเดฒ, เด…เดจเตเดฌเดจเตเดง เด•เต€ เดชเตเดจเตผเดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต. Mail.ru เด•เตเดฒเต—เดกเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเดฟเตฝ เด…เดคเดฟเตปเตเดฑเต† เด‰เดชเดฏเต‹เด—เดคเตเดคเดฟเตปเตเดฑเต† เดฏเดฅเดพเตผเดคเตเดฅ เด‰เดฆเดพเดนเดฐเดฃเด™เตเด™เดณเตเดฃเตเดŸเต, เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เด†เดดเดคเตเดคเดฟเดฒเตเดณเตเดณ เดกเตˆเดตเต เด’เดดเดฟเดตเดพเด•เตเด•เดพเตป เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ iOS เดšเดŸเตเดŸเด•เตเด•เต‚เดŸเตเด•เดณเตเดŸเต† เดธเดจเตเดฆเตผเดญเด‚, เดžเดพเตป เด’เดฐเต เดธเดพเด™เตเด•เตฝเดชเตเดชเดฟเด•เดตเตเด‚ เดŽเดจเตเดจเดพเตฝ เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดคเตเดฎเดพเดฏ เด’เดฐเต เด‰เดฆเดพเดนเดฐเดฃเด‚ เดจเตฝเด•เตเด‚

เด•เตเดฒเต—เดกเต เดฎเตŠเดฌเตˆเตฝ เด•เตเดฒเดฏเตปเตเดฑเตเด•เตพเด•เตเด•เต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเต เดฎเดฑเตเดฑเต เด†เดณเตเด•เดณเตเดฎเดพเดฏเดฟ เดชเด™เตเด•เดฟเดŸเตเดŸ เดŽเดฒเตเดฒเดพ เดซเดฏเดฒเตเด•เดณเตเด‚ เดซเต‹เตพเดกเดฑเตเด•เดณเตเด‚ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดชเต‡เดœเต เด‰เดฃเตเดŸเต. เด…เดคเตเดคเดฐเด‚ เดซเดฏเดฒเตเด•เตพ เดคเดพเดฐเดคเดฎเตเดฏเต‡เดจ เด•เตเดฑเดตเดพเดฏเดคเดฟเดจเดพเดฒเตเด‚ เด…เดตเดฏเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดชเดฌเตเดฒเดฟเดธเดฟเดฑเตเดฑเดฟเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดตเดฟเดตเดฟเดง เดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณ เดชเตเดฐเดคเตเดฏเต‡เด• เดตเดฟเดตเดฐเด™เตเด™เตพ เด‰เดณเตเดณเดคเดฟเดจเดพเดฒเตเด‚ (เด†เตผเด•เตเด•เตŠเด•เตเด•เต† เด†เด•เตโ€Œเดธเดธเตเดธเต เด…เดจเตเดตเดฆเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เดŽเดจเตเดคเต เด…เดตเด•เดพเดถเด™เตเด™เตพ เดฎเตเดคเดฒเดพเดฏเดต) เดฎเต‚เดฒเตเดฏเดคเตเดคเดฟเตปเตเดฑเต† เดญเดพเด—เดคเตเดคเต† เดญเดพเดฐเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเต เดฏเตเด•เตเดคเดฟเดธเดนเดฎเดฒเตเดฒ. เด…เดคเดฟเดจเตŠเดชเตเดชเด‚ เดชเตเดฐเดงเดพเดจ เดชเดŸเตเดŸเดฟเด•เดฏเดฟเตฝ เดฐเต‡เด–เดชเตเดชเต†เดŸเตเดคเตเดคเตเด•. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เด…เดคเตเดคเดฐเด‚ เดซเดฏเดฒเตเด•เตพ เด“เดซเตโ€Œเดฒเตˆเดจเดฟเตฝ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เดฃเดฎเต†เด™เตเด•เดฟเตฝ, เดจเดฟเด™เตเด™เตพ เด…เดคเต เด‡เดชเตเดชเต‹เดดเตเด‚ เดŽเดตเดฟเดŸเต†เดฏเต†เด™เตเด•เดฟเดฒเตเด‚ เดธเต‚เด•เตเดทเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เด…เดคเดฟเดจเดพเดฏเดฟ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดŸเต‡เดฌเดฟเตพ เด‰เดฃเตเดŸเดพเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต เดชเตเดฐเด•เตƒเดคเดฟเดฆเดคเตเดค เดชเดฐเดฟเดนเดพเดฐเด‚. เดšเตเดตเดŸเต†เดฏเตเดณเตเดณ เดกเดฏเด—เตเดฐเดพเดฎเดฟเตฝ, เด…เดคเดฟเตปเตเดฑเต† เด•เต€ "P" เดŽเดจเตเดจเต เดชเตเดฐเดฟเดซเดฟเด•เตโ€Œเดธเต เดšเต†เดฏเตโ€Œเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เดชเตเดฒเต†เดฏเตโ€Œเดธเตโ€Œเดนเต‹เตพเดกเตผ "เดชเตเดฐเตŠเดชเตโ€Œเดจเต†เดฏเดฟเด‚" เดฎเดพเดฑเตเดฑเดฟ เดชเด•เดฐเด‚ "เดชเดฌเตเดฒเดฟเด•เต เด‡เตปเดซเต‹" เดŽเดจเตเดจ เด•เต‚เดŸเตเดคเตฝ เดชเตเดฐเดคเตเดฏเต‡เด• เดฎเต‚เดฒเตเดฏเด‚ เดจเตฝเด•เดพเด‚.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดŽเดฒเตเดฒเดพ เด…เดฆเตเดตเดฟเดคเต€เดฏ เดฎเต†เดฑเตเดฑเดพเดกเดพเดฑเตเดฑเดฏเตเด‚, เดชเตเดคเดฟเดฏ เดชเดŸเตเดŸเดฟเด• เดธเตƒเดทเตเดŸเดฟเดšเตเดš เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ, เดฑเต†เด•เตเด•เต‹เตผเดกเดฟเตปเตเดฑเต† เดฎเต‚เดฒเตเดฏ เดญเดพเด—เดคเตเดคเต เดธเตเดฅเดพเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด…เดคเต‡ เดธเดฎเดฏเด‚, เดชเตเดฐเดงเดพเดจ เดชเดŸเตเดŸเดฟเด•เดฏเดฟเตฝ เด‡เดคเดฟเดจเด•เด‚ เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดซเดฏเดฒเตเด•เดณเต†เดฏเตเด‚ เดซเต‹เตพเดกเดฑเตเด•เดณเต†เดฏเตเด‚ เด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดกเดพเดฑเตเดฑ เดคเดจเดฟเดชเตเดชเด•เตผเดชเตเดชเดพเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เตพ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ. เดชเด•เดฐเด‚, "เดจเต‹เดกเต เดเดกเดฟ", "เดŸเตˆเด‚เดธเตเดฑเตเดฑเดพเดฎเตเดชเต" เดซเต€เตฝเดกเตเด•เดณเตเดŸเต† เดฐเต‚เดชเดคเตเดคเดฟเตฝ "เดชเดฟ" เด•เต€เดฏเดฟเดฒเต‡เด•เตเด•เต เด…เดจเดพเดตเดถเตเดฏ เดกเดพเดฑเตเดฑ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเต. เด…เดตเตผเด•เตเด•เต เดจเดจเตเดฆเดฟ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เด‡เตปเดกเต†เด•เตเดธเต เด•เต€ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚, เด…เดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดชเตเดฐเดพเดฅเดฎเดฟเด• เด•เต€ เดฒเดญเดฟเด•เตเด•เตเด‚, เด…เดคเดฟเตฝ เดจเดฟเดจเตเดจเต, เด’เดŸเตเดตเดฟเตฝ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดจเต‹เดกเต เดฎเต†เดฑเตเดฑเดพเดกเดพเดฑเตเดฑ เดฒเดญเดฟเด•เตเด•เตเด‚.

เด‰เดชเดธเด‚เดนเดพเดฐเด‚

เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเตปเตเดฑเต† เดซเดฒเด™เตเด™เตพ เดžเด™เตเด™เตพ เดชเต‹เดธเดฟเดฑเตเดฑเต€เดตเดพเดฏเดฟ เดตเดฟเดฒเดฏเดฟเดฐเตเดคเตเดคเตเดจเตเดจเต. เด…เดคเดฟเดจเตเดถเต‡เดทเด‚, เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดซเตเดฐเต€เดธเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ 30% เด•เตเดฑเดžเตเดžเต.

เดเด’เดŽเดธเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟเดฏเตเดŸเต† เดคเดฟเดณเด•เตเด•เดตเตเด‚ เดฆเดพเดฐเดฟเดฆเตเดฐเตเดฏเดตเตเด‚

เดšเต†เดฏเตโ€Œเดค เดœเต‹เดฒเดฟเดฏเตเดŸเต† เดซเดฒเด™เตเด™เตพ iOS เดŸเต€เดฎเดฟเดจเดชเตเดชเตเดฑเด‚ เดชเตเดฐเดคเดฟเดงเตเดตเดจเดฟเดšเตเดšเต. เดจเดฟเดฒเดตเดฟเตฝ, Android เด…เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเดฟเดฒเต† เดชเตเดฐเดงเดพเดจ "เดซเดฏเดฒเตเด•เตพ" เดตเดฟเดญเดพเด—เด™เตเด™เดณเดฟเดฒเตŠเดจเตเดจเตเด‚ LMDB เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดฑเดฟ, เดฎเดฑเตเดฑเต เดญเดพเด—เด™เตเด™เตพ เดตเดดเดฟเดฏเดฟเดฒเดพเดฃเต. เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดธเตเดฑเตเดฑเต‹เตผ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดธเดฟ เดญเดพเดท, เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตฝ C++-เตฝ เด•เตเดฐเต‹เดธเต-เดชเตเดฒเดพเดฑเตเดฑเตโ€Œเดซเต‹เดฎเดฟเดจเต เดšเตเดฑเตเดฑเตเด‚ เด’เดฐเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดšเดŸเตเดŸเด•เตเด•เต‚เดŸเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เดจเดฒเตเดฒเตŠเดฐเต เดธเดนเดพเดฏเดฎเดพเดฏเดฟเดฐเตเดจเตเดจเต. เด’เดฌเตเดœเด•เตเดฑเตเดฑเต€เดตเต-เดธเดฟ, เด•เต‹เดŸเตเดฒเดฟเตป เดŽเดจเตเดจเดฟเดตเดฏเดฟเดฒเต† เดชเตเดฒเดพเดฑเตเดฑเตเดซเต‹เด‚ เด•เต‹เดกเตเดฎเดพเดฏเดฟ เดคเดคเตเดซเดฒเดฎเดพเดฏเตเดฃเตเดŸเดพเด•เตเดจเตเดจ C++ เดฒเตˆเดฌเตเดฐเดฑเดฟเดฏเต† เดคเดŸเดธเตเดธเดฎเดฟเดฒเตเดฒเดพเดคเต† เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เด’เดฐเต เด•เต‹เดกเต เดœเดจเดฑเต‡เดฑเตเดฑเตผ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต. เดœเดฟเดจเตเดจเดฟ เดกเตเดฐเต‹เดชเตเดชเตเดฌเต‹เด•เตเดธเดฟเตฝ เดจเดฟเดจเตเดจเต, เดชเด•เตเดทเต‡ เด…เดคเต เดคเดฟเด•เดšเตเดšเตเด‚ เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏ เด’เดฐเต เด•เดฅเดฏเดพเดฃเต.

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•