当前位置:文档之家› Anodic spark deposition of P, Me(II) or Me(III) containing coatings on aluminium and titanium alloys

Anodic spark deposition of P, Me(II) or Me(III) containing coatings on aluminium and titanium alloys

Anodic spark deposition of P, Me(II) or Me(III) containing coatings on aluminium and titanium alloys
Anodic spark deposition of P, Me(II) or Me(III) containing coatings on aluminium and titanium alloys

www.elsevier.nl/locate/jelechem

Journal of Electroanalytical Chemistry497(2001)150–158

Anodic spark deposition of P,Me(II)or Me(III)containing coatings on aluminium and titanium alloys in electrolytes with

polyphosphate complexes

V.S.Rudnev*,T.P.Yarovaya,D.L.Boguta,L.M.Tyrina,P.M.Nedozorov,

P.S.Gordienko

Institute of Chemistry,Far Eastern Branch of Russian Academy of Sciences,Vladi6ostok690022,Russia

Received15May2000;received in revised form8September2000;accepted11September2000

Abstract

The aim of this study was to characterise the correlation between the molar ratio n=[polyphosphate]/[metal cation]in aqueous electrolyte and the growth parameters,composition and surface distribution of elements of anodic coatings on aluminium and titanium alloys.Coatings were formed in electrochemical cell using the anodic spark deposition method.The two-component electrolytes contained sodium hexametaphosphate(Na6P6O18)or sodium tripolyphosphate(Na5P3O10)and acetates of Mg(II), Zn(II),Ba(II),Mn(II),Ni(II),Pb(II),Y(III),Eu(III)were used.Coatings were characterised by electron probe microanalysis,laser mass spectrometry and X-ray diffraction.It was shown that the n value essentially affects the composition and thickness of coatings when lower than a certain value n0,which lies in the range from2.5to10depending on the metal cation in the electrolyte. Coatings formed in electrolytes of n B1consist mostly of electrolyte species.The in?uence of n on composition and parameters of the coatings is explained in terms of deposition and thermolysis of polyphosphate complexes on the anode surface owing to electric breakdown.?2001Elsevier Science B.V.All rights reserved.

Keywords:Anodic?lm;Electrolyte;Electric breakdown;Polyphosphate complexes

1.Introduction

Anodic spark deposition(ASD)is an electrochemical formation of anodic layers on metal surfaces by reactions caused by the electric breakdown at the anode region [1–10].The ASD technique is used to form protective [11–14],coloured[4,15–17],anticorrosive[6–8,18–20], heat-resistant[14]and biocompatible[21–23]coatings. The composition of ASD coatings depends on the electrolyte composition as well as on the anodising parameters.For example,the coatings formed on alu-minium contain a-Al2O3[1,11],FeAl2O4,CoAl2O4, CuAl2O4[4,17,24],WO3[1,25],SiO2[1],V2O4,V4O9 [19,26,27],ZrO2,HfO2,TiO2[27–29];and those formed on titanium contain BaTiO3,SrTiO3[7,8,30–32].The ASD method is attractive for the formation of the coatings possessing biocidal[8,33],catalytic[34]and piezoelectric[7,8,30–32]properties,and structures, which can be used as sensors in gas-analysing devices [35–37].

It has been shown that using electrolytes containing complex anions such as oxalate[24,38],?uoride [28,29,39],cyanide[4,24],polyphosphate[17,27,29,40–43]and heteropolyoxoanions[27,44]are promising for the formation of coatings of diverse chemical composi-tion.The coatings obtained on aluminium alloy in aqueous electrolytes containing sodium hexametaphos-phate(Na6P6O18)and Me(II),Me(III)water-soluble salts (phosphates,carbonates,acetates,nitrates)contain sig-ni?cant amounts of phosphorus and Me(II)or Me(III) [17,27,40–43].The supposition was made[27,42,43] that the coating formation in such solutions occurs owing to thermolysis at the electric discharge regions of hydrated Me(II)or Me(III)polyphosphates,for exam-ple,Me3II P6O18·x H2O,Na2Me2II P6O18·x H2O,precipitated on the anode surface.The insoluble products of thermol-ysis of such compounds would then remain in the coating.

*Corresponding author.Fax:+7-4232-311889.

E-mail address:chemi@online.ru(V.S.Rudnev).

0022-0728/01/$-see front matter?2001Elsevier Science B.V.All rights reserved. PII:S0022-0728(00)00483-6

V .S .Rudne 6et al ./Journal of Electroanalytical Chemistry 497(2001)150–158151

According to investigations in polyphosphate aqueous solution chemistry [45–48],at the polyphos-phate concentration used in Refs.[17,27,40–43]the structure,composition and solubility of polyphosphate complexes depend on the molar ratio n =[polyphos-phate]/[metal cation]in solution.With a polyphosphate excess (n \1)most solutions with polyphosphate com-plexes are true,transparent solutions.With a polyphos-phate de?ciency (n B 1)polyphosphate complexes are bound into aggregates,the solutions are colloidal and precipitation of a sediment occurs.The high-tempera-ture annealing of such a sediment results in Me(II)or Me(III)high-temperature phosphate formation.For ex-ample,annealing of Y 3P 6O 18·18H 2O and Cu 3P 6O 18·14H 2O ?ltered from such solutions,corre-sponds to the schemes [47,48]:Y 2P 6O 18·18H 2O 80?300°C Y 2P 6O 18·n H 2O

+amorph.phase 300°C

Crystal phase 700°C

Y(PO 3)3Cu 3P 6O 18·14H 2O 80°C

Cu 3P 6O 18·7H 2O +amorph.phase 280°C Cu 2P 2O 7+amorph..phase 340°C Cu 2P 4O 12

In general,annealing of a sediment from the aqueous solution containing the polyphosphate and metal cation results in the formation of high-temperature polyphos-phates of Me II (PO 3)2or Me III (PO 3)3stoichiometry [45–48].Annealing of the sediment at a temperature of about 1000°C and fast cooling leads to the formation of metaphosphate glasses of Me II O·P 2O 5or Me 2III O 3·3P 2O 5type.

According to the above,one can expect the molar ratio n =[polyphosphate]/[metal cation]in the elec-trolyte to in?uence of the growth parameters and com-position of ASD coatings.In this paper we present data on the in?uence of the molar ratio n on the thickness and composition of ASD coatings formed on titanium and aluminium alloys in electrolytes,containing sodium hexametaphosphate (Na 6P 6O 18)or sodium tripolyphos-phate (Na 5P 3O 10)and different metal cations.2.Experimental

Samples of aluminium (99.9%)and its 1200,3103,5056,7075alloys of 40×10×0.5mm 3and titanium (99.7%)of 25×5×0.5mm 3were anodised in the elec-trochemical cell at a constant current density j =0.05A cm ?2.The treatment duration was 10min for alu-minium alloys and 6min for titanium.Visible sparking on the anode surface occurred within the ?rst minute of the treatment.The electrochemical cell consisted of a thermal glass of 0.5l in volume with a spiral-shaped nickel cathode.The electrolyte was stirred by a mag-netic stirrer.The system was cooled by a cold water

pumped through the cathode to keep the electrolyte temperature below 30°C.A DC power source ‘TER-100/460R-UHL4’(Russia)was used.

Electrolytes were prepared using pure grade commer-cial sodium hexametaphosphate (Na 6P 6O 18),sodium tripolyphosphate (Na 5P 3O 10),sodium dihydrogen phos-phate dihydrate (NaH 2PO 4·2H 2O)and Ni(CH 3COO)2·4H 2O,Mg(CH 3COO)2·4H 2O,Mn(CH 3COO)2·4H 2O,Zn(CH 3COO)2,Ba(CH 3COO)2,Pb(CH 3COO)2·3H 2O,

Y(CH 3COO)3·4H 2O,

Eu(CH 3COO)3·6H 2O salts.Polyphosphates were ?rst dissolved in distilled water (30–40g l ?1)and the required amounts of acetates were added to the solution to obtain the molar ratio n =[polyphosphate]/[metal cation]required.The sam-ples (three in a series)were anodised for 1h after the electrolyte preparation.Every following series of sam-ples was anodised in the same electrolyte,prepared by adding the required amount of acetate into the initial electrolyte to decrease the n value.

To study the polyphosphate concentration in?uence at a constant phosphorus concentration in electrolyte on ASD coating composition,two stock solutions were prepared:(I)30.0g l ?1Na 6P 6O 18and 5g l ?1Mg(CH 3COO)2·4H 2O,pH 5.5;(II)45.9g l ?1NaH 2PO 4·2H 2O and 5g l ?1Mg(CH 3COO)2·4H 2O,pH 5.3.By combining the required volumes of the stock solutions,electrolytes of different polyphosphate con-centrations were prepared.

