diff --git a/src/Cache.php b/src/Cache.php
index <HASH>..<HASH> 100644
--- a/src/Cache.php
+++ b/src/Cache.php
@@ -148,6 +148,7 @@ final class Cache implements CacheInterface
     {
         $this->throwExceptionIfNotExists($cacheId);
         unset($this->cachedItems[$cacheId]);
+        $this->storage->remove($cacheId);
         return $this;
     }
 
@@ -158,6 +159,7 @@ final class Cache implements CacheInterface
     public function clear()
     {
         $this->cachedItems = [];
+        $this->storage->clear();
     }
 
 }
diff --git a/src/Contracts/CacheStorageInterface.php b/src/Contracts/CacheStorageInterface.php
index <HASH>..<HASH> 100644
--- a/src/Contracts/CacheStorageInterface.php
+++ b/src/Contracts/CacheStorageInterface.php
@@ -36,4 +36,9 @@ interface CacheStorageInterface
      * @return boolean true if cache is successfully removed
      */
     public function remove($cacheId);
+
+    /**
+     * remove all data from storage
+     */
+    public function clear();
 }
when delete key, also delete its storage