Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Woon-Hak Kang

dblp:33/6605 · DBLP profile ↗
← Back
10ranked-venue papers
4as first author
0since 2021 · last 2019
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Databases, data management, data science and information retrieval · 6 · 4 first-authorSystems, architecture and hardware · 4

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Databases, data mining, and information retrieval
7 papers
Graph data management · 31% Database system architecture and tuning · 26% Transaction processing and concurrency control · 25%
Computer architecture, parallel and distributed computing, and storage systems
8 papers
Storage systems · 60% Memory systems · 20% Processor architecture and microarchitecture · 7%
Software engineering, system software, and programming languages
3 papers
Operating systems · 59% Software testing · 41%

Topics — the 19 heaviest of 25, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Storage systems
flash and SSD
0.422016
Flash as cache extension for online transactional workloads · VLDB J. 2016
Durable write cache in flash memory SSD for relational and NoSQL databases · SIGMOD Conference 2014
Database system architecture and tuning › database performance management
query performance regression
0.412019
APOLLO: Automatic Detection and Diagnosis of Performance Regressions in Database Systems · Proc. VLDB Endow. 2019
Software testing › regression testing
performance regression testing
0.412019
APOLLO: Automatic Detection and Diagnosis of Performance Regressions in Database Systems · Proc. VLDB Endow. 2019
Operating systems › i/o › i/o subsystem
i/o stack
0.312018
Solros: a data-centric operating system architecture for heterogeneous computing · EuroSys 2018
Graph data management
graph processing
0.312017
Mosaic: Processing a Trillion-Edge Graph on a Single Machine · EuroSys 2017
Graph data management › graph processing
single-machine graph processing
0.312017
Mosaic: Processing a Trillion-Edge Graph on a Single Machine · EuroSys 2017
Operating systems › persistence
crash consistency
0.212015
Lightweight Application-Level Crash Consistency on Transactional Flash Storage · USENIX ATC 2015
Storage systems › flash and SSD › flash memory
flash storage
0.212015
Lightweight Application-Level Crash Consistency on Transactional Flash Storage · USENIX ATC 2015
Storage systems › flash and SSD › flash memory management
flash translation layer
0.212013
X-FTL: transactional FTL for SQLite databases · SIGMOD Conference 2013
Query processing and optimization › join processing › join algorithms
hash join
0.112012
Reducing cache misses in hash join probing phase by pre-sorting strategy (abstract only) · SIGMOD Conference 2012
Query processing and optimization
join processing
0.112012
Reducing cache misses in hash join probing phase by pre-sorting strategy (abstract only) · SIGMOD Conference 2012
Transaction processing and concurrency control
recovery
0.112012
Flash-based Extended Cache for Higher Throughput and Faster Recovery · Proc. VLDB Endow. 2012
Memory systems › cache management › storage caching
flash cache
0.112012
Flash-based Extended Cache for Higher Throughput and Faster Recovery · Proc. VLDB Endow. 2012
Processor architecture and microarchitecture › special-purpose processor
coprocessor
0.112018
Solros: a data-centric operating system architecture for heterogeneous computing · EuroSys 2018
Parallel and multicore computing › graph processing
heterogeneous graph processing
0.112017
Mosaic: Processing a Trillion-Edge Graph on a Single Machine · EuroSys 2017
Transaction processing and concurrency control › OLTP
OLTP engine
0.112014
Durable write cache in flash memory SSD for relational and NoSQL databases · SIGMOD Conference 2014
Memory systems
cache
0.012012
Reducing cache misses in hash join probing phase by pre-sorting strategy (abstract only) · SIGMOD Conference 2012
Memory systems › cache
cache miss reduction
0.012012
Reducing cache misses in hash join probing phase by pre-sorting strategy (abstract only) · SIGMOD Conference 2012
Memory systems › cache management
cache replacement
0.012012
Flash-based Extended Cache for Higher Throughput and Faster Recovery · Proc. VLDB Endow. 2012

Methods — techniques the papers use, named apart from their topics