To study the effect of polyphosphate concentration in electrolyte at a constant molar ratio [polyphosphate]/[metal cation]=1on the ASD coating composition,the electrolytes were prepared by dilution of the stock solution containing 90g l ?1Na 6P 6O 18and 31.5g l ?1Mg(CH 3COO)2·4H 2O with distilled water.

To study the substitution of Mg 2+by Ba 2+in electrolyte on ASD coating composition,the elec-trolytes were prepared by combining the required vol-umes of the two basic solutions:(I)30g l ?1Na 6P 6O 18and 5g l ?1Mg(CH 3COO)2·4H 2O (n =2);(II)30g l ?1Na 6P 6O 18and 5.95g l ?1Ba(CH 3COO)2(n =2).

The composition of the ASD coating was studied using a laser mass spectrometer EMAL-2(Russia)as in Ref.[29]and an electron probe micro-analyser (EPMA)JXA-5A (Japan).In the laser mass spectrometry (LMS)study the coating under investigation was evaporated from an area of 0.2–0.8cm 2to a depth of up to 6m m.The elemental composition (atomic%)was calculated on the basis of isotopic mass spectra without consider-ation of some light elements (hydrogen,helium and lithium).The depth of excitation in the EPMA study was about 3m m.In both cases the measurements were carried out with an accuracy of 10%.The surface distribution of elements in the coatings was registered when the electron probe was moved relative to the sample under investigation.The coating thickness was

V .S .Rudne 6et al ./Journal of Electroanalytical Chemistry 497(2001)150–158

152estimated on 45°cross-sections of samples using an optical microscope MBI-15(Russia)with an accuracy of 92m m.

The ?nal formation voltage (U F )on electrodes was calculated as an average value for samples (not less than 5)formed in identical conditions.The deviation in this case did not exceed 20V.

The phase composition of coatings was determined from X-ray patterns obtained using an X-ray diffrac-tometer DRON-2.0(Russia)and Cu K a radiation.The coatings on metal substrates were separated from the substrates as powders for analysis.To study the ther-mal phase transformations of coatings the powders were annealed consecutively in air at temperatures of 750,900and 1100°C for 30min.

3.Results

The ASD coatings formed in electrolytes with 30.0g l ?1

Na 6P 6O 18(pH 5.6)or 36.1g l ?1Na 5P 3O 10(pH 8.9)

Fig.2.In?uence of metal anode (a,c)and polyphosphate structure (b,d)on n dependences of thickness h and ?nal formation voltage U F .ASD coatings formed:(a,c)in electrolyte containing 30g l ?1Na 6P 6O 18and Mn(CH 3COO)2·4H 2O on aluminium 3103( )and titanium ( )alloys;(b,d)in electrolytes containing Mn(CH 3COO)2·4H 2O and 30g l ?1Na 6P 6O 18(×)or 36.1g l ?1Na 5P 3O 10(2)on aluminium 3103alloy.

Fig.1.In?uence of the molar ratio n =[polyphosphate]/[metal cation]in the electrolyte on aluminium ( ),titanium ( ),phosphorus ( )and manganese ( )content X in ASD coatings formed on aluminium 3103(a,c)and titanium (b)alloys in electrolytes containing 30g l ?1Na 6P 6O 18+Mn(CH 3COO)2·4H 2O (a,b)and 36.1g l ?1Na 5P 3O 10+Mn(CH 3COO)2·4H 2O (c).

contain,besides oxygen,(wt.%):38–46Al,2–4P,less than 1Na on aluminium 3103alloy and 39–44Ti,14–18P,less than 1Na on titanium.The coating thickness was 6–8m m for the aluminium alloy and 8–11m m for titanium.The in?uence of metal acetate addition (acetates of Mn(II),Pb(II),Mg(II),Zn(II),Ni(II),Y(III),Eu(III))to the polyphosphate electrolyte on the elementary composition (X ),thickness (h )and voltage on electrodes at the end of coating formation (U F )is shown in Figs.1–3and Table 1.Independent of the nature of metal cation,polyphosphate structure and pH of the electrolyte,the dependences X =f(n ),h =f(n ),U F =f(n )where n =[P 6O 18]/[Me cation]or n =[P 3O 10]/[Me cation]are similar.The effects of the nature of the anode metal (aluminium or titanium)on the phosphorus concentration in the coatings and U F val-ues,are shown in Figs.1and 2,respectively.

The condition of the electrolyte,containing polyphosphate and metal cation,depends on the molar ratio of the components n =[polyphosphate]/[metal cation].All the electrolytes used at n lower than a certain value n 0were colloidal.On the curves of Figs.1–3one can de?ne three regions.In region (I),elec-trolytes are true solutions;decreasing n to n 0does not result in essential changes of X ,h and U F .In region (II),decreasing n to n c results in signi?cant changes of X and U F .In region (III),electrolytes are colloidal and decreasing n below n c results in a rapid increase of coating thickness.At n B n 0phosphorus and Me(II)or Me(III)incorporate into the coating jointly.The values of n 0and n c depend on polyphosphate structure,the metal cation and for the electrolytes used,are in the ranges from 10to 3and from 2.5to 1,respectively.

V.S.Rudne6et al./Journal of Electroanalytical Chemistry497(2001)150–158153

Fig.3.Change of the elemental composition X(a),thickness h and

?nal formation voltage U F(b)of ASD coatings formed on aluminium

3103alloy when the electrolyte transition from true solution to

colloidal solution.(I)n\n0,true solution;(II)n c B n B n0,transient region;(III)n B n c,colloidal solution.Coatings were formed in

electrolyte containing30g l?1Na6P6O18and Mn(CH3COO)2·4H2O.

Destinations:( )aluminium;( )phosphorus;( )manganese;(2)

U F;( )h.Table2

Elemental composition of ASD coatings formed on different alu-minium alloys in electrolyte containing30g l?1Na6P6O18+ Mg(CH3COO)2·4H2O,n=1

N Aluminium alloy U F/V Content/wt.%(oxygen residue)

Al P Mg Na

0.9

13.7

20.3

1 5.7

350

Al(99.9%)

11.6 1.0

22.5

6.6

343

3103

2

1200337 5.3

323.111.8 1.0 70753369.623.411.6 1.1

4

5056327 5.325.714.8 1.1

5

The composition of ASD coating is slightly depen-dent on the composition of the aluminium alloy,Table 2.

It should be noted that the coatings are coloured and the colour depends on the n value.For example,coat-ings formed in electrolyte containing Na6P6O18and Mn(CH3COO)2·4H2O are grey at n\5,white at2.5B n B5and brown at n B2.5.The coatings containing a large amount of lead or yttrium are grey,coatings with nickel are black.

The in?uence of the polyphosphate complex concen-tration on coating composition is shown in Figs.4and 5.The complex concentration was changed(i)by changing both the Na6P6O18and Mg(CH3COO)2·4H2O concentration at n=1,Fig.4,and(ii)by substitution of Na6P6O18by NaH2PO4·2H2O at a constant phospho-rus concentration in electrolyte,Fig.5.The in?uence of polyphosphate concentration on the coating composi-tion is similar in both cases and on both anodes(Al or Ti).In both cases the concentration c0of about10–20 g l?1is a particular value.At concentrations above c0, the content of Al,P,Ti and Me(II)in coating is not

The formation of ASD coatings in electrolytes con-

taining Na6P6O18and Mn(CH3COO)2·4H2O was stud-

ied in more detail,Fig.3.In this case electrolytes of

n=5,2and1were prepared and coatings were formed

in them and in those of lower n value prepared by

adding Mn(CH3COO)2·4H2O.The dependences X=

f(n),h=f(n),U F=f(n)gradually pass from the region

of true solutions to colloidal solutions,Fig.3,but the

type of D X/D n,D h/D n and D U F/D n changes essentially

at the transient region.

Table1

Elemental composition and thickness of ASD coatings on aluminium3103alloy formed in electrolytes of different molar ratio n=[polyphos-phate]/[metal cation]

Electrolyte n Thickness/m m Content/wt.%(oxygen residue)

Al P Me

30g l?1Na6P6O18+Pb(CH3COO)2·3H2O 2.8

10745.20.3

34

0.5 1.111.542.4

40.9

9

10

30g l?1Na6P6O18+Mg(CH3COO)2·4H2O0.8

3.2

0.534 1.723.411.1

30g l?1Na6P6O18+Mn(CH3COO)2·4H2O10644.12 1.9

