perl -e '$_=24;print+(y///c,$m=$_)&&$_*3/4 .$/'
67 karma · joined July 24, 2023
perl -e '$_=24;print+(y///c,$m=$_)&&$_*3/4 .$/'
UGN was designed with SPARK and AWS S3 pbzip2-aware threading JSON readers in mind. For an analysis of a year's worth of lichess games -- over a billion, maybe more -- I believe UGN is a good solution. Try bucketing clock time vs. blunders or castling analysis or opening vs. ELO on 1 billion PGNs. Not simple search; aggregation. In the end, UGN is an information architecture; JSON is used as a convenient implementation/representation but it happens work well with SPARK and S3. And you can reliably use jq or even grep on the same UGN files. I didn't feel the need to create yet another binary format.
Anyhoo.... We're up to 60 downloads!
{"moves":[{"p":"P","f":"d2","t":"d4"},{"p":"n","f":"g8","t":"f6"},{"p":"P","f":"c2","t":"c4"},{"p":"p","f":"e7","t":"e6"},{"p":"N","f":"g1","t":"f3"},{"p":"p","f":"d7","t":"d5"},{"p":"N","f":"b1","t":"c3"},{"p":"b","f":"f8","t":"b4"},{"p":"P","f":"e2","t":"e3"},{"p":"k","f":"e8","t":"g8","castle":"K"},{"p":"B","f":"f1","t":"d3"},{"p":"p","f":"c7","t":"c5"},{"p":"K","f":"e1","t":"g1","castle":"K"},{"p":"n","f":"b8","t":"c6"},{"p":"P","f":"a2","t":"a3"},{"p":"b","f":"b4","t":"a5"},{"p":"N","f":"c3","t":"e2"},{"p":"p","f":"d5","t":"c4","x":"P"},{"p":"B","f":"d3","t":"c4","x":"p"},{"p":"b","f":"a5","t":"b6"},{"p":"P","f":"d4","t":"c5","x":"p"},{"p":"q","f":"d8","t":"d1","x":"Q"},{"p":"R","f":"f1","t":"d1","x":"q"},{"p":"b","f":"b6","t":"c5","x":"P"},{"p":"P","f":"b2","t":"b4"},{"p":"b","f":"c5","t":"e7"},{"p":"B","f":"c1","t":"b2"},{"p":"b","f":"c8","t":"d7"},{"p":"R","f":"a1","t":"c1"},{"p":"r","f":"f8","t":"d8"},{"p":"N","f":"e2","t":"d4"},{"p":"n","f":"c6","t":"d4","x":"N"},{"p":"N","f":"f3","t":"d4","x":"n"},{"p":"b","f":"d7","t":"a4"},{"p":"B","f":"c4","t":"b3"},{"p":"b","f":"a4","t":"b3","x":"B"},{"p":"N","f":"d4","t":"b3","x":"b"},{"p":"r","f":"d8","t":"d1","x":"R","c":1},{"p":"R","f":"c1","t":"d1","x":"r"},{"p":"r","f":"a8","t":"c8"},{"p":"K","f":"g1","t":"f1"},{"p":"k","f":"g8","t":"f8"},{"p":"K","f":"f1","t":"e2"},{"p":"n","f":"f6","t":"e4"},{"p":"R","f":"d1","t":"c1"},{"p":"r","f":"c8","t":"c1","x":"R"},{"p":"B","f":"b2","t":"c1","x":"r"},{"p":"p","f":"f7","t":"f6"},{"p":"N","f":"b3","t":"a5"},{"p":"n","f":"e4","t":"d6"},{"p":"K","f":"e2","t":"d3"},{"p":"b","f":"e7","t":"d8"},{"p":"N","f":"a5","t":"c4"},{"p":"b","f":"d8","t":"c7"},{"p":"N","f":"c4","t":"d6","x":"n"},{"p":"b","f":"c7","t":"d6","x":"N"},{"p":"P","f":"b4","t":"b5"},{"p":"b","f":"d6","t":"h2","x":"P"},{"p":"P","f":"g2","t":"g3"},{"p":"p","f":"h7","t":"h5"},{"p":"K","f":"d3","t":"e2"},{"p":"p","f":"h5","t":"h4"},{"p":"K","f":"e2","t":"f3"},{"p":"k","f":"f8","t":"e7"},{"p":"K","f":"f3","t":"g2"},{"p":"p","f":"h4","t":"g3","x":"P"},{"p":"P","f":"f2","t":"g3","x":"p"},{"p":"b","f":"h2","t":"g3","x":"P"},{"p":"K","f":"g2","t":"g3","x":"b"},{"p":"k","f":"e7","t":"d6"},{"p":"P","f":"a3","t":"a4"},{"p":"k","f":"d6","t":"d5"},{"p":"B","f":"c1","t":"a3"},{"p":"k","f":"d5","t":"e4"},{"p":"B","f":"a3","t":"c5"},{"p":"p","f":"a7","t":"a6"},{"p":"P","f":"b5","t":"b6"},{"p":"p","f":"f6","t":"f5"},{"p":"K","f":"g3","t":"h4"},{"p":"p","f":"f5","t":"f4"},{"p":"P","f":"e3","t":"f4","x":"p"},{"p":"k","f":"e4","t":"f4","x":"P"},{"p":"K","f":"h4","t":"h5"},{"p":"k","f":"f4","t":"f5"},{"p":"B","f":"c5","t":"e3"},{"p":"k","f":"f5","t":"e4"},{"p":"B","f":"e3","t":"f2"},{"p":"k","f":"e4","t":"f5"},{"p":"B","f":"f2","t":"h4"},{"p":"p","f":"e6","t":"e5"},{"p":"B","f":"h4","t":"g5"},{"p":"p","f":"e5","t":"e4"},{"p":"B","f":"g5","t":"e3"},{"p":"k","f":"f5","t":"f6"},{"p":"K","f":"h5","t":"g4"},{"p":"k","f":"f6","t":"e5"},{"p":"K","f":"g4","t":"g5"},{"p":"k","f":"e5","t":"d5"},{"p":"K","f":"g5","t":"f5"},{"p":"p","f":"a6","t":"a5"},{"p":"B","f":"e3","t":"f2"},{"p":"p","f":"g7","t":"g5"},{"p":"K","f":"f5","t":"g5","x":"p"},{"p":"k","f":"d5","t":"c4"},{"p":"K","f":"g5","t":"f5"},{"p":"k","f":"c4","t":"b4"},{"p":"K","f":"f5","t":"e4","x":"p"},{"p":"k","f":"b4","t":"a4","x":"P"},{"p":"K","f":"e4","t":"d5"},{"p":"k","f":"a4","t":"b5"},{"p":"K","f":"d5","t":"d6"}],"opening":{"ECO":"E56"},"site":"Reykjavik ISL","event":"Spassky-Fischer World Championship Match","result":"W","type":"C","players":[{"handle":{"domain":"UNK","value":"Boris Spassky"}},{"handle":{"domain":"UNK","value":"Robert James Fischer"}}]}
It borders on a national security issue.
So clearly the example shows how I can issue a SELECT statement against the raw data. Is there a concise statement about what the DP'd statement offers me? This isn't access control or raw data obfuscation in the traditional sense. What is the consumable use case here as opposed to, say, the statistically private use?