論埋點系統(tǒng)的存儲選型

最近在考慮解決打點問題的數(shù)據(jù)庫選型驶鹉。希望阿里云上能提供一些TiDB類似的產(chǎn)品荠商,同時支持OLTP和OLAP的跷乐,因此找到了HybridDB。分享一下下面文章

? ? ? ?在大數(shù)據(jù)火遍 IT 界之前族跛,大家對數(shù)據(jù)信息的挖掘通常聚焦在 BI(Business Intelligence)之上。BI 具有著明確的分析需求锐墙,清晰地知道需要處理哪些信息礁哄,并且如何最終獲得多維度的 SQL 類型數(shù)據(jù),這種多維度的分析對應(yīng)的是 OLAP 處理技術(shù)溪北。在實際商業(yè)分析應(yīng)用中桐绒,公司復(fù)雜信息模型夺脾、多樣化的分析需求會給數(shù)據(jù)庫帶來極大的技術(shù)挑戰(zhàn)。

? ? ? ?對于阿里而言茉继,實現(xiàn) OLAP咧叭、進行在線大規(guī)模并行處理,是一個無法規(guī)避的技術(shù)問題烁竭。為此菲茬,阿里云研發(fā)了 HybridDB 方案,它基于數(shù)據(jù)庫 Greenplum 的開源版本派撕,并且吸收 PostgreSQL 精髓婉弹。那么為什么會有 HybridDB 的誕生?它經(jīng)歷了怎樣的研發(fā)歷程终吼?它的應(yīng)用場景和情況是怎樣的镀赌?帶著這些問題,InfoQ 對阿里云的數(shù)據(jù)庫專家兼 Postgres 中國社區(qū)/中國用戶會主席蕭少聰先生進行了采訪衔峰,以下文字整理自采訪文稿佩脊。

先來講講 OLTP 和 OLAP

數(shù)據(jù)庫領(lǐng)域中大家經(jīng)常會看到兩個詞:OLTP 及 OLAP。

舉例說明垫卤,比如進行一次交易威彰,資金從A帳戶轉(zhuǎn)帳到B帳戶,這整個過程就是一次交易事務(wù)穴肘。如果過程中有任何系統(tǒng)錯誤歇盼,交易會回滾A帳戶中的金額都回恢到操作前的狀態(tài),這就是 On-Line Transaction Processing 聯(lián)機事務(wù)處理過程(OLTP)的操作评抚。在 OLTP 場景中用戶并發(fā)操作量會很大豹缀,要求系統(tǒng)實時進行數(shù)據(jù)操作的響應(yīng),在查詢時往往也是只會檢索一條或幾條明確的目標(biāo)數(shù)據(jù)慨代,以實現(xiàn)用戶的業(yè)務(wù)交互邢笙。

OLAP 意思是 On-Line Analytical Processing 聯(lián)機分析處理,顧名思義就是主要針對于數(shù)據(jù)的分析匯總操作侍匙。如我們的業(yè)務(wù)系統(tǒng)中每天都需要出銷售日報氮惯,這個操作需要對當(dāng)天所有數(shù)據(jù)進行匯總,并需要進行計算想暗,以得到全天收入妇汗、產(chǎn)品銷售排名、分時段的銷售量说莫,甚至與過去 30 天及去年當(dāng)天進行對比杨箭,這樣的操作都屬于 OLAP。

業(yè)界早期使用數(shù)據(jù)時储狭,尤其是 OLTP 場景下互婿,通常選擇非分布式的關(guān)系型數(shù)據(jù)庫捣郊,如 MySQL、SQLServer擒悬、Oracle模她、PostgreSQL 即可滿足大部份的需求。

OLAP 中主流數(shù)據(jù)庫遭遇瓶頸

從技術(shù)角度而言懂牧,OLAP 場景侈净,不僅涉及的數(shù)據(jù)量大而且要求分析的結(jié)果實時返回,對應(yīng)的 SQL 查詢十分復(fù)雜僧凤。如何做到技術(shù)性能和業(yè)務(wù)功能權(quán)衡畜侦,對于數(shù)據(jù)庫而言是一個重大考驗。

已有的兩個主流開源數(shù)據(jù)庫躯保,MySQL 和 PostgreSQL 都是針對 OLTP 環(huán)境的旋膳,在 OLAP 在線分析需求下它們的性能明顯不足。特別是 MySQL 在大規(guī)模分析操作時多表 Join 的性能是當(dāng)前互聯(lián)網(wǎng)用戶的一大痛點途事。

