[{"data":1,"prerenderedAt":338},["ShallowReactive",2],{"project-13249469":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":35,"aspects":36,"strip":44,"post_text":45,"what":46,"said":76,"maker_in_thread":171,"shape":178,"grid":183,"attempts":296,"same_week":301,"maker_shows":180,"maker_hidden":330,"reader_version":331,"card":332},"13249469","Gun database","100k ops\u002Fsec in IE6 on 2GB Atom CPU","title","Show HN: Gun database – 100k ops\u002Fsec in IE6 on 2GB Atom CPU","https:\u002F\u002Fgithub.com\u002Famark\u002Fgun\u002Fwiki\u002F100000-ops-sec-in-IE6-on-2GB-Atom-CPU","github.com","marknadal",1482580492,2016,71,48,543,2264,24,"notable","data","distributed database","library",[24,25,26,27,28],"p2p database","realtime database","crdt","graph database","javascript database","roasted",-0.594,{"positive":32,"neutral":33,"mixed":32,"critical":34},0,2,10,12,{"performance":37,"design":39,"docs":40,"execution":42,"idea":43},{"positive":32,"critical":38},3,{"positive":32,"critical":33},{"positive":32,"critical":41},1,{"positive":32,"critical":33},{"positive":32,"critical":33},[32,32,32,32,41,32,32,41,32,41,32,38,41,32,38,32,41,32,32,41,41,32,41,32,41,32,32,32,32,32,32,32,41,32,32,32,32,32,32,32],null,{"problem":47,"audience":45,"pricing":45,"motivation":45,"time_to_build":45,"stack":57,"openness":74,"stage":75,"team_size":75},{"value":48,"source":49,"evidence":50},"Fast, decentralized realtime data sync with local in-memory caching","maker",[51,54],{"id":52,"by":11,"text":53},"13249576","Redis is quite an awesome database, these claims here aren't to belittle Redis (it is one of the fastest out there!). Check out there performance (and make note of theirs, and…",{"id":55,"by":11,"text":56},"13257756","Great comment! The P2P protocol's base case is an ad-hoc mesh network (how the messaging between peers works is explained here:…",[58,67],{"value":59,"source":60,"evidence":61},"JavaScript","commenter",[62,66],{"id":63,"by":64,"text":65},"13249552","ddorian43","Honestly, I cringe everytime I read about gundb. Db made in nodejs? Check. No mention of multiprocess? Check. No mention of persistence? Check.(lol @ s3 persistence) All tests…",{"id":52,"by":11,"text":53},{"value":68,"source":60,"evidence":69},"Node.js",[70,71],{"id":63,"by":64,"text":65},{"id":72,"by":11,"text":73},"13249609","Actually, we turned S3 into a timeseries store that handled 100M+ messages for $10\u002Fday (over 100GB+ data, all costs for processing, storage, and backup), check out this…","open_source","unknown",{"praise":77,"objections":87,"requests":130,"questions":142,"alternatives":157},[78],{"value":79,"source":49,"evidence":80},"Embedded caching idea is a valuable optimization",[81,84],{"id":82,"by":11,"text":83},"13249586","Absolutely! I mention this in one of my other comments, thanks for highlighting it. The performance difference is really a matter of the cache being closer (embedded in-memory…",{"id":85,"by":11,"text":86},"13252190","I think it means a lot, it is a brilliant optimization that more databases should take advantage of and more web developers should exploit. There are a lot of valuable insights…",[88,102,109,123],{"value":89,"source":60,"evidence":90},"Benchmark comparison with Redis is apples to oranges",[91,95,99],{"id":92,"by":93,"text":94},"13249569","reitzensteinm","\"If you plan to compare Redis to something else, then it is important to evaluate the functional and technical differences, and take them in account. - Redis is a server: all…",{"id":96,"by":97,"text":98},"13250305","brudgers","It's not meaningless to compare X to Redis for a particular app in terms of performance. The choice is an architectural decision and often architectural decisions are made by…",{"id":100,"by":93,"text":101},"13249660","Look, the title was 100% click bait. The word Redis didn't even exist on the page linked. It deserved to get kicked off, as it was (certainly it wasn't just my flag that did it).…",{"value":103,"source":60,"evidence":104},"Conflict resolution by string comparison can lose data",[105],{"id":106,"by":107,"text":108},"13251994","mark242","Here's the important piece of information, from the conflict resolution page: \"Compare their string values with JSON.stringify, choosing the greater of the two.\" In other words…",{"value":110,"source":60,"evidence":111},"Title was clickbait and has been changed",[112,116,119],{"id":113,"by":114,"text":115},"13249606","mariogintili","then I'd change the title - comes across as a direct comparison to redis. Can we please let HN be free of click bait? :(",{"id":117,"by":93,"text":118},"13250888","The old title claimed it was 50x faster than Redis with no analysis or discussion of tradeoffs. You had to read the fine print to even see the comparison was apples to oranges.…",{"id":120,"by":121,"text":122},"13250353","sctb","We've updated the title from “50X Faster Than Redis, Open Source P2P Firebase”. We also detached this subthread from https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=13249586 and marked it…",{"value":124,"source":60,"evidence":125},"Code is hard to read and poorly structured",[126],{"id":127,"by":128,"text":129},"13251641","atombender","One might take the claims — and hubristic comparisons to production-ready systems like Redis, Cassandra, Firebase and Riak — more seriously if the code weren't such an…",[131,138],{"value":132,"source":60,"evidence":133},"Concrete documentation of the P2P protocol",[134],{"id":135,"by":136,"text":137},"13252451","yellowapple","All the CP v. AP and algorithmic discussion aside, I'd be really interested in some actual concrete documentation on the actual peer-to-peer protocol involved (preferably without…",{"value":139,"source":60,"evidence":140},"Clear pros, cons and intended use cases",[141],{"id":100,"by":93,"text":101},[143,150],{"value":144,"source":60,"evidence":145},"Under what conditions does it outperform Redis?",[146],{"id":147,"by":148,"text":149},"13249536","blowski","That's an awfully big claim. Under what conditions does it do well? What does it do badly? Where would I consider using this instead of Redis?",{"value":151,"source":60,"evidence":152},"How does conflict resolution behave under concurrent writes?",[153],{"id":154,"by":155,"text":156},"13252186","sagichmal","> Lexical comparison is only used when 2 writes happen at the exact same time. But you take time from the system. Your writes may converge, but to an nondeterministic state.",[158,162,167],{"value":159,"source":60,"evidence":160},"Redis",[161],{"id":92,"by":93,"text":94},{"value":163,"source":60,"evidence":164},"CouchDB",[165,166],{"id":106,"by":107,"text":108},{"id":135,"by":136,"text":137},{"value":168,"source":60,"evidence":169},"Firebase",[170],{"id":127,"by":128,"text":129},{"comments":34,"answered":38,"key":172},[173,174,175],{"id":82,"text":83},{"id":85,"text":86},{"id":176,"text":177},"13252173","Lexical comparison is only used when 2 writes happen at the exact same time. Yes, it is a very basic hybrid vector\u002Flexical\u002Ftimestamp CRDT. The naive-ness of it is also its power,…",{"commenters":179,"max_depth":180,"maker_replies":34,"first_comment_mins":181,"lifespan_hours":182},25,6,30,46,[184,186,188,192,194,195,197,199,202,204,206,207,209,213,215,218,220,224,227,228,230,232,235,237,238,241,243,245,247,249,250,252,255,257,259,261,264,265,268,273,276,278,280,282,285,288,291,294],[92,32,32,185,93,32],"commenter\u002Fneutral\u002Fperformance",[82,32,32,187,11,41],"maker\u002Fneutral\u002Fperformance",[189,32,32,190,191,32],"13251216","commenter\u002Fneutral\u002Fnone","theseoafs",[85,32,32,193,11,41],"project\u002Fpositive\u002Fidea",[96,32,32,185,97,32],[117,32,41,196,93,32],"project\u002Fcritical\u002Fperformance",[198,32,32,190,97,32],"13251003",[200,32,32,190,201,32],"13251722","frozenport",[106,41,41,203,107,32],"project\u002Fcritical\u002Fdesign",[176,41,32,205,11,41],"project\u002Fneutral\u002Fdesign",[154,41,41,203,155,32],[208,41,32,205,11,41],"13252193",[210,33,32,211,212,32],"13251042","other\u002Fneutral\u002Fnone","barakm",[147,38,38,214,148,32],"project\u002Fneutral\u002Fnone",[216,38,41,196,217,32],"13249548","nordsieck",[52,38,32,219,11,41],"project\u002Fneutral\u002Fperformance",[221,222,32,211,223,32],"13251460",4,"naoru",[135,225,38,226,136,32],5,"project\u002Fneutral\u002Fdocs",[55,225,32,226,11,41],[63,180,41,229,64,32],"project\u002Fcritical\u002Fexecution",[72,180,32,231,11,41],"maker\u002Fneutral\u002Fnone",[233,180,32,190,234,32],"13250937","fiatjaf",[236,180,32,190,64,32],"13253383",[127,180,41,229,128,32],[239,180,41,240,136,32],"13252461","project\u002Fcritical\u002Fidea",[242,180,32,211,64,32],"13253416",[113,244,41,240,114,32],7,[246,244,32,190,93,32],"13249612",[248,244,32,219,11,41],"13249633",[100,244,41,196,93,32],[251,244,32,231,11,41],"13249695",[253,244,32,190,254,32],"13250526","justinsaccount",[256,244,32,190,93,32],"13250846",[258,244,32,190,114,32],"13249634",[260,244,32,190,64,32],"13249738",[262,244,32,190,263,32],"13249755","DanBC",[120,244,32,211,121,32],[266,267,32,231,11,41],"13251008",8,[269,270,41,271,272,32],"13249556",9,"project\u002Fcritical\u002Fdocs","JshWright",[274,270,32,211,275,32],"13249639","jnbiche",[277,270,32,211,97,32],"13250280",[279,270,32,211,272,32],"13250330",[281,270,32,211,97,32],"13250438",[283,270,32,211,284,32],"13251262","tptacek",[286,270,32,211,287,32],"13252467","john_other_john",[289,270,32,211,290,32],"13250964","ellyagg",[292,270,32,211,293,32],"13251135","dang",[295,270,32,211,272,32],"13252134",[297,300],{"id":298,"t":299,"points":244,"comments":33},"11760044",1464082391,{"id":4,"t":12,"points":14,"comments":15},[302,307,312,316,321,326],{"id":303,"name":304,"points":305,"category":306},"13245475","Rocket",484,"languages",{"id":308,"name":309,"points":310,"category":311},"13244827","Wick",322,"creative",{"id":313,"name":314,"points":315,"category":311},"13254029","ThreadTone",303,{"id":317,"name":318,"points":319,"category":320},"13254342","8bitworkshop",289,"dev_tools",{"id":322,"name":323,"points":324,"category":325},"13259429","Thimble",272,"learning_science",{"id":327,"name":328,"points":329,"category":320},"13259000","Mitmproxy 1.0 released",248,false,"v2",{"id":333,"name":5,"line":6,"ai":330,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":334,"top":18,"kw":335,"maker":11,"domain":10,"tier":19,"attempts":33,"strip":336,"url":9,"mix":337,"praise":79,"objection":89,"sub":21},13249469,-0.59,[24,25,26,27,28],"0000100101031030100110101000000010000000",[32,33,32,34],1793990952286]