A storage device comprising: a non-volatile memory device including a write buffer configured to store write data (DATA) provided from a host and a journal buffer configured to store a journal log, the journal log being data representing update information indicating mapping information of a physical address and a logical address provided from the host; a non-volatile storage device including a first memory block group and a second memory block group; a volatile memory device configured to temporarily store metadata, wherein the metadata comprises: first map data (BLOCK MAP) representing mapping information of the logical address and a first address of the write buffer, second map data (NVM STRIPE MAP) representing mapping information of the first address and a second address of the first memory block group, first allocation data (SEGMENT VALID BITMAP) representing information about an allocated storage space in the write buffer, second allocation data (STRIPE VALID BITMAP) representing information about an allocated storage space in the first memory block group, and invalid count data (INVALID COUNT ARRAY) representing the number of times a memory block is processed as invalid in the first memory block group; a memory controller configured to provide the non-volatile memory device with a journaling command, that includes the journal log and the physical address corresponding to the journal buffer, and which issues a command to store the journal log in the journal buffer, update the metadata temporarily stored in the volatile memory device, and control the volatile memory device to store updated metadata to the volatile memory device. a non-volatile memory device including a write buffer configured to store write data (DATA) provided from a host and a journal buffer configured to store a journal log, the journal log being data representing update information indicating mapping information of a physical address and a logical address provided from the host; a non-volatile storage device including a first memory block group and a second memory block group; a volatile memory device configured to temporarily store metadata, wherein the metadata comprises: first map data (BLOCK MAP) representing mapping information of the logical address and a first address of the write buffer, second map data (NVM STRIPE MAP) representing mapping information of the first address and a second address of the first memory block group, first allocation data (SEGMENT VALID BITMAP) representing information about an allocated storage space in the write buffer, second allocation data (STRIPE VALID BITMAP) representing information about an allocated storage space in the first memory block group, and invalid count data (INVALID COUNT ARRAY) representing the number of times a memory block is processed as invalid in the first memory block group; first map data (BLOCK MAP) representing mapping information of the logical address and a first address of the write buffer, second map data (NVM STRIPE MAP) representing mapping information of the first address and a second address of the first memory block group, first allocation data (SEGMENT VALID BITMAP) representing information about an allocated storage space in the write buffer, second allocation data (STRIPE VALID BITMAP) representing information about an allocated storage space in the first memory block group, and invalid count data (INVALID COUNT ARRAY) representing the number of times a memory block is processed as invalid in the first memory block group; a memory controller configured to provide the non-volatile memory device with a journaling command, that includes the journal log and the physical address corresponding to the journal buffer, and which issues a command to store the journal log in the journal buffer, update the metadata temporarily stored in the volatile memory device, and control the volatile memory device to store updated metadata to the volatile memory device. provide the non-volatile memory device with a journaling command, that includes the journal log and the physical address corresponding to the journal buffer, and which issues a command to store the journal log in the journal buffer, update the metadata temporarily stored in the volatile memory device, and control the volatile memory device to store updated metadata to the volatile memory device.