在 OLAP 發(fā)展的早期验懊,其操作并沒有專門的數(shù)據(jù)庫支撐,直接就與 OLTP 業(yè)務(wù)放在同一個數(shù)據(jù)庫中完成尸变。但隨著業(yè)務(wù)量的增加义图,OLAP 每次要分析的數(shù)據(jù)量越來越大,這樣的分析操作執(zhí)行時就會導(dǎo)致數(shù)據(jù)庫的業(yè)務(wù)交易下降召烂。因此業(yè)界開始將 OLTP碱工、OLAP 拆分成兩套不同的數(shù)據(jù)庫進行處理,OLTP 數(shù)據(jù)庫中的數(shù)據(jù)通過 ETL 軟件持續(xù)或定期抽取到 OLAP 數(shù)據(jù)庫奏夫,讓業(yè)務(wù)交易與報表分析進行分離怕篷。

而新的問題很快又到來了,聯(lián)互網(wǎng)爆發(fā)后數(shù)據(jù)量也激增酗昼,OLTP 的業(yè)務(wù)庫可以保存比較少的數(shù)據(jù)量如 3 個月到半年廊谓,但 OLAP 的數(shù)據(jù)量將可能要保存幾年甚至更多。單臺服務(wù)服務(wù)的性能上限已經(jīng)無法滿足 OLAP 分析數(shù)據(jù)持續(xù)增加所帶來的壓力麻削,因此催生出如阿里 HybridDB 這樣的大規(guī)模并行處理(Massive Parallel Processing蹂析,MPP)分布式 OLAP 數(shù)據(jù)庫。

新的分布式 OLAP 數(shù)據(jù)庫

在提供 HybridDB 方案之前碟婆,我們會給用戶提供如分庫分表等處理方案,但這樣的方案對于 SQL 查詢內(nèi)容不確定的 OLAP 業(yè)務(wù)并不友好惕稻。當(dāng)用戶需要進行多個數(shù)據(jù)表的組合操作時竖共,由于數(shù)據(jù)需要跨服務(wù)器進行大規(guī)模的聚合,性能十分低下俺祠。這個問題在 HybridDB 中也同樣會出現(xiàn)公给,所幸的是借帘,Greenplum Database 開源項目中借助平行的數(shù)據(jù)擴展技術(shù)及 interconnect 的專用協(xié)議,通過自定義的網(wǎng)絡(luò)協(xié)議有效地解決了網(wǎng)絡(luò)瓶頸的問題淌铐。這也是我們選擇基于 Greenplum Database 開源項目的原因之一肺然。

簡單來說,MPP 是一種平衡的性能擴張模型腿准。以 HybridDB 的模型為列际起,每個節(jié)點可存放的數(shù)據(jù)量及計算能力為 1Core / 8GB Mem / 80GB SSD(即將開放 500GB HDD 版本),如果用戶 80GB 以內(nèi)的數(shù)據(jù)在這樣的計算單元中吐葱,可以在毫秒內(nèi)查詢出結(jié)果街望,那將數(shù)據(jù)計算能力及容量平衡擴展到上百 TB 甚至 PB 時,用戶查詢“等比”數(shù)據(jù)量時依然可以達到毫秒級別弟跑。

MPP 分布式 OLAP 數(shù)據(jù)庫系統(tǒng)架構(gòu)已經(jīng)發(fā)展了有 10 多年之久灾前,十分成熟,當(dāng)前使用這類系統(tǒng)的企業(yè)都是中大型公司孟辑。OLAP 是一個很大的市場哎甲,有別于如同 EMR (Hadoop)的大數(shù)據(jù)分析市場,它要求海量數(shù)據(jù)的 SQL 查詢在幾分鐘饲嗽、幾秒炭玫,甚至毫秒級返回結(jié)果,因此對于服務(wù)器喝噪、網(wǎng)絡(luò)及數(shù)據(jù)庫軟件本身的架構(gòu)都提出了很高的要求础嫡。

技術(shù)攻堅之路

阿里一直都在使用并研究 OLAP,實際上在 2009 年左右開始使用 Greenplum酝惧,如果沒有記錯榴鼎,那個時候的規(guī)模應(yīng)該是國內(nèi)甚至全亞洲最大的 GPDB 集群。