0.633316.422.7

129

30g l?1Na6P6O18+Ni(CH3COO)2·4H2O39 2.40.01

25

0.532.2

15.8

1.5

35.4

30g l?1Na6P6O18+Y(CH3COO)3·x H2O 6.6

5 5.7

12

12.613.8

130.5

18

0.4

3.2

40.1

30g l?1Na6P6O18+Zn(CH3COO)2·4H2O8

3

25.6

110.910.2

15

100.8

40g l?1Na6P6O18+Eu(CH3COO)3·6H2O 3.2

40.9

10

34.3

8.5

5.6

21

2.6

V.S.Rudne6et al./Journal of Electroanalytical Chemistry497(2001)150–158

154

dependent on polyphosphate concentration in the elec-

trolyte,while the content of sodium and coating thick-

ness on an aluminium anode increase with the

polyphosphate concentration.Decreasing the polyphos-

phate concentration below c0results in decreasing P,

Me(II)and increasing Al or Ti content in the coating;

sodium content and coating thickness are constant.

The in?uence of substitution of Mg(CH3COO)2·

4H2O by Ba(CH3COO)2in the polyphosphate elec-

trolyte on the elementary composition of ASD coatings

on aluminium alloy is shown in Fig.6.Substitution

of magnesium by barium in the electrolyte results in

the same substitution in the coating and the atomic

ratio P/(Mg+Ba)in the coating is constant at about

2.

Fig. 6.In?uence of substitution of Mg(CH3COO)2·4H2O by

Ba(CH3COO)2in electrolyte containing30g l?1Na6P6O18on alu-

minium( ),phosphorus( ),magnesium( ),barium( )and