root cause localization · 0.8automated test case generation · 0.8vertex-centric and edge-centric processing · 0.6hybrid execution model · 0.6hilbert-ordered tiles · 0.6tantalum capacitor durable cache · 0.4firmware features · 0.4transactional atomicity · 0.3journaling · 0.3alphasort · 0.3pre-sorting · 0.1group second chance · 0.1
YearPublicationVenuePosition
2019 Jungle: Towards Dynamically Adjustable Key-Value Store by Combining LSM-Tree and Copy-On-Write B+-Tree
Jung-Sang Ahn, Mohiuddin Abdul Qader, Woon-Hak Kang, Hieu Nguyen 0002, Guogen Zhang, Sami Ben-Romdhane
HotStorage3
2019 APOLLO: Automatic Detection and Diagnosis of Performance Regressions in Database Systems
abstract
The practical art of constructing database management systems (DBMSs) involves a morass of trade-offs among query execution speed, query optimization speed, standards compliance, feature parity, modularity, portability, and other goals. It is no surprise that DBMSs, like all complex software systems, contain bugs that can adversely affect their performance. The performance of DBMSs is an important metric as it determines how quickly an application can take in new information and use it to make new decisions. Both developers and users face challenges while dealing with performance regression bugs. First, developers usually find it challenging to manually design test cases to uncover performance regressions since DBMS components tend to have complex interactions. Second, users encountering performance regressions are often unable to report them, as the regression-triggering queries could be complex and database-dependent. Third, developers have to expend a lot of effort on localizing the root cause of the reported bugs, due to the system complexity and software development complexity. Given these challenges, this paper presents the design of Apollo, a toolchain for automatically detecting, reporting, and diagnosing performance regressions in DBMSs. We demonstrate that Apollo automates the generation of regression-triggering queries, simplifies the bug reporting process for users, and enables developers to quickly pinpoint the root cause of performance regressions. By automating the detection and diagnosis of performance regressions, Apollo reduces the labor cost of developing efficient DBMSs.
Jinho Jung 0001, Hong Hu 0004, Joy Arulraj, Taesoo Kim, Woon-Hak Kang
Proc. VLDB Endow.5
2018 Solros: a data-centric operating system architecture for heterogeneous computing
abstract
We propose Solros---a new operating system architecture for heterogeneous systems that comprises fast host processors, slow but massively parallel co-processors, and fast I/O devices. A general consensus to fully drive such a hardware system is to have a tight integration among processors and I/O devices. Thus, in the Solros architecture, a co-processor OS (data-plane OS) delegates its services, specifically I/O stacks, to the host OS (control-plane OS). Our observation for such a design is that global coordination with system-wide knowledge (e.g., PCIe topology, a load of each co-processor) and the best use of heterogeneous processors is critical to achieving high performance. Hence, we fully harness these specialized processors by delegating complex I/O stacks on fast host processors, which leads to an efficient global coordination at the level of the control-plane OS.
Changwoo Min, Woon-Hak Kang, Mohan Kumar, Sanidhya Kashyap, Steffen Maass, Heeseung Jo, Taesoo Kim
EuroSys2
2017 Mosaic: Processing a Trillion-Edge Graph on a Single Machine
abstract
Processing a one trillion-edge graph has recently been demonstrated by distributed graph engines running on clusters of tens to hundreds of nodes. In this paper, we employ a single heterogeneous machine with fast storage media (e.g., NVMe SSD) and massively parallel coprocessors (e.g., Xeon Phi) to reach similar dimensions. By fully exploiting the heterogeneous devices, we design a new graph processing engine, named Mosaic, for a single machine. We propose a new locality-optimizing, space-efficient graph representation---Hilbert-ordered tiles, and a hybrid execution model that enables vertex-centric operations in fast host processors and edge-centric operations in massively parallel coprocessors.
Steffen Maass, Changwoo Min, Sanidhya Kashyap, Woon-Hak Kang, Mohan Kumar, Taesoo Kim
EuroSys4
2016 Flash as cache extension for online transactional workloads
Woon-Hak Kang, Sang-Won Lee 0001, Bongki Moon
VLDB J.1
2015 Lightweight Application-Level Crash Consistency on Transactional Flash Storage
Changwoo Min, Woon-Hak Kang, Taesoo Kim, Sang-Won Lee 0001, Young Ik Eom
USENIX ATC2
2014 Durable write cache in flash memory SSD for relational and NoSQL databases
abstract
In order to meet the stringent requirements of low latency as well as high throughput, web service providers with large data centers have been replacing magnetic disk drives with flash memory solid-state drives (SSDs). They commonly use relational and NoSQL database engines to manage OLTP workloads in the warehouse-scale computing environments. These modern database engines rely heavily on redundant writes and frequent cache flushes to guarantee the atomicity and durability of transactional updates. This has become a serious bottleneck of performance in both relational and NoSQL database engines. This paper presents a new SSD prototype called DuraSSD equipped with tantalum capacitors. The tantalum capacitors make the device cache inside DuraSSD durable, and additional firmware features of DuraSSD take advantage of the durable cache to support the atomicity and durability of page writes. It is the first time that a flash memory SSD with durable cache has been used to achieve an order of magnitude improvement in transaction throughput without compromising the atomicity and durability. Considering that the simple capacitors increase the total cost of an SSD no more than one percent, DuraSSD clearly provides a cost-effective means for transactional support. DuraSSD is also expected to alleviate the problem of high tail latency by minimizing write stalls.
Woon-Hak Kang, Sang-Won Lee 0001, Bongki Moon, Yang-Suk Kee, Moonwook Oh
SIGMOD Conference1
2013 X-FTL: transactional FTL for SQLite databases
abstract
In the era of smartphones and mobile computing, many popular applications such as Facebook, twitter, Gmail, and even Angry birds game manage their data using SQLite. This is mainly due to the development productivity and solid transactional support. For transactional atomicity, however, SQLite relies on less sophisticated but costlier page-oriented journaling mechanisms. Hence, this is often cited as the main cause of tardy responses in mobile applications.
Woon-Hak Kang, Sang-Won Lee 0001, Bongki Moon, Gi-Hwan Oh, Changwoo Min
SIGMOD Conference1
2012 Reducing cache misses in hash join probing phase by pre-sorting strategy (abstract only)
abstract
Recently, several studies on multi-core cache-aware hash join have been carried out [Kim09VLDB, Blanas11SIGMOD]. In particular, the work of Blanas has shown that rather simple no-partitioning hash join can outperform the work of Kim. Meanwhile, the simple but best performing hash join of Blanas still experiences severe cache misses in probing phase. Because the key values of tuples in outer relation are not sorted or clustered, each outer record has different hashed key value and thus accesses the different hash bucket. Since the size of hash table of inner table is usually much larger than that of the CPU cache, it is highly probable that the reference to hash bucket of inner table by each outer record would encounter cache miss. To reduce the cache misses in hash join probing phase, we propose a new join algorithm, Sorted Probing (in short, SP), which pre-sorts the hashed key values of outer table of hash join so that the access to the hash bucket of inner table has strong temporal locality, thus minimizing the cache misses during the probing phase. As an optimization technique of sorting, we used the cache-aware AlphaSort technique, which extracts the key from each record of data set to be sorted and its pointer, and then sorts the pairs of (key, rec_ptr). For performance evaluation, we used two hash join algorithms from Blanas' work, no partitioning(NP) and independent partitioning(IP) in a standard C++ program, provided by Blanas. Also, we implemented the AlphaSort and added it before each probing phase of NP and IP, and we call each algorithm as NP+SP and IP+SP. For syntactic workload, IP+SP outperforms all other algorithms: IP+SP is faster than other altorithms up to 30%.
Gi-Hwan Oh, Jae-Myung Kim, Woon-Hak Kang, Sang-Won Lee 0001
SIGMOD Conference3
2012 Flash-based Extended Cache for Higher Throughput and Faster Recovery
abstract
Considering the current price gap between disk and flash memory drives, for applications dealing with large scale data, it will be economically more sensible to use flash memory drives to supplement disk drives rather than to replace them. This paper presents FaCE , which is a new low-overhead caching strategy that uses flash memory as an extension to the DRAM buffer. FaCE aims at improving the transaction throughput as well as shortening the recovery time from a system failure. To achieve the goals, we propose two novel algorithms for flash cache management, namely, Multi-Version FIFO replacement and Group Second Chance . One striking result from FaCE is that using a small flash memory drive as a caching device could deliver even higher throughput than using a large flash memory drive to store the entire database tables. This was possible due to flash write optimization as well as disk access reduction obtained by the FaCE caching methods. In addition, FaCE takes advantage of the non-volatility of flash memory to fully support database recovery by extending the scope of a persistent database to include the data pages stored in the flash cache. We have implemented FaCE in the PostgreSQL open source database server and demonstrated its effectiveness for TPC-C benchmarks.
Woon-Hak Kang, Sang-Won Lee 0001, Bongki Moon
Proc. VLDB Endow.1