研發(fā)之路并不是一帆風(fēng)順晚唇,甚至一度突圍失敗巫财。一方面,彼時 Greenplum 還處在萌芽期哩陕,只發(fā)布了 4 年平项。另一方面,Greenplum 沒有開源悍及,既無法掌握更為深入的資料闽瓢,又不得不考慮價格因素。你可以想象阿里所在行業(yè)對于數(shù)據(jù)可靠性的要求以及規(guī)模量心赶,使得對于數(shù)據(jù)庫的選擇會有多個維度的考慮扣讼。

不過早期的經(jīng)歷還是給我們留下了寶貴的經(jīng)驗。當(dāng)年的很多運維經(jīng)驗我們都進行了收集缨叫,并在現(xiàn)有平臺中變成了我們的監(jiān)控項椭符,通過自動化運維的手段進行資源調(diào)配及故障預(yù)警荔燎,這對我們平臺的穩(wěn)定性提供了很重要的經(jīng)驗。同時針對以前遇到的很多讓我們技術(shù)同學(xué)不理解的原理性問題销钝,通過 Greenplum Database 的源代碼我們進行了重點分析有咨,并找到了問題的答案。有很多之前遇到過的問題蒸健,通過源碼可以明確發(fā)現(xiàn)已經(jīng)由廠商進行了修復(fù)座享,而有一些問題可能與我們的業(yè)務(wù)場景有關(guān),結(jié)合源碼我們也進行了內(nèi)核的優(yōu)化纵装。

2015 年 10 月 Greenplum Database 由 Pivotal 開源后征讲,阿里云 PostgreSQL 內(nèi)核團隊便開始進行深度的調(diào)研,于 2016 年開始進行產(chǎn)品的研發(fā)工作橡娄,到今年 7 月份我們對用戶開放了公測邀請并準(zhǔn)備正式商業(yè)化的工作诗箍。

為什么選擇基于 Greenplum?主要有三點考慮:

生態(tài):基于 10 年商業(yè)數(shù)據(jù)庫建立的生態(tài)是寶貴的財富挽唉,讓用戶的使用變得更為便捷滤祖。

成熟:經(jīng)過我們深度的壓力測試(過程還是十分暴力的,在此不表^_^)瓶籽,我們驗證了 Greenplum 本身的穩(wěn)定性匠童,同時 GPDB 提供豐富的 SQL 支持、編程接口易于進行擴展塑顺,這些都體現(xiàn)了她的成熟度汤求。

開源:只有掌握源碼才可以協(xié)助用戶最快地解決問題,同時 Greenplum 基于 PostgreSQL严拒,基于這一點扬绪,用戶可以使用統(tǒng)一的 PostgreSQL 的 JDBC 或 .NET 驅(qū)動開發(fā) OLTP 及 OLAP 的軟件,減少不同數(shù)據(jù)庫協(xié)議之間的學(xué)習(xí)成本及研發(fā)復(fù)雜度裤唠。

揭秘 HybridDB 方案

HybridDB 基于開源 Greenplum Database (內(nèi)核實際上就是 PostgreSQL)項目的 MPP 分布式數(shù)據(jù)倉庫挤牛,與 PostgreSQL 不同,HybridDB 可以實現(xiàn)橫向擴展种蘸,提供用戶需要的百 GB 到百 TB 的高性能分析能力墓赴。

接下來結(jié)合項目說明實際應(yīng)用。

我們有一個廣告行業(yè)的用戶航瞭,他們給用戶提供線上的數(shù)據(jù)分析業(yè)務(wù)诫硕,同時也會將他們的產(chǎn)品進行線下私有環(huán)境的軟件售賣。每天他們都需要進行過億數(shù)據(jù)的匯總分析刊侯,增量數(shù)據(jù)也都在千萬級別痘括,當(dāng)前通過使用 HybridDB 進行他們線上業(yè)務(wù)的支持。一些單表的查詢在毫秒級別就可以輸出結(jié)果,而很多需要多表 Join 的復(fù)雜查詢也在數(shù)秒內(nèi)就會有結(jié)果返回纲菌。同時這個用戶給 HybridDB 提出 HyperLogLog 的功能需求后,我們在 2 周內(nèi)就給予了這個功能的支持疮绷,使得用戶在進行數(shù)據(jù)預(yù)估分析的操作性能提高幾十倍翰舌。與此同時用戶線上使用 HybridDB 開發(fā)的產(chǎn)品,也可以十分便捷地運行在線下的開源或商業(yè)版本的 Greenplum 上冬骚,避免了在不同數(shù)據(jù)庫平臺上需要重新開發(fā)應(yīng)用系統(tǒng)的工作量椅贱。