oxygen(")content(a),(b),and atomic ratio P/[Mg+Ba](c)in ASD

coatings,formed on aluminium3103alloy.c,barium percentage in

cation content in electrolyte.

Fig. 4.In?uence of Na6P6O18concentration c in electrolyte on elemental composition X(a,b,c)and thickness h(d)of ASD coatings formed on aluminium3103and titanium alloys.Coatings are formed in electrolyte containing Na6P6O18and Mg(CH3COO)2·4H2O. Polyphosphate and metal cation concentrations in electrolyte were changed simultaneously at the molar ratio[polyphosphate]/[metal cation]=1.Destinations for(a)and(b):( )aluminium,( )tita-nium,( )phosphorus,( )manganese,( )magnesium;for(c)and (d):(2)on aluminium3103alloy,(")on titanium.

According to XRD data,independently of the n value,all the coatings formed on titanium are amor-phous.From the XRD patterns of the coatings formed on aluminium alloys one can identify very weak peaks associated with b,g,u-Al2O3and AlPO4phases.The crystal phases of P and Me(II),Me(III)have not been observed in spite of signi?cant amounts of these ele-ments in the coatings formed in electrolytes of n B n0. The surface distribution of elements in coatings formed on3103aluminium alloy in electrolyte contain-ing30g l?1Na6P6O18and Ni(CH3COO)2·4H2O(n=1) is shown in Fig.7.The distribution of elements through the surface is not uniform;there are areas enriched with aluminium and enriched with phosphorus and nickel. The maxima in phosphorus and nickel content corre-spond to the minima of aluminium content and vice versa.The dimensions of these areas,de?ned as the average peak width at the level of average element concentration in coating,are n-value dependent,Fig.8. At n\5the dimensions of the areas are10m m for aluminium and18–20m m for phosphorus and nickel. Decreasing n in the electrolyte results in increasing the

Fig.5.In?uence of substitution of Na6P6O18by NaH2PO4·2H2O at a constant phosphorus concentration in electrolyte,containing5g l?1 Mg(CH3COO)2·4H2O on aluminium( ),phosphorus( )and mag-nesium( )content in ASD coatings formed on aluminium3103 alloy.c,Na6P6O18concentration in electrolyte.

V .S .Rudne 6et al ./Journal of Electroanalytical Chemistry 497(2001)150–158155

Fig.7.Aluminium,phosphorus and nickel surface distribution (EPMA data)in ASD coating formed on aluminium 3103alloy in electrolyte containing 30g l ?1Na 6P 6O 18and Ni(CH 3COO)2·4H 2O (n =0.5).I ,intensity,shown qualitatively;x ,offset of electron beam relative to the sample.

‘enriched’areas,which reach maximum values of 40–50m m for aluminium and 65–80m m for phosphorus and nickel at n about 2.5.Further decreases in n leads to decrease of the area size.

According to XRD data the coatings formed on aluminium 3103alloy in electrolyte containing Na 6P 6O 18and Ni(CH 3COO)2·4H 2O are amorphous.XRD patterns of the powder (the coating separated from the substrate)contain weak peaks associated with g -Al 2O 3,AlPO 4and NiAl 2O 4phases,Fig.9(a).Anneal-ing of the powder results in the appearance of new peaks,which may be attributed to the AlPO 4phase Fig.9(b–e).Crystallisation of Ni-and P-containing phases does not occur in spite of signi?cant amounts of the elements in the coating.

4.Discussion

Under sparking conditions,the anodic coating grows as a result of two simultaneous processes:(i)electro-chemical oxidation of the anode metal on the surface free from discharges and (ii)high-temperature reactions caused by electric discharges [49].The conditions in the discharge region (high temperature,pressure,local elec-trolyte evaporation)results in high temperature reac-tions in which elements from both the anode and the electrolyte are involved.Reactions typical for plasma chemistry,hydrothermal synthesis,interactions in the melt,solid state interactions and thermolysis take place [1–10,27].Products of these reactions insoluble in the electrolyte remain in the coating composition.

From the data presented it follows that coating com-position,thickness and surface distribution of elements depend on the molar ratio n =[polyphosphate]/[metal cation]in the electrolyte.The n dependences of these parameters differ essentially for coatings formed in electrolytes of n higher and lower than n 0,which testi?es to differences in mechanisms of the coating formation.Electrolytes of n \n 0are true solutions;polyphosphate complexes of Me(II),Me(III)have a high solubility.Owing to sparking the Me(II),Me(III)polyphosphates as well as double polyphosphates and sodium acetates and polyphosphates precipitate on the anode at the discharge region with predomination of the latter.After the discharge area is cooled most of the sediment dissolves in the electrolyte.The coating grows predominantly due to electrochemical oxidation of the anode metal on the surface,which is free from dis-charges.In this case the ?nal formation voltage,thick-ness and element composition of coating are slightly dependent on the molar ratio n .

When n B n 0the aggregation of complexes takes place which leads to formation of colloidal particles at n B n c ,i.e.the solubility of polyphosphate complexes under these conditions is poor.According to Refs.

Fig.8.Average dimensions of regions,enriched with aluminium ( ),phosphorus ( )and nickel ( )in ASD coatings formed on alu-minium 3103alloy in electrolytes containing 30g l ?1Na 6P 6O 18and

Ni(CH 3COO)2·4H 2O versus the molar ratio n =[P 6O ?6

18]/[Ni 2+].

Fig.9.XRD patterns of ASD coatings formed on aluminium 3103alloy in electrolyte containing 30g l ?1Na 6P 6O 18and Ni(CH 3COO)2·4H 2O (n =1)electrolyte and separated from substrata.2q -Bragg angle.Samples:(a)initial;(b),(c),(d)annealed for 30min at 750,900and 1100°C,respectively;(e)annealed for 18h at 900°C;(f)sediment from solution,annealed at 800°C.

V.S.Rudne6et al./Journal of Electroanalytical Chemistry497(2001)150–158 156

[45–48]the colloidal particles consist of hydrated sim-

ple or double polyphosphates of Me(II),Me(III).Ag-

gregates of complexes at n c B n B n0or colloidal particles at n B n c precipitate on the anode surface in

the discharge region and the next discharges cause

polyphosphate thermolysis.The signi?cant thickness of

the coating formed in colloidal electrolyte may be ex-

plained by an increase in the amount of sediment

precipitated on the anode per discharge when n is

decreased(note,that in all cases the formation regime

is constant).Decreasing the?nal formation voltage in

meta-stable and colloidal electrolytes may cause an

increase of the defects in coatings.On the other hand,

this fact may be explained by the change of coating

composition or the development of electric discharges

in the outer layer of the coating,enriched with phos-

phorus Me(II)or Me(III)compounds which have dif-

ferent dielectric properties from Al2O3or TiO2.The

signi?cance of polyphosphate complexes in the incorpo-

ration of phosphorus and Me(II)or Me(III)into the

coating is obvious from Figs.4and5.However the

complex concentration is changed,always by a simulta-

neous change of component concentration at?xed n,or

by substitution of Na6P6O18by NaH2PO4·2H2O in the

electrolyte at?xed phosphorus concentration,the

polyphosphate concentration of10–20g l?1being a

particular value.According to Ref.[46]at a Na6P6O18

concentration B0.02M,precipitation of Me(II)

polyphosphates does not occur at any n value.The

ASD coatings formed on aluminium3103alloy in

electrolytes of polyphosphate concentration B10–20g

l?1(0.016-0.033M)contain Al2O3predominantly,and

the coatings formed in electrolytes of higher polyphos-

phate concentration,in which the Me(II)or Me(III)

polyphosphate complexes have poor solubility,contain

elements from the electrolyte.In the latter case the

coating thickness increases due to more intensive pre-

cipitation of sediment from the electrolyte.

The coatings formed in electrolytes with polyphos-

phate and salts of two different metal cations contain

both metals.The substitution of Mg(CH3COO)2·4H2O

by Ba(CH3COO)2in the electrolyte results in the for-

mation of coatings which contain Mg and Ba in a

different ratio.According to LMS data,in this case the

total metal cation concentration in the coatings formed

in electrolyte of Ba having a mol fraction from0to0.7

is about10–12%,and the P/[Mg+Ba]atomic ratio is

1.8on average,Fig.6.It has been noted[27,40,42,43]

that ASD coatings formed in electrolyte with Na6P6O18

and salts of Mg,Ba,La,Eu contain phosphorus and

metal cation in a ratio of about2for Me(II)and3for

Me(III).This fact testi?es that the coatings contain

certain phosphorus and Me compounds,for example

Me II(PO3)2or Me III(PO3)3.However,this conclusion

requires an additional study because the LMS study

was carried out without consideration of hydrogen.Though the presence of hydrogen in ASD coatings is unlikely,considering the hydrogen(if it exists)in the coating composition may decrease the atomic concen-trations obtained(Fig.8a,b)and in?uence the P/ (Mg+Ba)atomic ratio(Fig.8c).

During the anodising process,the anode metal ions migrate out into solution and form polyphosphate com-plexes.The presence of phosphorus in the coatings formed in electrolytes of large n values may be ex-plained by thermolysis of such complexes on the anode. The more signi?cant phosphorus concentration in coat-ings on titanium(Fig.1)may result from more signi?-cant migration of titanium ions into solution during the ASD process.On the other hand,this may result from TiO2and phosphate high-temperature interaction on the anode surface which would lead to Me(II)or Me(III)titanium phosphate formation.Me titanium phosphate synthesis,for example Co II Co III Ti(PO4)3,has been observed earlier when the ASD process was car-ried out in polyphosphate as well as in phosphate electrolytes[7,8,17,31].

The increase of sodium content in coatings with the polyphosphate concentration in the electrolyte at con-stant n value(Fig.4)may be explained by an increase of the amount of sediment,which falls on the anode surface per single discharge.An increasing amount of sediment obviously results in incongruent melting of only a portion of the polyphosphate and as a result,in formation of double Me and Na phosphates.Thermol-ysis of Me(II)or Me(III)polyphosphates on the anode surface may occur according to mechanisms de?ned in Refs.[45–48].For example,Ni(II)polyphosphate ther-molysis,depending on temperature and duration of annealing,leads to formation of different amorphous or crystalline phosphates.But,in spite of signi?cant phosphorus and nickel contents in the coating,the XRD(Fig.9)does not permit us to identify any nickel phosphates.An aqueous solution,containing30g l?1 Na6P6O18and Ni(CH3COO)2·4H2O(n=0.33),was al-lowed to stand for24h and the sediment was?ltered and dried in air.The comparison of XRD patterns of the annealed sediment(Fig.9e)with those of the an-nealed coating(Fig.9b,c,d)leads to the supposition that the appearance and transformation of new peaks may be associated with the thermal transformations of nickel phosphates.However,this requires additional study.

The non-uniform surface distribution of elements in ASD coatings may be explained by the intensive migra-tion of aluminium ions from the substrata to the coat-ing surface through the electric discharge channels and formation of Al2O3areas.For the coatings formed in electrolytes of n\n0the average size of areas enriched with aluminium is about10m m,Fig.8,that is consis-tent with the diameter of the spark discharge channels [2,6–8].The change of the size of these areas at n B n0

V.S.Rudne6et al./Journal of Electroanalytical Chemistry497(2001)150–158157

may be associated with the difference of discharge parameters in the true solution and in the colloidal solution.A similar‘counter-phase’surface distribution of silicon and aluminium was observed in ASD coatings formed on aluminium in Na2SiO3solution[50].

5.Conclusions

Thus,the dependences of element composition,thick-ness of ASD coatings on aluminium and titanium al-loys on the molar ratio n=[polyphosphate]/[metal cation]are found to be similar for coatings formed in electrolytes containing metal cations of different charge, polyphosphates of different structure and of different pH values.The coatings of the largest thickness and essential P and Me content are formed in colloidal electrolytes and in electrolytes close to colloidal condi-tions.The dependences obtained provide a basis for choosing the electrolyte composition to form ASD coatings containing phosphorus and Me(II)or Me(III) in the required amount.

The data obtained testify to the supposition [27,42,43]that incorporation of elements from the elec-trolyte into the coating results from Me(II)or Me(III) polyphosphate thermolysis due to electric discharges on the anode surface.

References

[1]L.L.Gruss,W.McNeil,Electrochem.Technol.1(1963)283.

[2]A.V.Nikolaev,G.A.Markov,B.I.Peshchevitskij,Izv.SO AN

SSSR.Ser.Khim.Nauk.12(1977)32in Russian.

[3]S.D.Brown,G.P.Wirtz,J.Electrochem.Soc.133(1986)92.

[4]P.Kurze,J.Schreckenbach,T.Schwarz,W.Krysmann,Metal-

lober?ache.12(1986)539.

[5]J.M.Albella,I.Montero,J.M.Martinezduart,V.Parkhutik,J.

Mater.Sci.26(1991)3422.

[6]V.I.Tchernenko,L.A.Snezhko,I.I.Papanova,Coatings by

Anodic Spark Electrolysis,Khimiya,Leningrad,1991in Russian.

[7]P.S.Gordienko,Coating Formation on Anodically Polarised

Electrodes at Potentials of Sparking and Breakdown,Dalnauka.

Vladivostok,1996in Russian.

[8]P.S.Gordienko,S.V.Gnedenkov,Micro Arc Oxidation of Tita-

nium and its Alloys,Dalnauka,Vladivostok,1997in Russian.

[9]V.I.Belevantsev,O.P.Terleeva,G.A.Markov,E.K.Shulepko,

A.I.Slonova,V.V.Utkin,Protect.Met.34(1998)416.

[10]A.L.Yerokhin,X.Nie,A.Leyland,A.Mattews,S.J.Dowey,

Surf.Coat.Technol.122(1999)73.

[11]A.A.Petrosyants,V.N.Malyshev,V.A.Fedorov,G.A.Markov,

Trenie Iznos5(1984)350in Russian.

[12]A.V.Timoshenko,Y.V.Magurova,Protect.Met.31(1995)474.

[13]A.A.Voevodin,A.L.Yerokhin,V.V.Lyubimov,M.S.Donly,

J.S.Zabinski,Surf.Coat.Technol.86-87(1996)516.

[14]S.V.Gnedenkov,O.A.Khrisanfova,A.G.Zavidnaya,S.L.Sine-

brukhov,A.N.Kovryanov,T.M.Skorobogatova,P.S.Gordi-enko,Surf.Coat.Technol.123(2000)24.

[15]P.Kurze,J.Schreckenbach,T.Schwarz,K.Rebending,Cryst.

Res.Technol.22(1987)523.[16]V.S.Rudnev,P.S.Gordienko,T.P.Yarovaya,A.G.Zavidnaya,

G.I.Konshina,Russ.J.Appl.Chem.66(1993)1158.

[17]V.S.Rudnev,P.S.Gordienko,T.P.Yarovaya,E.S.Panin,G.I.

Konshina,N.V.Chekatun,Russ.J.Electrochem.30(1994)827.

[18]L.A.Snezhko,G.B.Rozenboim,V.I.Chernenko,Protect.Met.

17(1981)501.

[19]P.S.Gordienko,V.S.Rudnev,T.I.Orlova,A.G.Kurnosova,

A.G.Zavidnaya, A.S.Rudnev,V.I.Tiryn,Protect.Met.29

(1993)602.

[20]S.V.Gnedenkov,P.S.Gordienko,S.L.Sinebrukhov,O.A.

Khrisanfova,T.M.Skorobogatova,Corrosion56(2000)24.

[21]H.Ishizawa,M.Ogino,J.Mater.Sci.31(1996)6279.

[22]A.I.Mamaev,S.N.Vybornova,V.A.Mamaeva,Perspektivniye

Materiali.6(1997)31in Russian.

[23]J.P.Schreckenbach,G.Marx,J.Mater.Sci.:Mater.Med.10

(1999)453.

[24]A.V.Timoshenko,Yu.V.Magurova,S.Yu.Artemova,Fiz.

Khim.Obrab.Mater.2(1996)57in Russian.

[25]V.S.Rudnev,V.P.Morozova,T.P.Yarivaya,T.A.Kaidalova,

P.S.Gordienko,Protect.Met.35(5)(1999)524in Russian.

[26]V.S.Rudnev,P.S.Gordienko,N.A.Bushina,T.P.Yarovaya,

G.I.Konshina,Russ.J.Electrochem.32(1996)523.

[27]P.S.Gordienko,V.S.Rudnev,Electrochemical Formation of

Coatings on Aluminium and its Alloys under the Electric Break-down Conditions,Dalnauka,Vladivostok,1999in Russian.

[28]T.P.Yarovaya,P.S.Gordienko,V.S.Rudnev,P.M.Nedozorov,

A.G.Zavidnaya,Russ.J.Electrochem.30(1994)1276.

[29]V.S.Rudnev,T.P.Yarovaya,Y.A.Maistrenko,P.M.Nedo-

zorov,A.G.Zavidnaya,A.S.Rudnev,P.S.Gordienko,Russ.J.

Appl.Chem.68(1995)1434.

[30]M.Yoshimura,S.-E.Yoo,M.Hayashi,N.Ishizawa,Jap.J.

Appl.Phys.28(1989)L2007.

[31]O.A.Khrisanfova,L.M.Volkova,S.V.Gnedenkov,T.A.

Kaidalova,P.S.Gordienko,Russ.J.Inorg.Chem.40(1995)558.

[32]F.Schlottig,D.Dietrich,J.Schreckenbach,G.Marx,J.Anal.

Chem.358(1997)105.

[33]V.S.Rudnev,T.P.Yarovaya,D.L.Boguta,I.V.Lukiyanchuk,

V.P.Morozova,P.S.Gordienko,The3rd Russ.-Korean Intern.

Symp.on Sci.and Technol,Novosibirsk,Russia,22–25June.

Abstracts,vol.2,1999,p.629.

[34]P.S.Gordienko,V.S.Rudnev,S.V.Gnedenkov,T.P.Yarovaya,

O.A.Khrisanfova,V.I.Tyrin,L.M.Tyrina,Russ.J.Appl.

Chem.68(1995)854.

[35]Z.Chen,M.C.Jin,C.Zhen,G.H.Chen,J.Amer.Ceram.Soc.

74(1991)1325.

[36]A.I.Ye?menko,T.L.Semenova,L.M.Volkova,Russ.J.Inorg.

Chem.38(1993)1158.

[37]E.O.Bensadon,P.A.P.Nascente,P.Olivi,L.O.S.Bulhoes,E.C.

Pereira,Chem.Mater.11(1999)277.

[38]G.L.Shchukin,V.P.Savenko,A.L.Belanovich,V.V.Sviridov,

Russ.J.Appl.Chem.71(1998)241.

[39]G.L.Shchukin, A.L.Belanovich,V.P.Savenko,L.S.

Ivashkevich,V.V.Sviridov,Russ.J.Appl.Chem.69(1996)939.

[40]V.S.Rudnev,T.P.Yarovaya,G.I.Konshina,E.S.Panin,A.S.

Rudnev,P.S.Gordienko,Russ.J.Electrochem.32(1996)893.

[41]V.S.Rudnev,T.P.Yarovaya,V.V.Konshin,E.S.Panin,A.S.

Rudnev,P.S.Gordienko,Russ.J.Electrochem.33(1997)531.

[42]V.S.Rudnev,T.P.Yarovaya,V.V.Konshin,T.A.Kaydalova,

V.P.Morozova,D.L.Boguta,E.N.Belik,A.S.Rudnev,P.S.

Gordienko,Russ.J.Electrochem.34(1998)510.

[43]V.S.Rudnev,D.L.Boguta,T.P.Yarovaya,V.P.Morozova,A.S.

Rudnev,P.S.Gordienko,Protect.Met.35(1999)520.

[44]V.S.Rudnev,P.S.Gordienko,V.V.Konshin,T.P.Yarovaya,

N.A.Bushina,E.S.Panin,Russ.J.Electrochem.32(1996)1148.

[45]I.V.Tananaev,Russ.J.Inorg.Chem.29(1984)467.

[46]https://www.doczj.com/doc/559724947.html,zarevski,L.V.Kubasova,N.N.Chudinova,I.V.

Tananaev,Inorg.Mater.16(1980)93.

V.S.Rudne6et al./Journal of Electroanalytical Chemistry497(2001)150–158 158

[47]https://www.doczj.com/doc/559724947.html,zarevski,L.V.Kubasova,N.N.Chudinova,I.V.

Tananaev,Inorg.Mater.18(1982)1322.

[48]https://www.doczj.com/doc/559724947.html,zarevski,N.N.Chudinova,L.V.Kubasova,I.V.

Tananaev,Inorg.Mater.18(1982)1327.[49]A.L.Yerokhin,V.V.Lyubimov,R.V.Ashitkov,Ceram.Int.24

(1998)1.

[50]R.Ragalevicius, E.Matulionis,Chemija4(1995)23in

Russian.

.

Scala从基础到开发实战

Scala从基础到开发实战 对于进化缓慢的Java跟C++语言来说,目前Scala无疑更适应现代化特质的语言,语法简洁,同时兼备函数式编程与面向对象编程,具有令人耳目一新的编程范式。而运行在Java 虚拟机上的编译环境使得其具有很多的现有工具与类库,拥有快速的可靠的解释器和编译器。 本课程是Scala语言基础课程,面向没有或仅有少量编程语言基础的同学,当然,具有一定的Java或C、C++语言基础将有助于本课程的学习。在本课程内,将更注重scala的各种语言规则和应用,通过学习本课程能具备初步的Scala语言实际编程能力。 Scala最近的红火也得益于Spark分布式内存计算平台的兴起,由于其惊人的计算速度,Spark将要革命Hadoop的说法尘嚣日上,但学习Spark的一项瓶颈是其原生语言Scala并不为大众所熟知,即使是资深程序员,从未听说过Scala者大有人在,于是本门课程也可以称为Spark系列的前置课程,供深入学习大数据技术的同仁们进行热身运动。 课程大纲: 第一课:Scala介绍——如何安装Scala REPL、SBT、IDE,编写简单的Scala程序;函数式编程简介 第二课:Scala的class和object,Scala的变量、类的介绍 第三课:Scala的基本数据类型、控制语句 第四课:高阶函数、Currying、尾递归 第五课:数据结构:List、Map、Set 第六课:组合和继承 第七课:Trait 第八课:响应式编程介绍 第九课:Akka框架(一)——akka的基本用法 第十课:Akka框架(二)——actor的监控 第十一课:Akka框架(三)——网络编程 第十二课:Akka框架(四)——akka使用技巧

大数据开发新手学习指南(经典)

上市公司,官网:https://www.doczj.com/doc/559724947.html, 大数据开发初学者该如何学习 导读: 第一章:初识Hadoop 第二章:更高效的WordCount 第三章:把别处的数据搞到Hadoop上 第四章:把Hadoop上的数据搞到别处去 第五章:快一点吧,我的SQL 第六章:一夫多妻制 第七章:越来越多的分析任务 第八章:我的数据要实时 第九章:我的数据要对外 第十章:牛逼高大上的机器学习 经常有初学者会问,自己想往大数据方向发展,该学哪些技术,学习路线是什么样的,觉得大数据很火,就业很好,薪资很高……首先,如果你确定了想往这个方面发展,先考虑自己的过去从业经历、专业、兴趣是什么。计算机专业——操作系统、硬件、网络、服务器?软件专业——软件开发、编程、写代码?还是数学、统计学专业——对数据和数字特别感兴趣? 其实这就是想告诉你大数据的三个发展方向,平台搭建/优化/运维/监控、大数据开发/设计/架构、数据分析/挖掘。 先扯一下大数据的4V特征: ?数据量大,TB->PB ?数据类型繁多,结构化、非结构化文本、日志、视频、图片、地理位置等;

上市公司,官网:https://www.doczj.com/doc/559724947.html, ?商业价值高,但是这种价值需要在海量数据之上,通过数据分析与机器学习更快速的挖掘出来; ?处理时效性高,海量数据的处理需求不再局限在离线计算当中。 现如今,正式为了应对大数据的这几个特点,开源的大数据框架越来越多,越来越强,先列举一些常见的: 文件存储:Hadoop HDFS、Tachyon、KFS 离线计算:Hadoop MapReduce、Spark 流式、实时计算:Storm、Spark Streaming、S4、Heron K-V、NOSQL数据库:HBase、Redis、MongoDB 资源管理:YARN、Mesos 日志收集:Flume、Scribe、Logstash、Kibana 消息系统:Kafka、StormMQ、ZeroMQ、RabbitMQ 查询分析:Hive、Impala、Pig、Presto、Phoenix、SparkSQL、Drill、Flink、Kylin、Druid 分布式协调服务:Zookeeper 集群管理与监控:Ambari、Ganglia、Nagios、Cloudera Manager 数据挖掘、机器学习:Mahout、Spark MLLib 数据同步:Sqoop 任务调度:Oozie 1.1 学会百度与Google

用Apache Spark进行大数据处理——第一部分:入门介绍

用Apache Spark进行大数据处理——第一部分:入门介绍 什么是Spark Apache Spark是一个围绕速度、易用性和复杂分析构建的大数据处理框架。最初在2009年由加州大学伯克利分校的AMPLab开发,并于2010年成为Apache的开源项目之一。与Hadoop和Storm等其他大数据和MapReduce技术相比,Spark有如下优势。 首先,Spark为我们提供了一个全面、统一的框架用于管理各种有着不同性质(文本数据、图表数据等)的数据集和数据源(批量数据或实时的流数据)的大数据处理的需求。 Spark可以将Hadoop集群中的应用在内存中的运行速度提升100倍,甚至能够将应用在磁盘上的运行速度提升10倍。 Spark让开发者可以快速的用Java、Scala或Python编写程序。它本身自带了一个超过80个高阶操作符集合。而且还可以用它在shell中以交互式地查询数据。 除了Map和Reduce操作之外,它还支持SQL查询,流数据,机器学习和图表数据处理。开发者可以在一个数据管道用例中单独使用某一能力或者将这些能力结合在一起使用。 在这个Apache Spark文章系列的第一部分中,我们将了解到什么是Spark,它与典型的MapReduce解决方案的比较以及它如何为大数据处理提供了一套完整的工具。 Hadoop和Spark Hadoop这项大数据处理技术大概已有十年历史,而且被看做是首选的大数据集合处理的解决方案。MapReduce是一路计算的优秀解决方案,不过对于需要多路计算和算法的用例来说,并非十分高效。数据处理流程中的每一步都需要一个Map阶段和一个Reduce阶段,而且如果要利用这一解决方案,需要将所有用例都转换成MapReduce模式。 在下一步开始之前,上一步的作业输出数据必须要存储到分布式文件系统中。因此,复制和磁盘存储会导致这种方式速度变慢。另外Hadoop解决方案中通常会包含难以安装和管理的集群。而且为了处理不同的大数据用例,还需要集成多种不同的工具(如用于机器学习的Mahout和流数据处理的Storm)。 如果想要完成比较复杂的工作,就必须将一系列的MapReduce作业串联起来然后顺序执行这些作业。每一个作业都是高时延的,而且只有在前一个作业完成之后下一个作业才能开始启动。 而Spark则允许程序开发者使用有向无环图(DAG)开发复杂的多步数据管道。而且还支持跨有向无环图的内存数据共享,以便不同的作业可以共同处理同一个数据。

利用Scala语言开发Spark应用程序

利用Scala语言开发Spark应用程序 park内核是由Scala语言开发的,因此使用Scala语言开发Spark应用程序是自然而然的事情。如果你对Scala语言还不太熟悉,可以阅读网络教程A Scala Tutorial for Java Programmers或者相关Scala书籍进行学习。 AD: Spark内核是由Scala语言开发的,因此使用Scala语言开发Spark应用程序是自然而然的事情。如果你对Scala语言还不太熟悉,可以阅读网络教程A Scala Tutorial for Java Programmers或者相关Scala书籍进行学习。 本文将介绍3个Scala Spark编程实例,分别是WordCount、TopK和SparkJoin,分别代表了Spark 的三种典型应用。 1. WordCount编程实例 WordCount是一个最简单的分布式应用实例,主要功能是统计输入目录中所有单词出现的总次数,编写步骤如下: 步骤1:创建一个SparkContext对象,该对象有四个参数:Spark master位置、应用程序名称,Spark安装目录和jar存放位置,对于Spark On Y ARN而言,最重要的是前两个参数,第一个参数指定为yarn-standalone ,第二个参数是自定义的字符串,举例如下: valsc=newSparkContext(args(0), WordCount ,System.getenv( SPARK_HOME ),Seq(System.getenv( SPARK_TEST_JAR ))) 步骤2:读取输入数据。我们要从HDFS上读取文本数据,可以使用SparkCon valtextFile=sc.textFile(args(1)) 当然,Spark允许你采用任何Hadoop InputFormat,比如二进制输入格式SequenceFileInputFormat,此时你可以使用SparkContext中的hadoopRDD函数,举例如下: valinputFormatClass=classOf[SequenceFileInputFormat[Text,Text]]varhadoopRdd=sc.hadoopRDD(c onf,inputFormatClass,classOf[Text],classOf[Text]) 或者直接创建一个HadoopRDD对象: varhadoopRdd=newHadoopRDD(sc,conf,classOf[SequenceFileInputFormat[Text,Text,classOf[Text],c lassOf[Text]) 步骤3:通过RDD转换算子操作和转换RDD,对于WordCount而言,首先需要从输入数据中每行字符串中解析出单词,水草玛瑙 https://www.doczj.com/doc/559724947.html,然后将相同单词放到一个桶中,最后统计每个桶中每个单词出现的频率,举例如下: valresult=hadoopRdd.flatMap{case(key,value)= value.toString().split( \\s+ }.map(word= (word,1)).reduceByKey(_+_) 其中,flatMap函数可以将一条记录转换成多条记录(一对多关系),map函数将一条记录转换为另一条记录(一对一关系),高山茶 https://www.doczj.com/doc/559724947.html, reduceByKey函数将key相同的数据划分到一个桶中,并以key为单位分组进行计算,这些函数的具体含义可参考:Spark Transformation。步骤4:将产生的RDD数据集保存到HDFS上。可以使用SparkContext中的saveAsTextFile哈数将数据集保存到HDFS目录下,默认采用Hadoop提供的TextOutputFormat,每条记录以(key,value)的形式打印输出,你也可以采用saveAsSequenceFile函数将数据保存为SequenceFile格式等,举例如下: result.saveAsSequenceFile(args(2)) 当然,一般我们写Spark程序时,需要包含以下两个头文件: importorg.apache.spark._importSparkContext._ WordCount完整程序已在Apache Spark学习:利用Eclipse构建Spark集成开发环境一文中进行了介绍,在次不赘述。 需要注意的是,指定输入输出文件时,需要指定hdfs的URI,比如输入目录是hdfs:hadoop-testtmpinput,输出目录是hdfs:hadoop-testtmpoutput,其中,hdfs:hadoop-test 是由Hadoop配置文件core- site.xml中参数https://www.doczj.com/doc/559724947.html,指定的,具体替换成你的配置即可。 2. TopK编程实例

51CTO学院-Scala深入浅出实战初级入门经典视频课程

51cto学院-Scala深入浅出实战初级入门经典视频课程 课程目标 为进一步推动大数据技术的发展和应用,在王家林的带领下联合大数据狂热爱好者和一线实践专家构建了“DT大数据梦工厂”公益团队,旨在免 费分享大数据最佳实践技术,帮助您和公司在大数据时代重铸强大IT大 脑,笑傲互联网+时代!在这里,先从Scala语言的编程开发实战学起。。。适用人群 Scala语言爱好者,Spark技术爱好者,大数据技术学习者 课程简介 《Scala深入浅出实战初级入门经典视频课程》 从Scala的开发环境的搭建起步,基于纯粹动手实战的原则,循序渐进的覆盖Scal a基础、Scala面向对象编程、Scala函数式编程、集合的操作深度实战、Scala测 试等实用实战内容,是《Scala深入浅出实战中级---进阶经典》和《Scala深入浅 出实战高级---高手之巅》的前置课程。纯粹的实战精华课程打造能够进行Scala编程实战的您! 从零开始,跟随着王家林老师每天早晨4点左右发布的一个绝对精华的约15分钟的大数据免费视频学习大数据方面的技术,先从Scala语言的编程开发实战学起。。。 Scala是一门以JVM为目标运行环境并将面向对象和函数式编程语言的最佳特性结合在一起的编程语言,此课程是大数据框架Spark的前置课程: 1、Spark框架是采用Scala语言编写的,精致而优雅。要想成为Spark高手,你 就必须阅读Spark的源代码,就必须掌握Scala;

2、虽然说现在的Spark可以采用多语言Java、Python等进行应用程序开发,但 是最快速的和支持最好的开发API依然并将永远是Scala方式的API,所以你必须掌握Scala来编写复杂的和高性能的Spark分布式程序; 3、本课程采用循序渐进的实战方式,深入浅出的讲解Scala所有核心内容和高级实 战技巧 课程 1 第1讲:Scala开发环境搭建和HelloWorld解析 24分钟 本视频介绍了Scala语言的特性,Java的安装,详细介绍了Scala的下载、Scala的环境变量配置,ScalaIDE工具的安装。在Scala的环境安装完成后又动手演示了一个在ScalaIDE中建立Sc ala工程的例子,并演示运行结果。 2 第2讲:Scala函数定义、流程控制、异常处理入门实战 24分钟 本视频以具体的例子代码详细介绍了1)Scala中函数的定义格式,以main函数为例介绍了ma in函数中的参数意义和返回值,同时还介绍了无参数函数的调用方式和有参数函数的调用方式。 2)介绍了Scala中流程控制do-while循环、for循环的使用方式。3)Scala中的异常处理try-catch-finally的使用流程。 3 第3讲:Tuple、Array、Map与文件操作入门实战 15分钟 本视频以具体的例子代码详细介绍了1)Scala中的元组的定义、元组的元素访问方式。2)Scal a中数组的定义、数组的遍历方式。3)Scala中Map集合的定义和访问方式。4)Scala中网络文件和本地文件的访问方式。 4

