rabbit-slide-kou-pgconf-asia-2016 2016.12.3.0 → 2016.12.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7560d03e7cc6bf04f453f155ab103b6522a53853
4
- data.tar.gz: e14a758b449c31aaecfe98293a4efc55c2d88ae9
3
+ metadata.gz: e9e56912a6ba5ba5a6e8d4fa15578604df83ae69
4
+ data.tar.gz: ddbedc66bc2bf92fe62bab90a7100131a33bc01d
5
5
  SHA512:
6
- metadata.gz: 63395679bdaa7fee706cfd9dc35d214a7b6cbbe8c43f811bfe1069d74a8a7c8255b2282ae56fe1091f568eaf2716b7f970515fa76336e12d0f3f0e113429154f
7
- data.tar.gz: fc3508d88d9f69d5d6a348fb0f582c05d6a2f72e09da4e7f4091ed2814fd60c7d8a361845176fe430c27c2bdbc2cb186795ff3e472bfcb3c3933173ddb14ee7d
6
+ metadata.gz: 6494bbdab2af883956695df206d29641b55c76c6cd1cd5f7b02ffe1dd42df30f3442cf569a95967023656ed67dff7f87ecd6b9e25ce76196d752d0831f360987
7
+ data.tar.gz: 0143c74f1cd6616f14c05a804ab6060b5e36aa7b92dad990af5fea4c6f29c179f445eaed0d1adf369abd723cbe6be2642cede31d407fadcf23f2f41dfe32483b
data/config.yaml CHANGED
@@ -6,7 +6,7 @@ tags:
6
6
  - pgroonga
7
7
  - postgresql
8
8
  presentation_date: 2016-12-03
9
- version: 2016.12.3.0
9
+ version: 2016.12.3.1
10
10
  licenses:
11
11
  - CC-BY-SA-4.0
12
12
  - CC-BY-3.0
@@ -1,7 +1,7 @@
1
1
  load "style.gnuplot"
2
2
 
3
3
  set xlabel "N hits"
4
- set ylabel "Elapsed time (sec)\n(Shorter is better)"
4
+ set ylabel "Elapsed time (sec)\n(Lower is better)"
5
5
 
6
6
  set label 1 \
7
7
  "Data: Japanese Wikipedia\n(Many records and large documents)" \
Binary file
Binary file
Binary file
Binary file
data/pgroonga.rab CHANGED
@@ -88,11 +88,10 @@ Many langs aren't supported\n
88
88
 
89
89
  # coderay sql
90
90
  CREATE EXTENSION pg_trgm;
91
- SELECT 'こんにちは' % 'にちは';
92
- -- ↑substring
93
- -- ?column?
94
- -- ----------
95
- -- f ← Must be "t"!
91
+ SELECT show_trgm('こんにちは');
92
+ -- show_trgm
93
+ -- -----------
94
+ -- {} ← Must not empty!
96
95
  -- (1 row)
97
96
 
98
97
  = Existing solution\n(('note:既存の解決策'))
@@ -113,7 +112,7 @@ pg_bigm
113
112
 
114
113
  # coderay sql
115
114
  CREATE INDEX index ON table
116
- USING gin (column gin_bigm_ops);
115
+ USING GIN (column gin_bigm_ops);
117
116
  -- ↑Use GIN ↑Specify op class
118
117
 
119
118
  = pg_bigm: Demerit\n(('note:pg_bigm:デメリット'))
@@ -219,7 +218,7 @@ pg_bigm
219
218
 
220
219
  = N-gram and "recheck"\n(('note:N-gramと「recheck」'))
221
220
 
222
- * N-gram approach needs "phrase search" when query has N or more characters\n
221
+ * N-gram approach needs "phrase search" when query has N+1 or more characters\n
223
222
  (('note:N+1文字以上のクエリーには「フレーズ検索」が必要'))
224
223
  * N=2 for pg_bigm, N=3 for pg_trgm\n
225
224
  (('note:pg_bigmはN=2でpg_trgmはN=3'))
@@ -373,6 +372,8 @@ for all languages!
373
372
 
374
373
  * Performance\n
375
374
  (('note:性能'))
375
+ * Japanese specific feature\n
376
+ (('note:日本語向けの機能'))
376
377
  * JSON support\n
377
378
  (('note:JSONサポート'))
378
379
  * Replication\n
@@ -389,6 +390,12 @@ for all languages!
389
390
 
390
391
  * Doesn't decrease search performance while updating\n
391
392
  (('note:更新中も検索性能が落ちない'))