在阿里云官網(wǎng)上,HybridDB 歸結(jié)在 “數(shù)據(jù)庫” 和 “分析” 兩個類目只冻。阿里內(nèi)部已經(jīng)有業(yè)務(wù)開始使用 HybridDB 庇麦,主要是看重它對 SQL 的豐富支持,同時可以支持 GIS 數(shù)據(jù)類型及基于事務(wù)一致性的存儲過程喜德。

HybridDB 最大的三個特色:

基于成熟的 GPDB 及 PostgreSQL 生態(tài)山橄,軟開發(fā)合作伙伴進行一次軟件開發(fā),即可在云上云下同樣使用舍悯,免去遷移的煩惱航棱,更容易實現(xiàn)混合云中的數(shù)據(jù)分析支持。

支持多種混合數(shù)據(jù)類型(多達 23 種)的 SQL 統(tǒng)一查詢萌衬,包括:

傳統(tǒng)數(shù)據(jù)類型:字符饮醇、數(shù)字、浮點秕豫、日期等朴艰;

非結(jié)構(gòu)化數(shù)據(jù):JSON、XML混移;

特殊功能數(shù)據(jù)類型:GIS 地理信息數(shù)據(jù)祠墅、IPv4/v6 網(wǎng)絡(luò)數(shù)據(jù)、HyperLogLog 預(yù)估分析數(shù)據(jù)沫屡。

支持混合的數(shù)據(jù)存儲饵隙,包括:行存、列存沮脖、SSD/HDD 本地存儲金矛、OSS 云存儲,未來更將支持“存儲計算分離”勺届,用戶可以更為靈活在進行資源的購買及分配驶俊。

那么,HybridDB 在 OLAP 讀取中都做了哪些優(yōu)化免姿?

優(yōu)化方面從引擎底層我們針對阿里云的硬件及網(wǎng)絡(luò)特點饼酿,進行的源碼級別的深度優(yōu)化,特別是在網(wǎng)絡(luò)調(diào)度上進行了針對性的處理,提高跨網(wǎng)絡(luò)數(shù)據(jù)節(jié)點的吞吐能力故俐。同時在用戶業(yè)務(wù)層中對特殊數(shù)據(jù)類型進行擴展想鹰,如果物聯(lián)網(wǎng)中的 JSON 數(shù)據(jù)類型是 Greenplum Database 所不支持的,HybridDB 通過直接支持這一數(shù)據(jù)類型药版,避免用戶自行進行非結(jié)果化的解析辑舷,同時提供基于函數(shù)的 JSON 屬性級索引,提高數(shù)據(jù)庫處理 JSON 的檢索性能槽片。

除此之外何缓,HybridDB 還有哪些新意?

HybridDB 是云上的數(shù)據(jù)倉庫还栓,用戶如果在自己的私有環(huán)境中進行類似架構(gòu)的部署碌廓,將需要富有經(jīng)驗的架構(gòu)師進行完整的規(guī)劃,同時還要聘用高水平的技術(shù)團隊進行持續(xù)管理剩盒。因為如果系統(tǒng)出現(xiàn)故障無法提供服務(wù)谷婆,將很可能影響到企業(yè)的決策分析,對于以數(shù)據(jù)分析的基礎(chǔ)的企業(yè)甚至?xí)?dǎo)致業(yè)務(wù)中斷勃刨,通過使用云數(shù)據(jù)庫 HybridDB 將免除這些煩惱波材。

將 MySQL 和 PostgreSQL 數(shù)據(jù)導(dǎo)入到 HybridDB 的這個流程實際上并沒有很深的數(shù)據(jù)難度,因為 MySQL 和 PostgreSQL 都支持基于的邏輯日志身隐,我們只需要進行解析并入庫就可以了廷区。在數(shù)據(jù)導(dǎo)入方面,我們借助 OSS 分布式數(shù)據(jù)存儲的能力贾铝,實現(xiàn)了多計算節(jié)點的并行導(dǎo)入隙轻,每個計算單元(1Core/8GBMem 為一個計算單元)可以達到接近 20MB/s的數(shù)據(jù)導(dǎo)入,如果用戶構(gòu)建出一個 64 節(jié)點的 HybridDB 集群將可以達到 1GB/s的數(shù)據(jù)導(dǎo)入能力垢揩。在我們的實際用戶使用中玖绿,已經(jīng)有用戶通過這個方法在 4 分鐘內(nèi)導(dǎo)入了 4 億條數(shù)據(jù)。

