Search at Tokopedia

Preview:

Citation preview

SEARCHAT TOKOPEDIA

WHY SEARCH IS IMPORTANT?

PREVIOUS SEARCH IN TOKOPEDIA

PREVIOUS SEARCH IN TOKOPEDIA

2000 – 8000 ms / search.

145 KB content to download for each request.

Dependancy with 4 databases.

PUT LOAD BALANCER

Solution #1

Load Balancer

Load Balancer

ISOLATION

Solution #2

REMOVE USELESS INDEXES

Solution #3

REWRITE IN GOMADE AN API

Solution #4

REMOVE DATABASES DEPENDANCY

Solution #5

REMOVE DATABASES DEPENDANCY

Solution #5

Solution #6DO CLIENT SIDE TEMPLATING

Solution #6

BEFORE AFTER

2000 – 8000 ms / search.

145 KB content to download for each request.

8 Millions index.

Dependancy with 4 databases.

6– 50 ms / search. (160 times faster)

7KB content to download for each request.(20 times smaller)

4.7 Millions index. (useless index removed, 1.7 times less)

Dependancy with 1 databases on runtime.

Result #1

2000 – 8000 ms / search.

45 KB content to download for each request.

8 Millions index.

Dependancy with 4 databases.

6– 50 ms / search.

7KB content to download for each request.

4.7 Millions index. (useless index removed)

Dependancy with 1 databases on runtime.

Making Customers Deliriously Happy

2000 – 8000 ms / search.

45 KB content to download for each request.

8 Millions index.

Dependancy with 4 databases.

6– 50 ms / search.

7KB content to download for each request.

4.7 Millions index. (useless index removed)

Dependancy with 1 databases on runtime.

Result #2

CHALLENGES ON SEARCH

Bad search result = No body can find

anything. Index growth

Slow indexing process, More features = slowing index process

Search result is subjected

FEATURES ON SEARCHAutocomplete

Spellcheck

Filtering

Sorting

FUTURE SEARCH AT TOKOPEDIA Suggestion

Q & A