给大数据开发初学者的一些建议

IT=挨踢,这是IT人的自嘲,进入IT行业是有四五年了,也算得上是一个“老人”了吧,见了不少新人,面试了不少新人,也带了一些新人,多多少少还是有点发言权的。 新人们常常会说我看了多少多少的书,看过某某人写的书,仿佛书看了就会做了。其实不然,很多新人在面试的时候夸夸其谈,说啥啥都知道一点,到真正做的时候,啥都不会。归根到底是没有经验,技术这玩意儿经验非常重要,很多东西如果不是你碰到了,你从书上一辈子都找不到答案。 一般都是先把整个书翻一下,了解一下书的基本内容,然后在实际项目中遇到相应的问题再去翻书,当然这是因为我对技术已经有一定的了解,不需要通读整本书。初学者应该找一些适合自己的书,通读一遍,其中的例子要认真做,一定要自己去写代码,而不是Copy。我以前在学做网页的时候,别人都用Dreamweaver去做,只有我打开源代码编辑器学习HTML源代码的编写。 做完书的例子只能说明你会削木头了,但会削木头离会做柜子还有很远的路要走。还记得达·芬奇画鸡蛋的故事么?不停地重复肯定是枯燥的,所以你需要自己尝试去做一些实际的东西,比如做一个个人主页、一个留言本、一个通信地址本......在这些实际的东西中去实现你的创意,去实现你在书本上所学习的例子,并且将这些例子加入你的思想。 永远不要认为书本能给你带来多少东西,虽然它们很有用,但它们只是一个Key,一个引你入门的Key。 四川是旅游的天堂,无法拒绝她火辣辣的美食,无法拒绝她惊艳的自然风光,更无法拒绝她的古蜀文化。随着社会物质文明和精神文明的不断提高,越来越多的人在社会的残酷竞争中优胜劣汰!在追求男女平等的同时,男生和女生却面临同样的竞争,这就是社会生存潜