另一方面 HybridDB 還支持將數(shù)據(jù)存放到 OSS 云存儲叁巨,實現(xiàn)廉價的數(shù)據(jù)存儲方案斑匪,為用戶節(jié)省更多成本。

數(shù)據(jù)存儲

1锋勺、本地存儲

HybridDB 的本地存儲分為行儲存和列存儲兩種方式蚀瘸。行存儲和列存儲各有長處。行存適合于近線數(shù)據(jù)的分析庶橱,特別是要求查詢結(jié)果返回表中某幾跳符合條件記錄的所有字段的情況贮勃。列存適合用于數(shù)據(jù)的統(tǒng)計分析。

那么兩者的適用情況是怎樣的呢苏章?舉例說明:在行存的情況下寂嘉,如果一個用于存放用戶的表中有 20 個字段奏瞬,但我們只要統(tǒng)計用戶年齡的平均值,這時數(shù)據(jù)庫要對用戶表進行全表掃描泉孩,遍歷所有行的所有數(shù)據(jù)硼端;但如果使用列存,數(shù)據(jù)庫只要定位到這一列寓搬,然后只掃描這一列的數(shù)據(jù)就可以得到所有的結(jié)果显蝌,性能上相比列存理論上就會直接快 20 倍,加上 HybridDB 將數(shù)據(jù)分布式存儲到多個計算節(jié)點订咸,性能將再次提高幾倍,達到 100 倍性能提升是十分常見酬诀。

HybridDB 是混合兩者搭配使用的脏嚷。用戶可以配搭進行使用,定義不同的表使用不同的存儲方式瞒御,讓用戶適應(yīng)不同的業(yè)務(wù)場景父叙,并進行數(shù)據(jù)生態(tài)周期的管理。如 6 個月內(nèi)的數(shù)據(jù)可能要經(jīng)常獲取全行數(shù)據(jù)肴裙,因此使用行存儲趾唱,6 個月后的數(shù)據(jù)通過列存儲進行保存提高分析匯總操作的查詢性能。

2蜻懦、外部存儲

高性能的數(shù)據(jù)分析是在本地存儲完成的甜癞。OSS 作為外部存儲,HybridDB 可以將 OSS 中的 CSV 格式化文本作為外部表進行數(shù)據(jù)查詢宛乃,同時還可以對這些外部表進行寫入操作悠咱。寫入到 OSS 的數(shù)據(jù)可以提供給 RDS for PostgreSQL 或 EMR 等云數(shù)據(jù)庫服務(wù)進行讀取及處理,因此也同時實現(xiàn)了數(shù)據(jù)的無縫打通征炼。

同時我們也將支持“存儲計算分析”的模型析既,在這樣模型上我們平時甚至可以只通過 OSS 進行數(shù)據(jù)的存儲,當(dāng)需要進行計算時再開啟足夠的計算節(jié)點進行數(shù)據(jù)分析處理谆奥,計算處理結(jié)束后關(guān)閉計算節(jié)點資源以節(jié)省使用成本眼坏。

HybridDB 的幕后故事

1拨拓、扎根社區(qū)

