一、mongoDB和python連接處理數(shù)據(jù)慢怎么解決
mongoDB和python連接處理數(shù)據(jù)慢可以考慮用并行計(jì)算,單機(jī)多線程并行,或者集群并行。集算器提供封裝好的并行類庫(kù),調(diào)用起來(lái)比較簡(jiǎn)單。和mongo、python都比較容易集成,可以理解為mongo的庫(kù)外存儲(chǔ)過(guò)程。
首先:分析任務(wù)是計(jì)算密集型還是IO密集型。計(jì)算密集型任務(wù)主要消耗CPU資源,例如解析html文件,計(jì)算圓周率等。IO密集的任務(wù),等待存取的時(shí)間遠(yuǎn)大于CPU計(jì)算的時(shí)間,例如web應(yīng)用。一個(gè)簡(jiǎn)單不嚴(yán)謹(jǐn)?shù)姆椒?在代碼里面用時(shí)間戳計(jì)算各部分運(yùn)行時(shí)間,分析是python計(jì)算部分緩慢還是存取mongoDB部分緩慢。
其次,若為計(jì)算密集型,采用多進(jìn)程處理或者換C++。IO密集型,采用多線程,mongoDB加索引等。二者的區(qū)別和Python具體實(shí)現(xiàn)不再贅述,網(wǎng)上有很多資源。
延伸閱讀:
二、字符集(Character set)是什么
是多個(gè)字符(英文字符,漢字字符,或者其他國(guó)家語(yǔ)言字符)的集合,字符集種類較多,每個(gè)字符集包含的字符個(gè)數(shù)不同。
特點(diǎn):
①字符編碼方式是用一個(gè)或多個(gè)字節(jié)表示字符集中的一個(gè)字符
②每種字符集都有自己特有的編碼方式,因此同一個(gè)字符,在不同字符集的編碼方式下,會(huì)產(chǎn)生不同的二進(jìn)制
常見(jiàn)字符集:
ASCII字符集:基于羅馬字母表的一套字符集,它采用1個(gè)字節(jié)的低7位表示字符,高位始終為0。
LATIN1字符集:相對(duì)于ASCII字符集做了擴(kuò)展,仍然使用一個(gè)字節(jié)表示字符,但啟用了高位,擴(kuò)展了字符集的表示范圍。
GBK字符集:支持中文,字符有一字節(jié)編碼和兩字節(jié)編碼方式。
UTF8字符集:Unicode字符集的一種,是計(jì)算機(jī)科學(xué)領(lǐng)域里的一項(xiàng)業(yè)界標(biāo)準(zhǔn),支持了所有國(guó)家的文字字符,utf8采用1-4個(gè)字節(jié)表示字符。