Spark 实战第 1 部分使用Scala 语言开发Spark 应用程序

Spark 实战,第1 部分: 使用Scala 语言开发Spark 应用程序 本文旨在通过具有实际意义的案例向读者介绍如何使用Scala 语言开发Spark 应用程序并在Spark 集群上运行。本文涉及的所有源数据都将从HDFS(Hadoop Distributed File System)读取,部分案例的输出结果也会写入到HDFS, 所以通过阅读本文,读者也会学习到Spark 和HDFS 交互的一些知识。 查看本系列更多内容|3评论: 王龙, 软件开发工程师, IBM 内容

关于Spark Spark 由加州大学伯克利分校AMP 实验室(Algorithms, Machines, and People Lab) 开发,可用来构建大型的、低延迟的大数据处理的应用程序。并且提供了用于机器学习(MLlib), 流计算(Streaming), 图计算(GraphX) 等子模块,最新的1.4.0 版本更是提供了与R 语言的集成,这使得Spark 几乎成为了多领域通吃的全能技术。Spark 对数据的存储,转换,以及计算都是基于一个叫RDD(Resilient Distributed Dataset) 分布式内存的抽象,应用程序对需要计算的数据的操作都是通过对RDD 的一系列转化(Transformation) 和动作(Action) 算子完成的,其中转化算子可以把一个RDD 转成另一个RDD,如filter 算子可以通过添加过滤条件生成一个只包含符合条件的数据的新的RDD。动作算子负责完成最终的计算,如count 算子可以计算出整个RDD 表示的数据集中元素的个数。关于Spark 所支持的算子以及使用方法请参考Spark 官方网站。本文所使用的Spark 的发行版是1.3.1,读者可根据需要下载相应的版本。 回页首关于Scala Scala 语言是一门类Java 的多范式语言,其设计初衷就是为了继承函数式编程的面向对象编程的各种特性,正如Scala 语言官网描述的那样:Object-Oriented Meets Functional, 就是给出了一个关于Scala 语言特性的最简单明了的概括。 Spark 框架使用Scala 语言开发,那么使用Scala 语言开发Spark 应用程序就变成一件很自然的事情,虽然Spark 提供了面向Python,Java 等语言的编程接口,但是从各个方面来看使用Scala 编程都是最简单最容易理解的,特别是当程序出现异常或者是需要通过学习源码来定位问题时,您会发现学习Scala 语言来编写Spark 应用程序是多么有意义的事情。关于Scala 语言,如果您还没有基础,请参考 ?Scala 语言官网 ?Scala 中文网 ?Twitter 提供的Scala 课堂 ?面向Java 开发人员的Scala 指南系列 由于Spark 1.3.1 版本使用的是Scala 2.10.x 版本,所以本文将使用Scala 2.10.5 版本。 回页首搭建开发环境 1. 安装Scala IDE