當(dāng)前我們基于開源版本的 Greenplum Database谋竖,同時我們也會進行一些功能的添加及性能穩(wěn)定性上的優(yōu)化工作,我們也會逐步進行對開源社區(qū)的更多的貢獻驶忌,如當(dāng)前我們就已經(jīng)開源了支持 Greenplum擂仍、PostgreSQL 及 HybridDB 的數(shù)據(jù)同步工具 dbsync (https://github.com/aliyun/rds_dbsync)囤屹,有興趣的讀者可以下載測試及使用。

在 Greenplum Database 的開源社區(qū)我們會有很多的合作逢渔,甚至我們已經(jīng)在向開源社區(qū)提交新功能及 patch肋坚。同時 Greenplum 也是 PostgreSQL 開源數(shù)據(jù)庫生態(tài)重要的力量,我個人同時作為 PostgreSQL 中國社區(qū)及用戶會的主席也當(dāng)然會進行更多線上線下活動的支持。

2智厌、商業(yè)合作

Greenplum 背后的公司是 Pivotal诲泌。所以同時也與 Pivotal 有更多的商業(yè)合作。阿里也會與 Pivotal 方面進行持續(xù)的接觸铣鹏,相信我們會有機會碰出絢麗的火花敷扫。

寫在最后

長期以來國外開源社區(qū)都認為中國用戶僅僅使用開源軟件,但是貢獻甚少诚卸。不過葵第,隨著阿里的發(fā)展,我們已經(jīng)開始反哺開源社區(qū)并共同建立生態(tài)合溺。幾個月前卒密,AliSQL 的開源說明了阿里對開源業(yè)界的支持。HybridDB 同樣如此棠赛,雖然我們的版本才剛剛發(fā)布哮奇,但在版本研發(fā)的過程中已經(jīng)開始向社區(qū)共享代碼。

阿里云當(dāng)前支持云數(shù)據(jù)庫 HybridDB睛约,暫時沒有計劃去支持私有環(huán)境的 Greenplum 數(shù)據(jù)庫鼎俘。不過我們團隊的大神德哥,會繼續(xù)貢獻他在使用 Greenplum 的經(jīng)驗心得辩涝。希望對大家有所幫助贸伐。

用戶在線下可以使用 Greenplum 的開源數(shù)據(jù)庫版本或商業(yè)版本,據(jù)我所了解也已經(jīng)有很多數(shù)據(jù)庫服務(wù)商開始提供 Greenplum 的技術(shù)支持膀值,使用這個數(shù)據(jù)庫的用戶不需要再擔(dān)心未來上云遷移的問題棍丐。同時,我們也會在未來結(jié)合 PostgreSQL 及 HybridDB 提供一系列的使用教學(xué)視頻沧踏,讓用戶更快速地掌握產(chǎn)品的正確使用場景及方法歌逢。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市翘狱,隨后出現(xiàn)的幾起案子秘案,更是在濱河造成了極大的恐慌,老刑警劉巖潦匈,帶你破解...
    沈念sama閱讀 222,000評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件阱高,死亡現(xiàn)場離奇詭異,居然都是意外死亡茬缩,警方通過查閱死者的電腦和手機赤惊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,745評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來凰锡,“玉大人未舟,你說我怎么就攤上這事圈暗。” “怎么了裕膀?”我有些...
    開封第一講書人閱讀 168,561評論 0 360
  • 文/不壞的土叔 我叫張陵员串,是天一觀的道長。 經(jīng)常有香客問我昼扛,道長寸齐,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,782評論 1 298
  • 正文 為了忘掉前任抄谐,我火速辦了婚禮渺鹦,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蛹含。我一直安慰自己海铆,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,798評論 6 397
  • 文/花漫 我一把揭開白布挣惰。 她就那樣靜靜地躺著,像睡著了一般殴边。 火紅的嫁衣襯著肌膚如雪憎茂。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,394評論 1 310
  • 那天锤岸,我揣著相機與錄音竖幔,去河邊找鬼。 笑死是偷,一個胖子當(dāng)著我的面吹牛拳氢,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蛋铆,決...
    沈念sama閱讀 40,952評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼馋评,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了刺啦?” 一聲冷哼從身側(cè)響起留特,我...
    開封第一講書人閱讀 39,852評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎玛瘸,沒想到半個月后蜕青,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,409評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡糊渊,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,483評論 3 341
  • 正文 我和宋清朗相戀三年右核,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片渺绒。...
    茶點故事閱讀 40,615評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡贺喝,死狀恐怖菱鸥,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情搜变,我是刑警寧澤采缚,帶...
    沈念sama閱讀 36,303評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站挠他,受9級特大地震影響扳抽,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜殖侵,卻給世界環(huán)境...
    茶點故事閱讀 41,979評論 3 334
  • 文/蒙蒙 一贸呢、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧拢军,春花似錦楞陷、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,470評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至度陆,卻和暖如春艾凯,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背懂傀。 一陣腳步聲響...
    開封第一講書人閱讀 33,571評論 1 272
  • 我被黑心中介騙來泰國打工趾诗, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蹬蚁。 一個月前我還...
    沈念sama閱讀 49,041評論 3 377
  • 正文 我出身青樓恃泪,卻偏偏與公主長得像,于是被迫代替她去往敵國和親犀斋。 傳聞我的和親對象是個殘疾皇子贝乎,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,630評論 2 359

推薦閱讀更多精彩內(nèi)容