Тест на использование PG в качестве key-value storage для записей фиксированного размера. Замерялась bulk вставка и выбрка записей. Результаты примерно такие:
На oracle 10g цифры на порядок другие.
subsetSumExact = (function () { | |
'use strict'; | |
// This allows conveniet access to array of bits | |
// with indices in the range [min, max]. | |
function BitSet(min, max, arr) { | |
var size = max - min + 1; | |
var data = arr || new Uint32Array(Math.ceil(size/32)); | |
this.set = function (i) { |
#!/bin/bash -e | |
API="http://en.wikipedia.org/w/api.php\ | |
?action=query\ | |
&prop=extracts\ | |
&format=json\ | |
&exsentences=2\ | |
&explaintext=\ | |
&exsectionformat=plain\ | |
&rawcontinue=\ | |
&generator=random\ |
#!/usr/bin/env python | |
# ref. http://bitcoin.stackexchange.com/questions/30727 | |
# partially copy-pasted from https://github.com/ethereum/pyethsaletool | |
import pbkdf2 as PBKDF2 | |
import python_sha3 | |
import aes | |
import sys | |
import json |
Тест проводился для 2.5 млн записей.
При записи изменений в один поток:
При записи изменений в два потока:
<!doctype html> | |
<html> | |
<head> | |
<meta charset="utf-8"> | |
<link href='https://fonts.googleapis.com/css?family=Raleway:500' rel='stylesheet' type='text/css'> | |
<style> | |
section { | |
display: flex; | |
align-items: center; | |
justify-content: center; |
<!doctype html> | |
<html> | |
<head> | |
<meta charset="utf-8"> | |
<link href='https://fonts.googleapis.com/css?family=Raleway:500' rel='stylesheet' type='text/css'> | |
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.0.0/styles/github.min.css"> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.0.0/highlight.min.js"></script> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.0.0/languages/haskell.min.js"></script> | |
<style> |
https://www.udacity.com/course/intro-to-devops--ud611
Classical process organization divides team into groups according to their responsibilities (biz, dev, qa, ops). Building walls between those groups forces sequential communication: one team finishes their part then passes result to the next team. And no matter how efficient is the process within single group, this could lead to higher latency when reacting to bugs or changes.
https://university.mongodb.com/courses/M102/about
https://university.mongodb.com/courses/M202/about