国产精品chinese,色综合天天综合精品网国产在线,成午夜免费视频在线观看,清纯女学生被强行糟蹋小说

    <td id="ojr13"><tr id="ojr13"><label id="ojr13"></label></tr></td>
        • <source id="ojr13"></source>
            <td id="ojr13"><ins id="ojr13"><label id="ojr13"></label></ins></td>

            Article / 文章中心

            為什么使用表格存儲(chǔ)的過(guò)程中會(huì)有少量的500錯(cuò)誤?

            發(fā)布時(shí)間:2018-06-01 點(diǎn)擊數(shù):1845

            現(xiàn)象

            不少用戶在使用表格存儲(chǔ)的過(guò)程中偶爾會(huì)接到一些500錯(cuò)誤,主要錯(cuò)誤碼如下:

            HTTPStatus ErrorCode ErrorMsg
            503 OTSPartitionUnavailable The partition is not available.
            503 OTSServerUnavailable Server is not available.
            503 OTSServerBusy Server is busy.
            503 OTSTimeout Operation timeout.

            這是由于表格存儲(chǔ)是一個(gè)純分布式的NoSQL服務(wù),服務(wù)端會(huì)根據(jù)數(shù)據(jù)分區(qū)的數(shù)據(jù)量、訪問(wèn)情況做自動(dòng)的負(fù)載均衡,這樣就突破了單機(jī)服務(wù)能力的限制,實(shí)現(xiàn)了數(shù)據(jù)規(guī)模和訪問(wèn)并發(fā)的無(wú)縫擴(kuò)展。

            如下圖所示,表格存儲(chǔ)會(huì)按照第一個(gè)主鍵的順序,將實(shí)際數(shù)據(jù)劃分到不同的數(shù)據(jù)分區(qū)中,不同的數(shù)據(jù)分區(qū)會(huì)調(diào)度到不同的服務(wù)節(jié)點(diǎn)提供讀寫服務(wù)。

            當(dāng)某個(gè)數(shù)據(jù)分區(qū)的數(shù)據(jù)量過(guò)大,或者訪問(wèn)過(guò)熱,如下圖的數(shù)據(jù)分區(qū)P1,表格存儲(chǔ)的動(dòng)態(tài)負(fù)載均衡機(jī)制能夠檢測(cè)到這種情況的發(fā)生,并將數(shù)據(jù)分區(qū)分裂成兩個(gè)數(shù)據(jù)分區(qū)P1’和P5,并將該兩個(gè)數(shù)據(jù)分區(qū)調(diào)度到負(fù)載較低的服務(wù)節(jié)點(diǎn)上。

            表格存儲(chǔ)使用上述的自動(dòng)負(fù)載均衡機(jī)制實(shí)現(xiàn)表數(shù)據(jù)規(guī)模和訪問(wèn)并發(fā)的自動(dòng)擴(kuò)展,全程無(wú)需人工介入, 當(dāng)然在數(shù)據(jù)表新建立時(shí),只有一個(gè)數(shù)據(jù)分區(qū),該表上能夠提供的讀寫并發(fā)有限,自動(dòng)負(fù)載均衡機(jī)制也有一定的延時(shí)性,所以可以直接聯(lián)系到我們的工程師,預(yù)先將數(shù)據(jù)表劃分成多個(gè)數(shù)據(jù)分區(qū)。

            表格存儲(chǔ)使用共享存儲(chǔ)的機(jī)制,數(shù)據(jù)分區(qū)為邏輯單位,所以在負(fù)載均衡的過(guò)程中,不會(huì)有實(shí)際數(shù)據(jù)的遷移,僅僅是數(shù)據(jù)表元信息的變更,在元信息變更的過(guò)程中,為了保證數(shù)據(jù)的一致性,涉及到的數(shù)據(jù)分區(qū)會(huì)有短暫的不可用時(shí)間, 正常情況下影響時(shí)間為百毫秒級(jí)別,在數(shù)據(jù)分區(qū)負(fù)載較大時(shí),可能會(huì)持續(xù)到秒級(jí)別, 在這個(gè)時(shí)間內(nèi)對(duì)該分區(qū)的讀寫操作就有可能接到上述的錯(cuò)誤,一般重試即可解決。在官方的SDK中默認(rèn)提供了一些重試策略,在初始化Client端時(shí)就可以指定重試策略。

            同時(shí),表格存儲(chǔ)提供的也是標(biāo)準(zhǔn)Restful API協(xié)議,由于網(wǎng)絡(luò)環(huán)境的不可控,所有的讀寫操作也都建議增加重試策略,能夠?qū)W(wǎng)絡(luò)錯(cuò)誤等有一定的容錯(cuò)能力。

            說(shuō)明:批量讀寫操作BatchWriteRow及BatchGetRow讀寫的數(shù)據(jù)可能屬于多張表或者一張表的多個(gè)數(shù)據(jù)分區(qū),有可能某一個(gè)分區(qū)正好在分裂,所以整個(gè)操作是非原子性的,只能夠保證每個(gè)單行操作的原子性,該操作返回碼為200時(shí)仍然需要檢查response中的getFailedRows() 是否有失敗的單行操作。