393
+ * (('wait'))It's good characteristics for chat application\n
394
+ (('note:チャットアプリでうれしい傾向'))
395
+ * (('wait'))Zulip supports PGroonga\n
396
+ Zulip: OSS chat app by Dropbox\n
397
+ (('note:ZulipはPGroongaをサポートしている'))\n
398
+ (('note:ZulipはDropboxが開発しているOSSのチャットアプリ'))
392
399
 
393
400
  = Characteristics\n(('note:傾向'))
394
401
 
@@ -423,7 +430,7 @@ for all languages!
423
430
  (('note:詳細は「GIN pending list」で検索'))
424
431
  * PGroonga keeps fast search\n
425
432
  (('note:PGroongaは高速な検索を維持'))
426
- * PGroonga keeps index latest\n
433
+ * PGroonga keeps index updated\n
427
434
  (('note:PGroongaのインデックスは常に最新状態'))
428
435
 
429
436
  = Index only scan\n(('note:インデックスオンリースキャン'))
@@ -463,6 +470,81 @@ for all languages!
463
470
  * Fast index creation\n
464
471
  (('note:インデックス作成も速い'))
465
472
 
473
+ = Japanese specific feature\n(('note:日本語向けの機能'))
474
+
475
+ * Completion by Romaji\n
476
+ (('note:ローマ字による入力補完'))
477
+
478
+ = Completion: Table\n(('note:入力補完:テーブル'))
479
+
480
+ # coderay sql
481
+
482
+ CREATE TABLE stations (
483
+ name text,
484
+ readings text[]
485
+ -- ↑Support N readings
486
+ );
487
+
488
+ = Completion: Data\n(('note:入力補完:データ'))
489
+
490
+ # coderay sql
491
+
492
+ INSERT INTO stations VALUES
493
+ ('Tokyo',
494
+ ARRAY['トウキョウ']),
495
+ -- ↑In Katakana
496
+ -- (...),
497
+ ('Akihabara',
498
+ ARRAY['アキハバラ', 'アキバ']);
499
+
500
+ = Completion: Index\n(('note:入力補完:インデックス'))
501
+
502
+ # coderay sql
503
+
504
+ CREATE INDEX pgroonga_index
505
+ ON stations
506
+ USING pgroonga (
507
+ -- ↓For prefix and prefix Romaji/Katakana search
508
+ name pgroonga.text_term_search_ops_v2,
509
+ -- ↓For prefix and prefix Romaji/Katakana search
510
+ -- against array
511
+ readings pgroonga.text_array_term_search_ops_v2);
512
+
513
+ = Completion: Search\n(('note:入力補完:検索'))
514
+
515
+ # coderay sql
516
+
517
+ SELECT name, readings
518
+ FROM stations
519
+ WHERE name &^ 'tou' OR
520
+ -- ↑Prefix search
521
+ readings &^~> 'tou'
522
+ -- ↑Prefix Romaji/Katakana search
523
+ ORDER BY name LIMIT 10;
524
+
525
+ = Completion: Result\n(('note:入力補完:結果'))
526
+
527
+ (('tag:center'))
528
+ Hit by\n
529
+ prefix Romaji/Katakana search\n
530
+ "tou"(Romaji)→"トウ"(Katakana)\n
531
+ (('note:前方一致RK検索でヒット'))
532
+
533
+ # _
534
+ name | readings
535
+ -------+--------------
536
+ Tokyo | {トウキョウ}
537
+ (1 row)
538
+
539
+ = For Japanese: Wrap up\n(('note:日本語向け機能:まとめ'))
540
+
541
+ * Support prefix Romaji/Kana search\n
542
+ (('note:前方一致RK検索をサポート'))
543
+ * Useful for implementing auto complete feature in search box\n
544
+ (('note:検索欄にオートコンプリート機能を実装する時に便利'))
545
+ * Users don't need to convert Romaji to Kanji\n
546
+ (('note:ユーザーはローマ字を漢字に変換する必要がない'))
547
+
466
548
  = JSON support\n(('note:JSONサポート'))
467
549
 
468
550
  * Support full text search\n
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rabbit-slide-kou-pgconf-asia-2016
3
3
  version: !ruby/object:Gem::Version
4
- version: 2016.12.3.0
4
+ version: 2016.12.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kouhei Sutou
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-11-25 00:00:00.000000000 Z
11
+ date: 2016-12-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rabbit
@@ -49,7 +49,6 @@ extensions: []
49
49
  extra_rdoc_files: []
50
50
  files:
51
51
  - ".rabbit"
52
- - PGroonga - Make PostgreSQL\nfast full text search platform\nfor all languages!.pdf
53
52
  - README.rd
54
53
  - Rakefile
55
54
  - config.yaml