零基础学习hadoop(编程篇)

1.hadoop编程需要哪些基础? 2.hadoop编程需要注意哪些问题? 3.如何创建mapreduce程序及其包含几部分? 4.如何远程连接eclipse,可能会遇到什么问题? 5.如何编译hadoop源码? 阅读此篇文章,需要些基础下面两篇文章 零基础学习hadoop到上手工作线路指导(初级篇) 零基础学习hadoop到上手工作线路指导(中级篇) 如果看过的话,看这篇不成问题,此篇讲hadoop编程篇。 hadoop编程,hadoop是一个Java框架,同时也是编程的一次革命,使得传统开发运行程序由单台客户端(单台电脑)转换为可以由多个客户端运行(多台机器)运行,使得任务得以分解,这大大提高了效率。

hadoop既然是一个Java框架,因为我们必须要懂Java,网上有大量的资料,所以学习Java 不是件难事。但是学到什么程度,可能是我们零基础同学所关心的。 语言很多情况下都是相通的,如果你是学生,还处于打基础的阶段,那么难度对于你来说还是不小的。 1.初学者要求必须有理论基础,并且能够完成一个小项目,最起码能够完成几个小例子,例如图书馆里等。 初学者基本的要求: (1)懂什么是对象、接口、继续、多态 (2)必须熟悉Java语法 (3)掌握一定的常用包 (4)会使用maven下载代码 (5)会使用eclipse,包括里面的快捷键,如何打开项目 传统程序员,因为具有丰富的编程经验,因此只要能够掌握开发工具: (1)会使用maven下载代码 (2)会使用eclipse,包括里面的快捷键,如何打开项目 (3)简单熟悉Java语法 上面的只是基础,如果想开发hadoop,还需要懂得下面内容 (1)会编译hadoop (2)会使用hadoop-eclipse-plugin插件,远程连接集群 (3)会运行hadoop程序。 上面列出大概的内容,下面我们具体说一些需要学习的内容。 无论是传统开发人员还是学生,零基础下面都是需要掌握的: 我们就需要进入开发了。开发零基础,该如何,咱们提供了相关的内容分别介绍下面文章 学习hadoop----java零基础学习线路指导视频(1) 这一篇我们使用什么开发工具,甚至考虑使用什么操作系统。然后就是Java基础知识篇,包括变量、函数等。 学习hadoop---Java初级快读入门指导(2) 第一篇是属于思想篇,那么这一篇属于实战篇,通过不同的方式,交给你怎么编写第一个小

大数据Spark企业级实战书籍推荐

Life is short,you need Spark! Spark是当今大数据领域最活跃最热门的高效的大数据通用计算平台。基于RDD,Spark成功地构建起了一体化、多元化的大数据处理体系。 雅虎、Conviva、淘宝、网易、大众点评、优酷土豆、腾讯、华为等公司均在生产环境中部署了大规模的Spark。 《大数据Spark企业级实战》完全从企业处理大数据业务场景的角度出发,完全基于实战代码来组织内容,从零起步,不需任何基础,完全无痛地掌握Spark大数据处理实战技术,源码解析: Spark集群的动手构建 Spark架构 Spark内核的深入解析 Spark四大子框架的细致剖析和实战 Tachyon文件系统揭秘 Spark多语言编程 SparkR Spark性能调优和最佳实践 一站式实现Spark企业级开发实战! 内容简介: Spark是当今大数据领域最活跃、最热门、最高效的大数据通用计算平台,是Apache软件基金会下所有开源项目中三大顶级开源项目之一。 在“One Stack to rule them all”理念的指引下,Spark基于RDD成功地构建起了大数据处理的一体化解决方案,将MapReduce、Streaming、SQL、Machine Learning、Graph Processing等大数据计算模型统一到一个技术堆栈中,开发者使用一致的API操作Spark中的所有功能;更为重要的是Spark的Spark SQL、MLLib、GraphX、Spark Streaming等四大子框架之间可以在内存中完美的无缝集成并可以互相操作彼此的数据,这不仅打造了Spark在当今大数据计算领域其他任何计算框架都无可匹敌的优势,更使得Spark正在加速成为大数据处理中心首选的和唯一的计算平台。 《大数据Spark企业级实战》详细解析了企业级Spark开发所需的几乎所有技术内容,涵盖Spark的架构设计、Spark的集群搭建、Spark内核的解析、Spark SQL、MLLib、GraphX、Spark Streaming、Tachyon、SparkR、Spark多语言编程、Spark常见问题及调优等,并且结合Spark源码细致的解析了Spark内核和四大子框架,最后在附录中提供了的Spark的开发语言Scala快速入门实战内容,学习完此书即可胜任绝大多数的企业级Spark开发需要。 《大数据Spark企业级实战》从零起步,完全从企业处理大数据业务场景的角度出发,基于实战代码来组织内容,对于一名大数据爱好者来说,《大数据Spark企业级实战》内容可以帮助您一站式地完成从零起步到进行Spark企业级开发所需要的全部核心内容和实战需要。 作者简介: 王家林,Spark亚太研究院首席专家,中国移动互联网和云计算大数据集大成者。在Spark、Hadoop、Android等方面有丰富的源码、实务和性能优化经验。彻底研究了Spark从0.5.0到0.9.1共13个版本的Spark源码,并已完成2014年5月31日发布的Spark1.0源码研究。 目录: 第1章Spark编程模型 1.1 Spark:一体化、多元化的高速 大数据通用计算平台和库 1.1.1 为什么需要使用Spark 1.1.2 Spark技术生态系统简介 1.2 Spark大数据处理框架 1.2.1 Spark速度为何如此之快 1.2.2 RDD:分布式函数式编程 1.3 Spark子框架解析 1.3.1 图计算框架Spark GraphX 1.3.2 实时流处理框架 (Spark Streaming) 1.3.3 交互式SQL处理框架

Spark入门(Python)

Spark入门 Hadoop是对大数据集进行分布式计算的标准工具,这也是为什么当你穿过机场时能看到”大数据(Big Data)”广告的原因。它已经成为大数据的操作系统,提供了包括工具和技巧在内的丰富生态系统,允许使用相对便宜的商业硬件集群进行超级计算机级别的计算。2003和2004年,两个来自Google的观点使Hadoop 成为可能:一个分布式存储框架(Google文件系统),在Hadoop中被实现为HDFS;一个分布式计算框架(MapReduce)。 这两个观点成为过去十年规模分析(scaling analytics)、大规模机器学习(machine learning),以及其他大数据应用出现的主要推动力!但是,从技术角度上讲,十年是一段非常长的时间,而且Hadoop还存在很多已知限制,尤其是MapReduce。对MapReduce编程明显是困难的。对大多数分析,你都必须用很多步骤将Map和Reduce任务串接起来。这造成类SQL的计算或机器学习需要专门的系统来进行。更糟的是,MapReduce要求每个步骤间的数据要序列化到磁盘,这意味着MapReduce作业的I/O成本很高,导致交互分析和迭代算法(iterative algorithms)开销很大;而事实是,几乎所有的最优化和机器学习都是迭代的。 为了解决这些问题,Hadoop一直在向一种更为通用的资源管理框架转变,即YARN (Yet Another Resource Negotiator, 又一个资源协调者)。YARN实现了下一代的MapReduce,但同时也允许应用利用分布式资源而不必采用MapReduce进行计算。通过将集群管理一般化,研究转到分布式计算的一般化上,来扩展了MapReduce的初衷。 Spark是第一个脱胎于该转变的快速、通用分布式计算范式,并且很快流行起来。Spark使用函数式编程范式扩展了MapReduce模型以支持更多计算类型,可以涵盖广泛的工作流,这些工作流之前被实现为Hadoop之上的特殊系统。Spark使用内存缓存来提升性能,因此进行交互式分析也足够快速(就如同使用Python 解释器,与集群进行交互一样)。缓存同时提升了迭代算法的性能,这使得Spark 非常适合数据理论任务,特别是机器学习。 本文中,我们将首先讨论如何在本地机器上或者EC2的集群上设置Spark进行简单分析。然后,我们在入门级水平探索Spark,了解Spark是什么以及它如何工作(希望可以激发更多探索)。最后两节我们开始通过命令行与Spark进行交互,然后演示如何用Python写Spark应用,并作为Spark作业提交到集群上。 设置Spark 在本机设置和运行Spark非常简单。你只需要下载一个预构建的包,只要你安装了Java 6+和Python 2.6+,就可以在Windows、Mac OS X和Linux上运行Spark。确保java程序在PATH环境变量中,或者设置了JAVA_HOME环境变量。类似的,python也要在PATH中。

spark Scala 介绍 教程 入门 手册 调研

第一章Scala语法介绍 1.1阅读说明 本文档针对scala2.10.x,由于scala目前发展迅速,因此可能会和其他版本的不同。 本手册适合对象:有Java编程经验的程序员。阅读时如果发现难以理解,可以根据关键词自行上网搜索对应内容进行辅助学习。 *标注的小节,表示阅读优先级较低或者可以不用阅读。 阅读时遵循先易后难得准则,从有代码示例的地方着手会比较简单。 1.2第一个scala程序 参考:https://www.doczj.com/doc/559724947.html,/documentation/getting-started.html object ScalaTest{ def main(args:Array[String]){ println("hello scala.") } } 1.2.1scala解释器 安装好scala并配置好PATH环境变量之后,就可以在终端中输入“scala”命令打开scala 解释器。在其中,你可以像使用shell一样,使用TAB补全、Ctrl+r搜索、上下方向键切换历史命令等等。退出scala解释器,可以使用命令:“:q”或者“:quit”。 由于解释器是输入一句执行一句,因此也常称为REPL。REPL一次只能看到一行代码,因此如果你要在其中粘贴代码段的话,可能会出现问题,这时你可以使用粘贴模式,键入如下语句: :paste 然后把代码粘贴进去,再按下Ctrl+d,这样REPL就会把代码段当作一个整体来分析。 1.2.2scala作为脚本运行 scala代码也可以作为脚本运行,只要你设置好代码文件的shell前导词(preamble),并将代码文件设置为可执行。如下: #!/usr/bin/env scala println("这是scala脚本") 设置代码文件为可执行,即可执行。 scala脚本的命令行参数保存在名为args的数组中,你可以使用args获取命令行输入的程序参数: hello.scala文件中:println("hello,"+args(0)) 在命令行中执行:scala hello.scala vitohuang

相关主题
文本预览
相关文档 最新文档